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

This manual is for Gforth (version 0.7.9_20250305, March 05, 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: 1436
gforth.info-2: 302875
gforth.info-3: 604922
gforth.info-4: 902574

Tag Table:
(Indirect)
Node: Top1436
Node: Goals16873
Ref: Goals-Footnote-118740
Node: Stability Goals18859
Node: Gforth Environment20548
Node: Invoking Gforth21317
Node: Leaving Gforth36484
Node: Help on Gforth37041
Node: Command-line editing37899
Ref: Command-line editing-Footnote-140501
Node: Environment variables40560
Node: Gforth Files42403
Node: Gforth in pipes43250
Node: Startup speed45107
Node: Tutorial46891
Node: Starting Gforth Tutorial49209
Node: Syntax Tutorial49617
Node: Crash Course Tutorial50515
Node: Stack Tutorial51369
Node: Arithmetics Tutorial52047
Ref: Arithmetics Tutorial-Footnote-153089
Node: Stack Manipulation Tutorial53170
Node: Using files for Forth code Tutorial54622
Node: Comments Tutorial56164
Ref: Comments Tutorial-Footnote-157290
Node: Colon Definitions Tutorial57359
Node: Decompilation Tutorial58497
Node: Stack-Effect Comments Tutorial59037
Node: Types Tutorial62243
Node: Factoring Tutorial64063
Node: Designing the stack effect Tutorial65235
Node: Local Variables Tutorial67823
Node: Conditional execution Tutorial69241
Node: Flags and Comparisons Tutorial70614
Node: General Loops Tutorial73321
Node: Counted loops Tutorial75371
Node: Recursion Tutorial76763
Node: Leaving definitions or loops Tutorial77780
Node: Return Stack Tutorial78505
Node: Memory Tutorial80373
Node: Characters and Strings Tutorial83262
Node: Alignment Tutorial84829
Node: Floating Point Tutorial86050
Node: Files Tutorial89629
Node: Interpretation and Compilation Semantics and Immediacy Tutorial92896
Node: Execution Tokens Tutorial95494
Node: Exceptions Tutorial98617
Node: Defining Words Tutorial100487
Node: Arrays and Records Tutorial103403
Node: POSTPONE Tutorial104787
Node: Literal Tutorial106740
Node: Advanced macros Tutorial107631
Node: Compilation Tokens Tutorial110021
Node: Wordlists and Search Order Tutorial111220
Node: Introduction114021
Node: Introducing the Text Interpreter116149
Ref: Introducing the Text Interpreter-Footnote-1121369
Node: Stacks and Postfix notation121453
Node: Your first definition130673
Ref: Your first definition-Footnote-1134227
Node: How does that work?134391
Node: Forth is written in Forth143756
Ref: Forth is written in Forth-Footnote-1145503
Ref: Forth is written in Forth-Footnote-2145593
Node: Review - elements of a Forth system145647
Node: Where to go next147543
Node: Exercises149295
Node: Literals in source code149603
Node: Words156988
Node: Notation157844
Ref: Notation-Footnote-1163539
Node: Case insensitivity163633
Node: Comments164338
Node: Boolean Flags165669
Node: Arithmetic166559
Node: Single precision167298
Node: Double precision168526
Node: Mixed precision169989
Node: Integer division170284
Node: Two-stage integer division176852
Node: Bitwise operations182731
Node: Numeric comparison186466
Node: Floating Point189183
Ref: Floating Point-Footnote-1195905
Node: Stack Manipulation196097
Node: Data stack196767
Node: Floating point stack198274
Node: Return stack199158
Node: Locals stack201098
Node: Stack pointer manipulation201392
Node: Memory202662
Node: Memory model203124
Ref: Memory model-Footnote-1204365
Node: Dictionary allocation204581
Node: Sections209289
Node: Heap Allocation214781
Node: Memory blocks and heap allocation216591
Node: Growable memory buffers217946
Node: Memory Access219240
Node: Special Memory Accesses221202
Node: Address arithmetic225754
Ref: Address arithmetic-Footnote-1231841
Node: Memory Blocks231887
Node: Strings and Characters233873
Node: Characters234179
Node: String representations235700
Node: String and character literals237015
Node: String words242654
Node: $tring words249009
Node: Counted string words255634
Node: Control Structures257225
Ref: Control Structures-Footnote-1257934
Node: Selection258047
Node: Simple Loops261002
Node: Counted Loops261733
Ref: Counted Loops-Footnote-1272826
Node: BEGIN loops with multiple exits272871
Node: General control structures with CASE274901
Ref: General control structures with CASE-Footnote-1277855
Node: Arbitrary control structures277993
Node: Calls and returns284529
Node: Exception Handling286682
Node: Defining Words298499
Node: CREATE299216
Node: Variables302875
Node: Constants305036
Ref: Constants-Footnote-1308356
Node: Values308472
Node: Varues310110
Node: Colon Definitions311326
Node: Anonymous Definitions314448
Node: Quotations316095
Node: Supplying names317310
Node: User-defined Defining Words317981
Node: User-defined defining words with colon definitions318749
Ref: User-defined defining words with colon definitions-Footnote-1321335
Node: User-defined defining words using CREATE321619
Ref: User-defined defining words using CREATE-Footnote-1326538
Ref: User-defined defining words using CREATE-Footnote-2326605
Node: CREATE..DOES> applications326790
Node: CREATE..DOES> details328195
Node: Advanced does> usage example330771
Node: Words with user-defined TO etc.335308
Node: User-defined compile-comma341733
Node: Creating from a prototype346588
Node: Making a word current349054
Node: Const-does>349887
Node: Deferred Words351134
Node: Forward355650
Node: Aliases356429
Node: Structures358106
Node: Standard Structures358857
Node: Varue-Flavoured and Defer-Flavoured Fields363979
Node: Structure Extension370433
Ref: Structure Extension-Footnote-1372182
Node: Gforth structs372250
Node: User-defined Stacks376484
Node: Interpretation and Compilation Semantics378570
Ref: Interpretation and Compilation Semantics-Footnote-1381654
Ref: Interpretation and Compilation Semantics-Footnote-2381728
Node: Combined words381953
Ref: state-smartness384781
Ref: Combined words-Footnote-1385914
Node: Tokens for Words386129
Node: Execution token386590
Ref: Execution token-Footnote-1390422
Node: Name token390751
Node: Compilation token395561
Ref: Compilation token-Footnote-1397361
Node: Compiling words397586
Node: Literals398304
Node: Macros401552
Ref: Macros-Footnote-1410134
Node: The Text Interpreter410340
Ref: The Text Interpreter-Footnote-1416535
Ref: The Text Interpreter-Footnote-2416632
Ref: The Text Interpreter-Footnote-3416843
Ref: The Text Interpreter-Footnote-4417001
Ref: The Text Interpreter-Footnote-5417041
Node: Input Sources417135
Node: Number Conversion419547
Node: Interpret/Compile states422215
Node: Interpreter Directives423100
Node: Recognizers427521
Node: Default Recognizers428370
Node: Dealing with existing Recognizers432125
Node: Defining Recognizers439526
Node: Text Interpreter Hooks439697
Node: The Input Stream440244
Node: Word Lists444487
Node: Vocabularies452743
Node: Why use word lists?453990
Node: Word list example456546
Node: Environmental Queries457247
Node: Files465984
Node: Forth source files466548
Node: General files469941
Node: Redirection474201
Node: Directories476243
Node: Search Paths478887
Node: Source Search Paths480801
Node: General Search Paths481739
Node: Blocks483848
Ref: Blocks-Footnote-1493930
Node: Other I/O494329
Node: Simple numeric output495058
Node: Formatted numeric output497395
Node: Floating-point output504113
Node: Miscellaneous output508874
Node: Displaying characters and strings511980
Node: Terminal output512685
Node: Single-key input515363
Node: Line input and conversion522121
Node: Pipes525754
Node: Xchars and Unicode526740
Node: i18n and l10n532787
Node: Substitute536099
Node: CSV reading and writing538443
Node: OS command line arguments539680
Node: Locals541945
Node: Gforth locals542688
Node: Locals definition words547652
Node: Where are locals visible by name?551772
Ref: Where are locals visible by name?-Footnote-1558973
Node: How long do locals live?559072
Node: Locals programming style559934
Node: Locals implementation562646
Node: Standard Forth locals569199
Node: Object-oriented Forth570757
Node: Why object-oriented programming?571489
Node: Object-Oriented Terminology572852
Node: Objects574711
Node: Properties of the Objects model575856
Node: Basic Objects Usage577647
Node: The Objects base class580056
Node: Creating objects580546
Node: Object-Oriented Programming Style581348
Node: Class Binding582344
Node: Method conveniences584598
Ref: Method conveniences-Footnote-1586754
Node: Classes and Scoping586952
Node: Dividing classes588424
Node: Object Interfaces589678
Node: Objects Implementation591694
Ref: Objects Implementation-Footnote-1596561
Node: Objects Glossary596639
Node: OOF604922
Node: Properties of the OOF model605609
Node: Basic OOF Usage606665
Node: The OOF base class608975
Node: Class Declaration612498
Node: Mini-OOF613566
Node: Basic Mini-OOF Usage614057
Node: Mini-OOF Example615661
Node: Mini-OOF Implementation617208
Node: Mini-OOF2621272
Node: Comparison with other object models622839
Ref: Comparison with other object models-Footnote-1626517
Node: Closures626675
Node: How do I read outer locals?636631
Node: How do I write outer locals?637834
Node: Regular Expressions642480
Node: Programming Tools649042
Node: Locating source code definitions649780
Node: Locating uses of a word653025
Node: Locating exception source655583
Node: Examining compiled code655913
Node: Examining data661590
Node: Forgetting words663940
Node: Debugging665287
Node: Assertions668527
Node: Singlestep Debugger671970
Node: Code Coverage674341
Node: Multitasker677441
Node: Pthreads678066
Node: Basic multi-tasking678866
Node: Task-local data683892
Node: Semaphores685826
Node: Hardware operations for multi-tasking687194
Node: Message queues688977
Node: Cilk690938
Node: C Interface693012
Node: Calling C Functions694176
Ref: Calling C Functions-Footnote-1696692
Node: Declaring C Functions696904
Node: Calling C function pointers700535
Node: Defining library interfaces702101
Node: Declaring OS-level libraries705109
Node: Callbacks707323
Node: C interface internals709032
Node: Low-Level C Interface Words710376
Node: Automated interface generation using SWIG711113
Node: Migrating the C interface from earlier Gforth713482
Node: Assembler and Code Words714172
Node: Assembler Definitions714863
Node: Common Assembler722105
Node: Common Disassembler724803
Node: 386 Assembler726498
Node: AMD64 Assembler730949
Node: Alpha Assembler738104
Node: MIPS assembler739069
Node: PowerPC assembler742494
Node: ARM Assembler743506
Node: Other assemblers748445
Node: Carnal words749747
Node: Header fields750141
Node: Header methods753173
Node: Threading Words759573
Node: Passing Commands to the OS764397
Node: Keeping track of Time766055
Node: Miscellaneous Words767466
Node: Error messages768064
Node: Tools771299
Node: Standard Report771603
Node: Stack depth changes773502
Node: Standard conformance775480
Node: The Core Words778384
Node: core-idef778744
Node: core-ambcond787135
Node: core-other796725
Node: The optional Block word set798052
Node: block-idef798453
Node: block-ambcond798881
Node: block-other799829
Node: The optional Double Number word set800190
Node: double-ambcond800502
Node: The optional Exception word set800776
Node: exception-idef801093
Node: The optional Facility word set801827
Node: facility-idef802193
Node: facility-ambcond803372
Node: The optional File-Access word set803773
Node: file-idef804150
Node: file-ambcond806537
Node: The optional Floating-Point word set807848
Node: floating-idef808229
Node: floating-ambcond809373
Node: The optional Locals word set812544
Node: locals-idef812915
Node: locals-ambcond813458
Node: The optional Memory-Allocation word set813961
Node: memory-idef814304
Node: The optional Programming-Tools word set814769
Node: programming-idef815173
Node: programming-ambcond816105
Node: The optional Search-Order word set817440
Node: search-idef817786
Node: search-ambcond818164
Node: Standard vs Extensions818930
Node: Model822277
Node: Integrating Gforth822509
Node: Emacs and Gforth826142
Node: Installing gforth.el828038
Node: Emacs Tags828825
Node: Hilighting829734
Node: Auto-Indentation831606
Node: Blocks Files833023
Node: Image Files834415
Node: Image Licensing Issues835204
Node: Image File Background836394
Ref: Image File Background-Footnote-1840686
Node: Non-Relocatable Image Files840802
Node: Data-Relocatable Image Files841793
Node: Fully Relocatable Image Files842702
Node: gforthmi843576
Node: cross.fs846306
Node: Stack and Dictionary Sizes847016
Node: Running Image Files848106
Ref: Running Image Files-Footnote-1851047
Node: Modifying the Startup Sequence851418
Node: Engine854018
Node: Portability854763
Node: Threading857442
Node: Scheduling858681
Node: Direct or Indirect Threaded?860483
Node: Dynamic Superinstructions863340
Node: DOES>868123
Node: Primitives869229
Node: Automatic Generation869427
Ref: Automatic Generation-Footnote-1872934
Node: TOS Optimization873105
Node: Produced code875806
Node: Performance876225
Node: Cross Compiler881627
Node: Using the Cross Compiler882142
Node: How the Cross Compiler Works886787
Node: MINOS2886968
Node: MINOS2 object framework887159
Node: actor methods887654
Node: widget methods889419
Node: MINOS2 tutorial896078
Node: Bugs896935
Node: Origin897982
Node: Forth-related information902574
Node: Licenses903172
Node: GNU Free Documentation License903458
Node: Copying926039
Node: Word Index963794
Node: Concept Index1130909

End Tag Table


Local Variables:
coding: utf-8
End:
