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

This manual is for Gforth (version 0.7.9_20250409, April 09, 2025), 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: 1420
gforth.info-2: 304657
gforth.info-3: 604236
gforth.info-4: 914903

Tag Table:
(Indirect)
Node: Top1420
Node: Goals16837
Ref: Goals-Footnote-118704
Node: Stability Goals18823
Node: Gforth Environment20510
Node: Invoking Gforth21277
Node: Leaving Gforth36426
Node: Help on Gforth36977
Node: Command-line editing37817
Ref: Command-line editing-Footnote-140399
Node: Environment variables40456
Node: Gforth Files42277
Node: Gforth in pipes43124
Node: Startup speed44973
Node: Tutorial46757
Node: Starting Gforth Tutorial49073
Node: Syntax Tutorial49481
Node: Crash Course Tutorial50377
Node: Stack Tutorial51225
Node: Arithmetics Tutorial51903
Ref: Arithmetics Tutorial-Footnote-152945
Node: Stack Manipulation Tutorial53026
Node: Using files for Forth code Tutorial54478
Node: Comments Tutorial56020
Ref: Comments Tutorial-Footnote-157146
Node: Colon Definitions Tutorial57213
Node: Decompilation Tutorial58349
Node: Stack-Effect Comments Tutorial58889
Node: Types Tutorial62093
Node: Factoring Tutorial63911
Node: Designing the stack effect Tutorial65077
Node: Local Variables Tutorial67661
Node: Conditional execution Tutorial69079
Node: Flags and Comparisons Tutorial70450
Node: General Loops Tutorial73157
Node: Counted loops Tutorial75203
Node: Recursion Tutorial76593
Node: Leaving definitions or loops Tutorial77610
Node: Return Stack Tutorial78335
Node: Memory Tutorial80201
Node: Characters and Strings Tutorial83084
Node: Alignment Tutorial84651
Node: Floating Point Tutorial85872
Node: Files Tutorial89451
Node: Interpretation and Compilation Semantics and Immediacy Tutorial92710
Node: Execution Tokens Tutorial95308
Node: Exceptions Tutorial98430
Node: Defining Words Tutorial100300
Node: Arrays and Records Tutorial103216
Node: POSTPONE Tutorial104598
Node: Literal Tutorial106551
Node: Advanced macros Tutorial107440
Node: Compilation Tokens Tutorial109828
Node: Wordlists and Search Order Tutorial111027
Node: Introduction113826
Node: Introducing the Text Interpreter115948
Ref: Introducing the Text Interpreter-Footnote-1121138
Node: Stacks and Postfix notation121220
Node: Your first definition130380
Ref: Your first definition-Footnote-1133904
Node: How does that work?134066
Node: Forth is written in Forth143405
Ref: Forth is written in Forth-Footnote-1145152
Ref: Forth is written in Forth-Footnote-2145240
Node: Review - elements of a Forth system145294
Node: Where to go next147190
Node: Exercises148936
Node: Literals in source code149244
Node: Words156617
Node: Notation157473
Ref: Notation-Footnote-1163162
Node: Case insensitivity163256
Node: Comments163961
Node: Boolean Flags165254
Node: Arithmetic166110
Node: Single precision166849
Node: Double precision168005
Node: Mixed precision169416
Node: Integer division169693
Node: Two-stage integer division176097
Node: Bitwise operations181912
Node: Numeric comparison185485
Node: Floating Point188004
Ref: Floating Point-Footnote-1194336
Node: Stack Manipulation194526
Node: Data stack195188
Node: Floating point stack196575
Node: Return stack197393
Node: Locals stack199261
Node: Stack pointer manipulation199555
Node: Memory200742
Node: Memory model201204
Ref: Memory model-Footnote-1202445
Node: Dictionary allocation202661
Node: Sections207249
Node: Heap Allocation212711
Node: Memory blocks and heap allocation214501
Node: Growable memory buffers215838
Node: Memory Access217114
Node: Special Memory Accesses218986
Node: Address arithmetic223410
Ref: Address arithmetic-Footnote-1229275
Node: Memory Blocks229321
Node: Strings and Characters231265
Node: Characters231571
Node: String representations233086
Node: String and character literals234397
Node: String words239928
Node: $tring words246143
Node: Counted string words252523
Node: Control Structures254088
Ref: Control Structures-Footnote-1254797
Node: Selection254910
Node: Simple Loops257861
Node: Counted Loops258592
Ref: Counted Loops-Footnote-1269487
Node: BEGIN loops with multiple exits269532
Node: General control structures with CASE271562
Ref: General control structures with CASE-Footnote-1274512
Node: Arbitrary control structures274650
Node: Calls and returns281010
Node: Exception Handling283121
Node: Defining Words294786
Node: CREATE295503
Node: Variables297712
Node: Constants299839
Ref: Constants-Footnote-1303125
Node: Values304657
Node: Varues306245
Node: Colon Definitions307431
Node: Anonymous Definitions310523
Node: Quotations312150
Node: Supplying names313351
Node: User-defined Defining Words314016
Node: User-defined defining words with colon definitions314784
Ref: User-defined defining words with colon definitions-Footnote-1317362
Node: User-defined defining words using CREATE317646
Ref: User-defined defining words using CREATE-Footnote-1322559
Ref: User-defined defining words using CREATE-Footnote-2322626
Node: CREATE..DOES> applications322809
Node: CREATE..DOES> details324214
Node: Advanced does> usage example326770
Node: Words with user-defined TO etc.331301
Node: User-defined compile-comma337676
Node: Creating from a prototype342513
Node: Making a word current344953
Node: Const-does>345772
Node: Deferred Words347011
Node: Forward351453
Node: Aliases352220
Node: Structures353881
Node: Standard Structures354632
Node: Varue-Flavoured and Defer-Flavoured Fields359680
Node: Structure Extension366036
Ref: Structure Extension-Footnote-1367779
Node: Gforth structs367847
Node: User-defined Stacks371985
Node: Interpretation and Compilation Semantics374011
Ref: Interpretation and Compilation Semantics-Footnote-1377073
Ref: Interpretation and Compilation Semantics-Footnote-2377143
Node: Combined words377368
Ref: state-smartness380160
Ref: Combined words-Footnote-1381291
Node: Tokens for Words381503
Node: Execution token381964
Ref: Execution token-Footnote-1385750
Node: Name token386079
Node: Compilation token390801
Ref: Compilation token-Footnote-1392575
Node: Compiling words392800
Node: Literals393518
Node: Macros396704
Ref: Macros-Footnote-1405244
Node: The Text Interpreter405450
Ref: The Text Interpreter-Footnote-1411573
Ref: The Text Interpreter-Footnote-2411670
Ref: The Text Interpreter-Footnote-3411881
Ref: The Text Interpreter-Footnote-4412039
Ref: The Text Interpreter-Footnote-5412079
Node: Input Sources412173
Node: Number Conversion414545
Node: Interpret/Compile states417171
Node: Interpreter Directives418056
Node: Recognizers422343
Node: Default Recognizers423192
Node: Dealing with existing Recognizers426939
Node: Defining Recognizers434144
Node: Text Interpreter Hooks434315
Node: The Input Stream434844
Node: Word Lists439033
Node: Vocabularies447087
Node: Why use word lists?448334
Node: Word list example450884
Node: Environmental Queries451585
Node: Files460138
Node: Forth source files460700
Node: General files464025
Node: Redirection468109
Node: Directories470121
Node: Search Paths472690
Node: Source Search Paths474596
Node: General Search Paths475516
Node: Blocks477581
Ref: Blocks-Footnote-1487509
Node: Other I/O487908
Node: Simple numeric output488637
Node: Formatted numeric output490894
Node: Floating-point output497548
Node: Miscellaneous output502249
Node: Displaying characters and strings505291
Node: Terminal output505972
Node: Single-key input508542
Node: Line input and conversion515024
Node: Pipes518591
Node: Xchars and Unicode519557
Node: i18n and l10n525499
Node: Substitute528733
Node: CSV reading and writing531025
Node: OS command line arguments532230
Node: Locals534459
Node: Gforth locals535200
Node: Locals definition words540148
Node: Where are locals visible by name?544104
Ref: Where are locals visible by name?-Footnote-1551271
Node: How long do locals live?551370
Node: Locals programming style552232
Node: Locals implementation554944
Node: Standard Forth locals561435
Node: Object-oriented Forth562983
Node: Why object-oriented programming?563715
Node: Object-Oriented Terminology565072
Node: Objects566929
Node: Properties of the Objects model568072
Node: Basic Objects Usage569861
Node: The Objects base class572270
Node: Creating objects572760
Node: Object-Oriented Programming Style573554
Node: Class Binding574550
Node: Method conveniences576802
Ref: Method conveniences-Footnote-1578958
Node: Classes and Scoping579156
Node: Dividing classes580628
Node: Object Interfaces581880
Node: Objects Implementation583892
Ref: Objects Implementation-Footnote-1588751
Node: Objects Glossary588829
Node: OOF595384
Node: Properties of the OOF model596071
Node: Basic OOF Usage597123
Node: The OOF base class599431
Node: Class Declaration604236
Node: Mini-OOF605250
Node: Basic Mini-OOF Usage605739
Node: Mini-OOF Example607291
Node: Mini-OOF Implementation608838
Node: Mini-OOF2612890
Node: Comparison with other object models614433
Ref: Comparison with other object models-Footnote-1618107
Node: Closures618265
Node: How do I read outer locals?628039
Node: How do I write outer locals?629240
Node: Regular Expressions633868
Node: Programming Tools640104
Node: Locating source code definitions640842
Node: Locating uses of a word644027
Node: Locating exception source646517
Node: Examining compiled code646829
Node: Examining data652456
Node: Forgetting words654734
Node: Debugging656071
Node: Assertions659209
Node: Singlestep Debugger662608
Node: Code Coverage664949
Node: Multitasker667965
Node: Pthreads668590
Node: Basic multi-tasking669390
Node: Task-local data674284
Node: Semaphores676154
Node: Hardware operations for multi-tasking677496
Node: Message queues679255
Node: Cilk681194
Node: C Interface683218
Node: Calling C Functions684378
Ref: Calling C Functions-Footnote-1686894
Node: Declaring C Functions687106
Node: Calling C function pointers690709
Node: Defining library interfaces692268
Node: Declaring OS-level libraries695244
Node: Callbacks697414
Node: C interface internals699109
Node: Low-Level C Interface Words700453
Node: Automated interface generation using SWIG701166
Node: Migrating the C interface from earlier Gforth703525
Node: Assembler and Code Words704213
Node: Assembler Definitions704904
Node: Common Assembler712090
Node: Common Disassembler714786
Node: 386 Assembler716475
Node: AMD64 Assembler720914
Node: Alpha Assembler728055
Node: MIPS assembler729018
Node: PowerPC assembler732435
Node: ARM Assembler733443
Node: Other assemblers738374
Node: Carnal words739674
Node: Header fields740064
Node: Header methods743090
Node: Threading Words749440
Node: Passing Commands to the OS754168
Node: Keeping track of Time755792
Node: Miscellaneous Words757161
Node: Error messages757753
Node: Tools760986
Node: Standard Report761290
Node: Stack depth changes763189
Node: Standard conformance765167
Node: The Core Words768071
Node: core-idef768431
Node: core-ambcond776812
Node: core-other786400
Node: The optional Block word set787723
Node: block-idef788124
Node: block-ambcond788552
Node: block-other789500
Node: The optional Double Number word set789861
Node: double-ambcond790173
Node: The optional Exception word set790447
Node: exception-idef790764
Node: The optional Facility word set791498
Node: facility-idef791864
Node: facility-ambcond793043
Node: The optional File-Access word set793442
Node: file-idef793819
Node: file-ambcond796204
Node: The optional Floating-Point word set797515
Node: floating-idef797896
Node: floating-ambcond799040
Node: The optional Locals word set802211
Node: locals-idef802582
Node: locals-ambcond803125
Node: The optional Memory-Allocation word set803624
Node: memory-idef803967
Node: The optional Programming-Tools word set804432
Node: programming-idef804836
Node: programming-ambcond805768
Node: The optional Search-Order word set807101
Node: search-idef807447
Node: search-ambcond807825
Node: Standard vs Extensions808591
Node: Model811930
Node: Integrating Gforth812162
Node: Emacs and Gforth815791
Node: Installing gforth.el817685
Node: Emacs Tags818472
Node: Hilighting819381
Node: Auto-Indentation821221
Node: Blocks Files822618
Node: Image Files824000
Node: Image Licensing Issues824787
Node: Image File Background825975
Ref: Image File Background-Footnote-1830261
Node: Non-Relocatable Image Files830377
Node: Data-Relocatable Image Files831358
Node: Fully Relocatable Image Files832267
Node: gforthmi833141
Node: cross.fs835871
Node: Stack and Dictionary Sizes836581
Node: Running Image Files837671
Ref: Running Image Files-Footnote-1840602
Node: Modifying the Startup Sequence840967
Node: Engine843547
Node: Portability844286
Node: Threading846963
Node: Scheduling848198
Node: Direct or Indirect Threaded?849996
Node: Dynamic Superinstructions852853
Node: DOES>857636
Node: Primitives858742
Node: Automatic Generation858940
Ref: Automatic Generation-Footnote-1862447
Node: TOS Optimization862618
Node: Produced code865319
Node: Performance865738
Node: Cross Compiler871135
Node: Using the Cross Compiler871650
Node: How the Cross Compiler Works876285
Node: MINOS2876466
Node: MINOS2 object framework876657
Node: actor methods877138
Node: widget methods878789
Node: MINOS2 tutorial885128
Node: Bugs885985
Node: Origin887032
Node: Forth-related information890184
Node: Licenses890782
Node: GNU Free Documentation License891068
Node: Copying914903
Node: Word Index952455
Node: Concept Index1119578

End Tag Table


Local Variables:
coding: utf-8
End:
