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

This manual is for Gforth (version 0.7.9_20240817, August 17, 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 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 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: 1382
gforth.info-2: 305885
gforth.info-3: 602456
gforth.info-4: 923095

Tag Table:
(Indirect)
Node: Top1382
Node: Goals16618
Ref: Goals-Footnote-118193
Node: Stability Goals18312
Node: Gforth Environment19584
Node: Invoking Gforth20353
Node: Leaving Gforth30133
Node: Help on Gforth30625
Node: Command-line editing31550
Ref: Command-line editing-Footnote-134152
Node: Environment variables34211
Node: Gforth Files36054
Node: Gforth in pipes36901
Node: Startup speed38758
Node: Tutorial42194
Node: Starting Gforth Tutorial44512
Node: Syntax Tutorial44920
Node: Crash Course Tutorial45818
Node: Stack Tutorial46672
Node: Arithmetics Tutorial47350
Ref: Arithmetics Tutorial-Footnote-148392
Node: Stack Manipulation Tutorial48473
Node: Using files for Forth code Tutorial49925
Node: Comments Tutorial51467
Ref: Comments Tutorial-Footnote-152593
Node: Colon Definitions Tutorial52662
Node: Decompilation Tutorial53800
Node: Stack-Effect Comments Tutorial54340
Node: Types Tutorial57546
Node: Factoring Tutorial59366
Node: Designing the stack effect Tutorial60538
Node: Local Variables Tutorial63126
Node: Conditional execution Tutorial64544
Node: Flags and Comparisons Tutorial65917
Node: General Loops Tutorial68624
Node: Counted loops Tutorial70674
Node: Recursion Tutorial72066
Node: Leaving definitions or loops Tutorial73083
Node: Return Stack Tutorial73808
Node: Memory Tutorial75676
Node: Characters and Strings Tutorial78565
Node: Alignment Tutorial80132
Node: Floating Point Tutorial81353
Node: Files Tutorial84932
Node: Interpretation and Compilation Semantics and Immediacy Tutorial88199
Node: Execution Tokens Tutorial90797
Node: Exceptions Tutorial93920
Node: Defining Words Tutorial95790
Node: Arrays and Records Tutorial98706
Node: POSTPONE Tutorial100090
Node: Literal Tutorial102043
Node: Advanced macros Tutorial102934
Node: Compilation Tokens Tutorial105324
Node: Wordlists and Search Order Tutorial106523
Node: Introduction109324
Node: Introducing the Text Interpreter111452
Ref: Introducing the Text Interpreter-Footnote-1116672
Node: Stacks and Postfix notation116756
Node: Your first definition125976
Ref: Your first definition-Footnote-1129530
Node: How does that work?129694
Node: Forth is written in Forth139059
Ref: Forth is written in Forth-Footnote-1140806
Ref: Forth is written in Forth-Footnote-2140896
Node: Review - elements of a Forth system140950
Node: Where to go next142846
Node: Exercises144598
Node: Literals in source code144906
Node: Words151204
Node: Notation152023
Node: Case insensitivity156306
Node: Comments157638
Node: Boolean Flags158860
Node: Arithmetic159750
Node: Single precision160761
Node: Double precision161908
Node: Mixed precision163228
Node: Integer division163523
Node: Two-stage integer division169662
Node: Bitwise operations174991
Node: Numeric comparison178692
Node: Floating Point181316
Ref: Floating Point-Footnote-1187539
Node: Stack Manipulation187731
Node: Data stack188401
Node: Floating point stack189901
Node: Return stack190785
Node: Locals stack192169
Node: Stack pointer manipulation192461
Node: Memory193613
Node: Memory model194062
Ref: Memory model-Footnote-1195285
Node: Dictionary allocation195501
Node: Heap Allocation199550
Node: Memory Access202977
Node: Special Memory Accesses204529
Node: Address arithmetic209059
Node: Memory Blocks214763
Node: Strings and Characters217328
Node: Characters217634
Node: String representations219155
Node: String and character literals220470
Node: String words224799
Node: $tring words229606
Node: Counted string words236466
Node: Control Structures237705
Ref: Control Structures-Footnote-1238414
Node: Selection238527
Node: Simple Loops241482
Node: Counted Loops242213
Ref: Counted Loops-Footnote-1253194
Node: BEGIN loops with multiple exits253239
Node: General control structures with CASE255269
Ref: General control structures with CASE-Footnote-1258223
Node: Arbitrary control structures258361
Node: Calls and returns264897
Node: Exception Handling267050
Node: Defining Words278062
Node: CREATE278779
Node: Variables281002
Node: Constants283163
Ref: Constants-Footnote-1286483
Node: Values286599
Node: Varues288011
Node: Colon Definitions289108
Node: Anonymous Definitions292230
Node: Quotations293808
Node: Supplying names295023
Node: User-defined Defining Words295694
Node: User-defined defining words with colon definitions296462
Ref: User-defined defining words with colon definitions-Footnote-1299048
Node: User-defined defining words using CREATE299332
Ref: User-defined defining words using CREATE-Footnote-1304251
Ref: User-defined defining words using CREATE-Footnote-2304318
Node: CREATE..DOES> applications305885
Node: CREATE..DOES> details307290
Node: Advanced does> usage example309866
Node: Words with user-defined TO etc.314403
Node: User-defined compile-comma320740
Node: Creating from a prototype325595
Node: Making a word current328036
Node: Const-does>328869
Node: Deferred Words330116
Node: Forward334501
Node: Aliases335280
Node: Structures336957
Node: Standard Structures337729
Node: Varue-Flavoured and Defer-Flavoured Fields342632
Node: Structure Extension349086
Ref: Structure Extension-Footnote-1350835
Node: Gforth structs350903
Node: Interpretation and Compilation Semantics355137
Ref: Interpretation and Compilation Semantics-Footnote-1358212
Ref: Interpretation and Compilation Semantics-Footnote-2358286
Node: Combined words358511
Ref: state-smartness360120
Ref: Combined words-Footnote-1361110
Node: Tokens for Words361325
Node: Execution token361786
Ref: Execution token-Footnote-1365618
Node: Name token365947
Node: Compilation token370711
Ref: Compilation token-Footnote-1372511
Node: Compiling words372736
Node: Literals373454
Node: Macros376702
Ref: Macros-Footnote-1384943
Node: The Text Interpreter385149
Ref: The Text Interpreter-Footnote-1391344
Ref: The Text Interpreter-Footnote-2391441
Ref: The Text Interpreter-Footnote-3391652
Ref: The Text Interpreter-Footnote-4391810
Ref: The Text Interpreter-Footnote-5391850
Node: Input Sources391944
Node: Number Conversion394356
Node: Interpret/Compile states397024
Node: Interpreter Directives397909
Node: Recognizers402330
Node: Default Recognizers403179
Node: Dealing with existing Recognizers406934
Node: Defining Recognizers412869
Node: Text Interpreter Hooks413040
Node: The Input Stream413587
Node: Word Lists417830
Node: Vocabularies425578
Node: Why use word lists?426825
Node: Word list example429381
Node: Environmental Queries430082
Node: Files438819
Node: Forth source files439383
Node: General files442776
Node: Redirection447036
Node: Directories449078
Node: Search Paths451722
Node: Source Search Paths453636
Node: General Search Paths454574
Node: Blocks456683
Ref: Blocks-Footnote-1466765
Node: Other I/O467164
Node: Simple numeric output467918
Node: Formatted numeric output470255
Node: Floating-point output476973
Node: Miscellaneous output481734
Node: Displaying characters and strings484830
Node: Terminal output485535
Node: Single-key input488121
Node: Line input and conversion494913
Node: Pipes498546
Node: Xchars and Unicode499532
Node: i18n and l10n505579
Node: Substitute508891
Node: CSV Reader511007
Node: OS command line arguments511509
Node: Locals513774
Node: Gforth locals514517
Node: Locals definition words519494
Node: Where are locals visible by name?523391
Ref: Where are locals visible by name?-Footnote-1530592
Node: How long do locals live?530691
Node: Locals programming style531553
Node: Locals implementation534265
Node: Closures540848
Node: Standard Forth locals545464
Node: Object-oriented Forth547015
Node: Why object-oriented programming?547758
Node: Object-Oriented Terminology549121
Node: Objects550980
Node: Properties of the Objects model552125
Node: Basic Objects Usage553916
Node: The Objects base class556325
Node: Creating objects556815
Node: Object-Oriented Programming Style557617
Node: Class Binding558613
Node: Method conveniences560867
Ref: Method conveniences-Footnote-1563023
Node: Classes and Scoping563221
Node: Dividing classes564693
Node: Object Interfaces565947
Node: Objects Implementation567963
Ref: Objects Implementation-Footnote-1572830
Node: Objects Glossary572908
Node: OOF579755
Node: Properties of the OOF model580467
Node: Basic OOF Usage581523
Node: The OOF base class583833
Node: Class Declaration587356
Node: Class Implementation588453
Node: Mini-OOF588600
Node: Basic Mini-OOF Usage589091
Node: Mini-OOF Example590359
Node: Mini-OOF Implementation591906
Node: Mini-OOF2595970
Node: Comparison with other object models597238
Ref: Comparison with other object models-Footnote-1600916
Node: Regular Expressions602456
Node: Programming Tools609031
Node: Locating source code definitions609769
Node: Locating uses of a word613014
Node: Locating exception source615572
Node: Examining compiled code615902
Node: Examining data621579
Node: Forgetting words623947
Node: Debugging625294
Node: Assertions628534
Node: Singlestep Debugger631977
Node: Code Coverage634348
Node: Multitasker637175
Node: Pthreads637800
Node: Basic multi-tasking638600
Node: Task-local data642753
Node: Semaphores644571
Node: Hardware operations for multi-tasking645939
Node: Message queues647469
Node: Cilk649411
Node: C Interface651485
Node: Calling C Functions652649
Ref: Calling C Functions-Footnote-1655165
Node: Declaring C Functions655377
Node: Calling C function pointers659008
Node: Defining library interfaces660574
Node: Declaring OS-level libraries663344
Node: Callbacks665558
Node: C interface internals667267
Node: Low-Level C Interface Words668611
Node: Automated interface generation using SWIG669348
Node: Migrating the C interface from earlier Gforth671717
Node: Assembler and Code Words672407
Node: Assembler Definitions673098
Node: Common Assembler680340
Node: Common Disassembler683038
Node: 386 Assembler684733
Node: AMD64 Assembler689184
Node: Alpha Assembler696339
Node: MIPS assembler697304
Node: PowerPC assembler700729
Node: ARM Assembler701741
Node: Other assemblers706680
Node: Carnal words707982
Node: Header fields708376
Node: Header methods711408
Node: Threading Words717808
Node: Passing Commands to the OS723691
Node: Keeping track of Time725349
Node: Miscellaneous Words726760
Node: Error messages727358
Node: Tools730593
Node: Standard Report730897
Node: Stack depth changes732796
Node: Standard conformance734774
Node: The Core Words737678
Node: core-idef738038
Node: core-ambcond746423
Node: core-other756013
Node: The optional Block word set757340
Node: block-idef757741
Node: block-ambcond758169
Node: block-other759117
Node: The optional Double Number word set759478
Node: double-ambcond759790
Node: The optional Exception word set760064
Node: exception-idef760381
Node: The optional Facility word set761115
Node: facility-idef761481
Node: facility-ambcond762660
Node: The optional File-Access word set763061
Node: file-idef763438
Node: file-ambcond765825
Node: The optional Floating-Point word set767136
Node: floating-idef767517
Node: floating-ambcond768661
Node: The optional Locals word set771832
Node: locals-idef772203
Node: locals-ambcond772746
Node: The optional Memory-Allocation word set773249
Node: memory-idef773592
Node: The optional Programming-Tools word set774057
Node: programming-idef774461
Node: programming-ambcond775393
Node: The optional Search-Order word set776728
Node: search-idef777074
Node: search-ambcond777452
Node: Standard vs Extensions778218
Node: Model781565
Node: Integrating Gforth781797
Node: Emacs and Gforth785430
Node: Installing gforth.el787326
Node: Emacs Tags788113
Node: Hilighting789022
Node: Auto-Indentation790894
Node: Blocks Files792311
Node: Image Files793703
Node: Image Licensing Issues794492
Node: Image File Background795682
Ref: Image File Background-Footnote-1799974
Node: Non-Relocatable Image Files800090
Node: Data-Relocatable Image Files801081
Node: Fully Relocatable Image Files801990
Node: gforthmi802864
Node: cross.fs805594
Node: Stack and Dictionary Sizes806304
Node: Running Image Files807394
Ref: Running Image Files-Footnote-1810335
Node: Modifying the Startup Sequence810706
Node: Engine813373
Node: Portability814118
Node: Threading816797
Node: Scheduling818036
Node: Direct or Indirect Threaded?819838
Node: Dynamic Superinstructions822695
Node: DOES>827478
Node: Primitives828584
Node: Automatic Generation828782
Ref: Automatic Generation-Footnote-1832289
Node: TOS Optimization832460
Node: Produced code835161
Node: Performance835580
Node: Cross Compiler840982
Node: Using the Cross Compiler841497
Node: How the Cross Compiler Works846142
Node: MINOS2846323
Node: MINOS2 object framework846514
Node: actor methods847009
Node: widget methods848774
Node: MINOS2 tutorial855433
Node: Bugs856290
Node: Origin857337
Node: Forth-related information860493
Node: Licenses861091
Node: GNU Free Documentation License861377
Node: Copying883958
Node: Word Index923095
Node: Concept Index1081585

End Tag Table


Local Variables:
coding: utf-8
End:
