This is gforth.info, produced by makeinfo version 7.0.3 from
gforth.texi.

This manual is for Gforth (version 0.7.9_20241211, December 11, 2024), a
fast and portable implementation of the Standard Forth language.  It
serves as reference manual, but it also contains an introduction to
Forth and a Forth tutorial.

   Authors: Bernd Paysan, Anton Ertl, Gerald Wodni, Neal Crook, David
Kuehling, Jend Wilke Copyright © 1995, 1996, 1997, 1998, 2000, 2003,
2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015,
2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024 Free Software
Foundation, Inc.

     Permission is granted to copy, distribute and/or modify this
     document under the terms of the GNU Free Documentation License,
     Version 1.1 or any later version published by the Free Software
     Foundation; with no Invariant Sections, with the Front-Cover texts
     being “A GNU Manual,” and with the Back-Cover Texts as in (a)
     below.  A copy of the license is included in the section entitled
     “GNU Free Documentation License.”

     (a) The FSF’s Back-Cover Text is: “You have freedom to copy and
     modify this GNU Manual, like GNU software.  Copies published by the
     Free Software Foundation raise funds for GNU development.”
INFO-DIR-SECTION Software development
START-INFO-DIR-ENTRY
* Gforth: (gforth).             A fast interpreter for the Forth language.
END-INFO-DIR-ENTRY


Indirect:
gforth.info-1: 1439
gforth.info-2: 302452
gforth.info-3: 603357
gforth.info-4: 908010

Tag Table:
(Indirect)
Node: Top1439
Node: Goals16790
Ref: Goals-Footnote-118657
Node: Stability Goals18776
Node: Gforth Environment20465
Node: Invoking Gforth21234
Node: Leaving Gforth36401
Node: Help on Gforth36958
Node: Command-line editing37816
Ref: Command-line editing-Footnote-140418
Node: Environment variables40477
Node: Gforth Files42320
Node: Gforth in pipes43167
Node: Startup speed45024
Node: Tutorial46808
Node: Starting Gforth Tutorial49126
Node: Syntax Tutorial49534
Node: Crash Course Tutorial50432
Node: Stack Tutorial51286
Node: Arithmetics Tutorial51964
Ref: Arithmetics Tutorial-Footnote-153006
Node: Stack Manipulation Tutorial53087
Node: Using files for Forth code Tutorial54539
Node: Comments Tutorial56081
Ref: Comments Tutorial-Footnote-157207
Node: Colon Definitions Tutorial57276
Node: Decompilation Tutorial58414
Node: Stack-Effect Comments Tutorial58954
Node: Types Tutorial62160
Node: Factoring Tutorial63980
Node: Designing the stack effect Tutorial65152
Node: Local Variables Tutorial67740
Node: Conditional execution Tutorial69158
Node: Flags and Comparisons Tutorial70531
Node: General Loops Tutorial73238
Node: Counted loops Tutorial75288
Node: Recursion Tutorial76680
Node: Leaving definitions or loops Tutorial77697
Node: Return Stack Tutorial78422
Node: Memory Tutorial80290
Node: Characters and Strings Tutorial83179
Node: Alignment Tutorial84746
Node: Floating Point Tutorial85967
Node: Files Tutorial89546
Node: Interpretation and Compilation Semantics and Immediacy Tutorial92813
Node: Execution Tokens Tutorial95411
Node: Exceptions Tutorial98534
Node: Defining Words Tutorial100404
Node: Arrays and Records Tutorial103320
Node: POSTPONE Tutorial104704
Node: Literal Tutorial106657
Node: Advanced macros Tutorial107548
Node: Compilation Tokens Tutorial109938
Node: Wordlists and Search Order Tutorial111137
Node: Introduction113938
Node: Introducing the Text Interpreter116066
Ref: Introducing the Text Interpreter-Footnote-1121286
Node: Stacks and Postfix notation121370
Node: Your first definition130590
Ref: Your first definition-Footnote-1134144
Node: How does that work?134308
Node: Forth is written in Forth143673
Ref: Forth is written in Forth-Footnote-1145420
Ref: Forth is written in Forth-Footnote-2145510
Node: Review - elements of a Forth system145564
Node: Where to go next147460
Node: Exercises149212
Node: Literals in source code149520
Node: Words156905
Node: Notation157748
Ref: Notation-Footnote-1163443
Node: Case insensitivity163537
Node: Comments164242
Node: Boolean Flags165573
Node: Arithmetic166463
Node: Single precision167202
Node: Double precision168430
Node: Mixed precision169893
Node: Integer division170188
Node: Two-stage integer division176756
Node: Bitwise operations182635
Node: Numeric comparison186370
Node: Floating Point189087
Ref: Floating Point-Footnote-1195809
Node: Stack Manipulation196001
Node: Data stack196671
Node: Floating point stack198178
Node: Return stack199062
Node: Locals stack201002
Node: Stack pointer manipulation201296
Node: Memory202566
Node: Memory model203015
Ref: Memory model-Footnote-1204256
Node: Dictionary allocation204472
Node: Heap Allocation209187
Node: Memory blocks and heap allocation211010
Node: Growable memory buffers212333
Node: Memory Access213627
Node: Special Memory Accesses215179
Node: Address arithmetic219731
Ref: Address arithmetic-Footnote-1225818
Node: Memory Blocks225864
Node: Strings and Characters227850
Node: Characters228156
Node: String representations229677
Node: String and character literals230992
Node: String words236631
Node: $tring words242986
Node: Counted string words249611
Node: Control Structures251202
Ref: Control Structures-Footnote-1251911
Node: Selection252024
Node: Simple Loops254979
Node: Counted Loops255710
Ref: Counted Loops-Footnote-1266803
Node: BEGIN loops with multiple exits266848
Node: General control structures with CASE268878
Ref: General control structures with CASE-Footnote-1271832
Node: Arbitrary control structures271970
Node: Calls and returns278506
Node: Exception Handling280659
Node: Defining Words292476
Node: CREATE293193
Node: Variables295416
Node: Constants297577
Ref: Constants-Footnote-1300897
Node: Values302452
Node: Varues304081
Node: Colon Definitions305297
Node: Anonymous Definitions308419
Node: Quotations310066
Node: Supplying names311281
Node: User-defined Defining Words311952
Node: User-defined defining words with colon definitions312720
Ref: User-defined defining words with colon definitions-Footnote-1315306
Node: User-defined defining words using CREATE315590
Ref: User-defined defining words using CREATE-Footnote-1320509
Ref: User-defined defining words using CREATE-Footnote-2320576
Node: CREATE..DOES> applications320761
Node: CREATE..DOES> details322166
Node: Advanced does> usage example324742
Node: Words with user-defined TO etc.329279
Node: User-defined compile-comma335698
Node: Creating from a prototype340553
Node: Making a word current342994
Node: Const-does>343827
Node: Deferred Words345074
Node: Forward349459
Node: Aliases350238
Node: Structures351915
Node: Standard Structures352666
Node: Varue-Flavoured and Defer-Flavoured Fields357788
Node: Structure Extension364242
Ref: Structure Extension-Footnote-1365991
Node: Gforth structs366059
Node: User-defined Stacks370293
Node: Interpretation and Compilation Semantics372379
Ref: Interpretation and Compilation Semantics-Footnote-1375463
Ref: Interpretation and Compilation Semantics-Footnote-2375537
Node: Combined words375762
Ref: state-smartness378590
Ref: Combined words-Footnote-1379723
Node: Tokens for Words379938
Node: Execution token380399
Ref: Execution token-Footnote-1384231
Node: Name token384560
Node: Compilation token389370
Ref: Compilation token-Footnote-1391170
Node: Compiling words391395
Node: Literals392113
Node: Macros395361
Ref: Macros-Footnote-1403943
Node: The Text Interpreter404149
Ref: The Text Interpreter-Footnote-1410344
Ref: The Text Interpreter-Footnote-2410441
Ref: The Text Interpreter-Footnote-3410652
Ref: The Text Interpreter-Footnote-4410810
Ref: The Text Interpreter-Footnote-5410850
Node: Input Sources410944
Node: Number Conversion413356
Node: Interpret/Compile states416024
Node: Interpreter Directives416909
Node: Recognizers421330
Node: Default Recognizers422179
Node: Dealing with existing Recognizers425934
Node: Defining Recognizers433335
Node: Text Interpreter Hooks433506
Node: The Input Stream434053
Node: Word Lists438296
Node: Vocabularies446552
Node: Why use word lists?447799
Node: Word list example450355
Node: Environmental Queries451056
Node: Files459793
Node: Forth source files460357
Node: General files463750
Node: Redirection468010
Node: Directories470052
Node: Search Paths472696
Node: Source Search Paths474610
Node: General Search Paths475548
Node: Blocks477657
Ref: Blocks-Footnote-1487739
Node: Other I/O488138
Node: Simple numeric output488867
Node: Formatted numeric output491204
Node: Floating-point output497922
Node: Miscellaneous output502683
Node: Displaying characters and strings505789
Node: Terminal output506494
Node: Single-key input509172
Node: Line input and conversion515964
Node: Pipes519597
Node: Xchars and Unicode520583
Node: i18n and l10n526630
Node: Substitute529942
Node: CSV reading and writing532286
Node: OS command line arguments533523
Node: Locals535788
Node: Gforth locals536531
Node: Locals definition words541508
Node: Where are locals visible by name?545628
Ref: Where are locals visible by name?-Footnote-1552829
Node: How long do locals live?552928
Node: Locals programming style553790
Node: Locals implementation556502
Node: Closures563072
Node: Standard Forth locals567620
Node: Object-oriented Forth569178
Node: Why object-oriented programming?569921
Node: Object-Oriented Terminology571284
Node: Objects573143
Node: Properties of the Objects model574288
Node: Basic Objects Usage576079
Node: The Objects base class578488
Node: Creating objects578978
Node: Object-Oriented Programming Style579780
Node: Class Binding580776
Node: Method conveniences583030
Ref: Method conveniences-Footnote-1585186
Node: Classes and Scoping585384
Node: Dividing classes586856
Node: Object Interfaces588110
Node: Objects Implementation590126
Ref: Objects Implementation-Footnote-1594993
Node: Objects Glossary595071
Node: OOF603357
Node: Properties of the OOF model604044
Node: Basic OOF Usage605100
Node: The OOF base class607410
Node: Class Declaration610933
Node: Mini-OOF612001
Node: Basic Mini-OOF Usage612492
Node: Mini-OOF Example614096
Node: Mini-OOF Implementation615643
Node: Mini-OOF2619707
Node: Comparison with other object models620968
Ref: Comparison with other object models-Footnote-1624646
Node: Regular Expressions624804
Node: Programming Tools631379
Node: Locating source code definitions632117
Node: Locating uses of a word635362
Node: Locating exception source637920
Node: Examining compiled code638250
Node: Examining data643927
Node: Forgetting words646277
Node: Debugging647624
Node: Assertions650864
Node: Singlestep Debugger654307
Node: Code Coverage656678
Node: Multitasker659778
Node: Pthreads660403
Node: Basic multi-tasking661203
Node: Task-local data666229
Node: Semaphores668047
Node: Hardware operations for multi-tasking669415
Node: Message queues670945
Node: Cilk672906
Node: C Interface674980
Node: Calling C Functions676144
Ref: Calling C Functions-Footnote-1678660
Node: Declaring C Functions678872
Node: Calling C function pointers682503
Node: Defining library interfaces684069
Node: Declaring OS-level libraries687077
Node: Callbacks689291
Node: C interface internals691000
Node: Low-Level C Interface Words692344
Node: Automated interface generation using SWIG693081
Node: Migrating the C interface from earlier Gforth695450
Node: Assembler and Code Words696140
Node: Assembler Definitions696831
Node: Common Assembler704073
Node: Common Disassembler706771
Node: 386 Assembler708466
Node: AMD64 Assembler712917
Node: Alpha Assembler720072
Node: MIPS assembler721037
Node: PowerPC assembler724462
Node: ARM Assembler725474
Node: Other assemblers730413
Node: Carnal words731715
Node: Header fields732109
Node: Header methods735141
Node: Threading Words741541
Node: Passing Commands to the OS746365
Node: Keeping track of Time748023
Node: Miscellaneous Words749434
Node: Error messages750032
Node: Tools753267
Node: Standard Report753571
Node: Stack depth changes755470
Node: Standard conformance757448
Node: The Core Words760352
Node: core-idef760712
Node: core-ambcond769103
Node: core-other778693
Node: The optional Block word set780020
Node: block-idef780421
Node: block-ambcond780849
Node: block-other781797
Node: The optional Double Number word set782158
Node: double-ambcond782470
Node: The optional Exception word set782744
Node: exception-idef783061
Node: The optional Facility word set783795
Node: facility-idef784161
Node: facility-ambcond785340
Node: The optional File-Access word set785741
Node: file-idef786118
Node: file-ambcond788505
Node: The optional Floating-Point word set789816
Node: floating-idef790197
Node: floating-ambcond791341
Node: The optional Locals word set794512
Node: locals-idef794883
Node: locals-ambcond795426
Node: The optional Memory-Allocation word set795929
Node: memory-idef796272
Node: The optional Programming-Tools word set796737
Node: programming-idef797141
Node: programming-ambcond798073
Node: The optional Search-Order word set799408
Node: search-idef799754
Node: search-ambcond800132
Node: Standard vs Extensions800898
Node: Model804245
Node: Integrating Gforth804477
Node: Emacs and Gforth808110
Node: Installing gforth.el810006
Node: Emacs Tags810793
Node: Hilighting811702
Node: Auto-Indentation813574
Node: Blocks Files814991
Node: Image Files816383
Node: Image Licensing Issues817172
Node: Image File Background818362
Ref: Image File Background-Footnote-1822654
Node: Non-Relocatable Image Files822770
Node: Data-Relocatable Image Files823761
Node: Fully Relocatable Image Files824670
Node: gforthmi825544
Node: cross.fs828274
Node: Stack and Dictionary Sizes828984
Node: Running Image Files830074
Ref: Running Image Files-Footnote-1833015
Node: Modifying the Startup Sequence833386
Node: Engine835986
Node: Portability836731
Node: Threading839410
Node: Scheduling840649
Node: Direct or Indirect Threaded?842451
Node: Dynamic Superinstructions845308
Node: DOES>850091
Node: Primitives851197
Node: Automatic Generation851395
Ref: Automatic Generation-Footnote-1854902
Node: TOS Optimization855073
Node: Produced code857774
Node: Performance858193
Node: Cross Compiler863595
Node: Using the Cross Compiler864110
Node: How the Cross Compiler Works868755
Node: MINOS2868936
Node: MINOS2 object framework869127
Node: actor methods869622
Node: widget methods871387
Node: MINOS2 tutorial878046
Node: Bugs878903
Node: Origin879950
Node: Forth-related information883106
Node: Licenses883704
Node: GNU Free Documentation License883990
Node: Copying908010
Node: Word Index945765
Node: Concept Index1110085

End Tag Table


Local Variables:
coding: utf-8
End:
