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

This manual is for Gforth (version 0.7.9_20250611, June 11, 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: 1419
gforth.info-2: 301522
gforth.info-3: 602426
gforth.info-4: 903720

Tag Table:
(Indirect)
Node: Top1419
Node: Goals17262
Ref: Goals-Footnote-119129
Node: Stability Goals19248
Node: Gforth Environment20935
Node: Invoking Gforth21702
Node: Leaving Gforth36851
Node: Help on Gforth37402
Node: Command-line editing38242
Ref: Command-line editing-Footnote-140824
Node: Environment variables40881
Node: Gforth Files42702
Node: Gforth in pipes43549
Node: Startup speed45398
Node: Tutorial47182
Node: Starting Gforth Tutorial49498
Node: Syntax Tutorial49906
Node: Crash Course Tutorial50802
Node: Stack Tutorial51650
Node: Arithmetics Tutorial52328
Ref: Arithmetics Tutorial-Footnote-153370
Node: Stack Manipulation Tutorial53451
Node: Using files for Forth code Tutorial54903
Node: Comments Tutorial56445
Ref: Comments Tutorial-Footnote-157571
Node: Colon Definitions Tutorial57638
Node: Decompilation Tutorial58774
Node: Stack-Effect Comments Tutorial59314
Node: Types Tutorial62518
Node: Factoring Tutorial64336
Node: Designing the stack effect Tutorial65502
Node: Local Variables Tutorial68086
Node: Conditional execution Tutorial69504
Node: Flags and Comparisons Tutorial70875
Node: General Loops Tutorial73582
Node: Counted loops Tutorial75629
Node: Recursion Tutorial77019
Node: Leaving definitions or loops Tutorial78036
Node: Return Stack Tutorial78761
Node: Memory Tutorial80627
Node: Characters and Strings Tutorial83510
Node: Alignment Tutorial85077
Node: Floating Point Tutorial86298
Node: Files Tutorial89877
Node: Interpretation and Compilation Semantics and Immediacy Tutorial93136
Node: Execution Tokens Tutorial95734
Node: Exceptions Tutorial98857
Node: Defining Words Tutorial100727
Node: Arrays and Records Tutorial103643
Node: POSTPONE Tutorial105025
Node: Literal Tutorial107020
Node: Advanced macros Tutorial107909
Node: Compilation Tokens Tutorial110297
Node: Wordlists and Search Order Tutorial111496
Node: Introduction114295
Node: Introducing the Text Interpreter116417
Ref: Introducing the Text Interpreter-Footnote-1121607
Node: Stacks and Postfix notation121689
Node: Your first definition130849
Ref: Your first definition-Footnote-1134373
Node: How does that work?134535
Node: Forth is written in Forth143874
Ref: Forth is written in Forth-Footnote-1145621
Ref: Forth is written in Forth-Footnote-2145709
Node: Review - elements of a Forth system145763
Node: Where to go next147659
Node: Exercises149404
Node: Literals in source code149712
Node: Integer and character literals150069
Node: Floating-point number and complex literals152472
Node: String and Environment variable Literals155191
Node: Literals for tokens and addresses156365
Node: Disambiguating recognizers157968
Node: Words158675
Node: Notation159562
Ref: Notation-Footnote-1165678
Node: Case insensitivity165772
Node: Comments166475
Node: Boolean Flags167850
Node: Arithmetic168706
Node: Single precision169453
Node: Double precision170609
Node: Mixed precision172020
Node: Integer division172297
Node: Two-stage integer division178701
Node: Bitwise operations184516
Node: Numeric comparison188100
Node: Floating Point190619
Ref: Floating Point-Footnote-1195617
Node: Floating-point comparisons195807
Node: Stack Manipulation197372
Node: Data stack198050
Node: Floating point stack199437
Node: Return stack200257
Node: Locals stack203391
Node: Stack pointer manipulation203685
Node: Memory204872
Node: Memory model205334
Ref: Memory model-Footnote-1207603
Node: Dictionary allocation207785
Node: Sections212391
Node: Heap Allocation217854
Node: Memory blocks and heap allocation219690
Node: Growable memory buffers221027
Node: Memory Access222310
Node: Special Memory Accesses224182
Node: Address arithmetic228652
Ref: Address arithmetic-Footnote-1234569
Ref: Address arithmetic-Footnote-2234615
Node: Memory Blocks234756
Node: Strings and Characters236702
Node: Characters237008
Node: String representations238523
Node: String and character literals239834
Node: String words245373
Node: $tring words251797
Node: Counted string words257608
Node: Control Structures259243
Ref: Control Structures-Footnote-1259955
Node: Selection260218
Node: General Loops262775
Node: Counted Loops263665
Ref: Counted Loops-Footnote-1274580
Node: General loops with multiple exits274619
Node: General control structures with CASE276718
Ref: General control structures with CASE-Footnote-1281189
Node: Arbitrary control structures281480
Node: Calls and returns285539
Node: Exception Handling288395
Node: Defining Words301522
Node: CREATE302187
Node: Variables304302
Node: Constants306573
Ref: Constants-Footnote-1308062
Node: Values308174
Node: Colon Definitions312876
Node: Inline Definitions313588
Node: Anonymous Definitions316140
Node: Quotations317730
Node: Supplying names319118
Node: User-defined Defining Words319783
Node: User-defined defining words with colon definitions320551
Node: User-defined defining words using CREATE323214
Node: CREATE..DOES> applications327384
Node: CREATE..DOES> details328789
Node: Advanced does> usage example332851
Node: Words with user-defined TO etc.337382
Ref: Words with user-defined TO etc.-Footnote-1343108
Node: User-defined compile-comma343360
Node: Creating from a prototype347389
Ref: Creating from a prototype-Footnote-1349710
Node: Making a word current349900
Node: Const-does>350719
Node: Deferred Words352387
Node: Synonyms359870
Node: Structures361839
Node: Standard Structures362590
Node: Value-Flavoured and Defer-Flavoured Fields367669
Node: Structure Extension374385
Ref: Structure Extension-Footnote-1376128
Node: Gforth structs376196
Node: User-defined Stacks380420
Node: Interpretation and Compilation Semantics382455
Node: Where are interpretation semantics used?384297
Node: Where are compilation semantics used?385442
Node: Which semantics do existing words have?386987
Ref: Which semantics do existing words have?-Footnote-1389578
Node: What sematics do normal definitions have?389776
Node: How to define immediate words391118
Node: How to define combined words394160
Ref: Combined words394412
Ref: state-smartness397067
Ref: How to define combined words-Footnote-1399295
Ref: How to define combined words-Footnote-2399407
Node: Tokens for Words399715
Node: Execution token400176
Node: Name token403657
Node: Compilation token408814
Ref: Compilation token-Footnote-1410589
Node: Compiling words410814
Node: Literals411532
Node: Macros414718
Ref: Macros-Footnote-1423528
Node: The Text Interpreter423734
Ref: The Text Interpreter-Footnote-1429857
Ref: The Text Interpreter-Footnote-2429954
Ref: The Text Interpreter-Footnote-3430165
Ref: The Text Interpreter-Footnote-4430323
Ref: The Text Interpreter-Footnote-5430363
Node: Input Sources430457
Node: Number Conversion432829
Node: Interpret/Compile states435461
Node: Interpreter Directives436346
Node: Recognizers440633
Node: Default Recognizers441482
Node: Dealing with existing Recognizers445229
Node: Defining Recognizers452434
Node: Text Interpreter Hooks452605
Node: The Input Stream453134
Node: Word Lists457323
Node: Vocabularies465377
Node: Why use word lists?466624
Node: Word list example469174
Node: Environmental Queries469875
Node: Files478428
Node: Forth source files478990
Node: General files482315
Node: Redirection486399
Node: Directories488411
Node: Search Paths490980
Node: Source Search Paths492886
Node: General Search Paths493806
Node: Blocks495871
Ref: Blocks-Footnote-1505794
Node: Other I/O506193
Node: Simple numeric output506922
Node: Formatted numeric output509179
Node: Floating-point output515833
Node: Miscellaneous output520534
Node: Displaying characters and strings523576
Node: Terminal output524257
Node: Single-key input527311
Node: Line input and conversion533793
Node: Pipes537360
Node: Xchars and Unicode538326
Node: i18n and l10n544268
Node: Substitute547502
Node: CSV reading and writing549794
Node: OS command line arguments550999
Node: Locals553228
Node: Gforth locals553585
Node: Locals definition words557434
Node: Where are locals visible by name?560591
Ref: Where are locals visible by name?-Footnote-1568024
Node: How long do locals live?568123
Node: Locals programming style569025
Node: Locals implementation571737
Node: Standard Forth locals578611
Node: Object-oriented Forth580098
Node: Why object-oriented programming?580830
Node: Object-Oriented Terminology582187
Node: Objects584044
Node: Properties of the Objects model585187
Node: Basic Objects Usage586976
Node: The Objects base class589385
Node: Creating objects589875
Node: Object-Oriented Programming Style590669
Node: Class Binding591665
Node: Method conveniences593917
Ref: Method conveniences-Footnote-1596073
Node: Classes and Scoping596271
Node: Dividing classes597743
Node: Object Interfaces598995
Node: Objects Implementation602426
Ref: Objects Implementation-Footnote-1607285
Node: Objects Glossary607363
Node: OOF613918
Node: Properties of the OOF model614605
Node: Basic OOF Usage615657
Node: The OOF base class617965
Node: Class Declaration621350
Node: Mini-OOF622364
Node: Basic Mini-OOF Usage622853
Node: Mini-OOF Example624405
Node: Mini-OOF Implementation625952
Node: Mini-OOF2630004
Node: Comparison with other object models631547
Ref: Comparison with other object models-Footnote-1635221
Node: Closures635379
Node: How do I read outer locals?645244
Node: How do I write outer locals?646445
Node: Regular Expressions651073
Node: Programming Tools657309
Node: Locating source code definitions658047
Node: Locating uses of a word661232
Node: Locating exception source663722
Node: Examining compiled code664034
Node: Examining data669661
Node: Forgetting words671939
Node: Debugging673275
Node: Assertions676413
Node: Singlestep Debugger679812
Node: Code Coverage682153
Node: Multitasker685169
Node: Pthreads685794
Node: Basic multi-tasking686594
Node: Task-local data691488
Node: Semaphores693358
Node: Hardware operations for multi-tasking694700
Node: Message queues696459
Node: Cilk698398
Node: C Interface700422
Node: Calling C Functions701582
Ref: Calling C Functions-Footnote-1704098
Node: Declaring C Functions704310
Node: Calling C function pointers707913
Node: Defining library interfaces709472
Node: Declaring OS-level libraries712448
Node: Callbacks714618
Node: C interface internals716313
Node: Low-Level C Interface Words717657
Node: Automated interface generation using SWIG718370
Node: Migrating the C interface from earlier Gforth720729
Node: Assembler and Code Words721417
Node: Assembler Definitions722108
Node: Common Assembler729294
Node: Common Disassembler731990
Node: 386 Assembler733679
Node: AMD64 Assembler738118
Node: Alpha Assembler745259
Node: MIPS assembler746222
Node: PowerPC assembler749639
Node: ARM Assembler750647
Node: Other assemblers755578
Node: Carnal words756878
Node: Header fields757268
Node: Header methods760263
Node: Threading Words766613
Node: Passing Commands to the OS771341
Node: Keeping track of Time772965
Node: Miscellaneous Words774334
Node: Error messages774926
Node: Tools778159
Node: Standard Report778463
Node: Stack depth changes780362
Node: Standard conformance782340
Node: The Core Words785244
Node: core-idef785604
Node: core-ambcond793985
Node: core-other803573
Node: The optional Block word set804896
Node: block-idef805297
Node: block-ambcond805725
Node: block-other806673
Node: The optional Double Number word set807034
Node: double-ambcond807346
Node: The optional Exception word set807620
Node: exception-idef807937
Node: The optional Facility word set808671
Node: facility-idef809037
Node: facility-ambcond810216
Node: The optional File-Access word set810615
Node: file-idef810992
Node: file-ambcond813377
Node: The optional Floating-Point word set814688
Node: floating-idef815069
Node: floating-ambcond816213
Node: The optional Locals word set819384
Node: locals-idef819755
Node: locals-ambcond820298
Node: The optional Memory-Allocation word set820797
Node: memory-idef821140
Node: The optional Programming-Tools word set821605
Node: programming-idef822009
Node: programming-ambcond822941
Node: The optional Search-Order word set824274
Node: search-idef824620
Node: search-ambcond824998
Node: Standard vs Extensions825764
Node: Model829103
Node: Integrating Gforth829335
Node: Emacs and Gforth832964
Node: Installing gforth.el834858
Node: Emacs Tags835645
Node: Hilighting836554
Node: Auto-Indentation838394
Node: Blocks Files839791
Node: Image Files841173
Node: Image Licensing Issues841960
Node: Image File Background843148
Ref: Image File Background-Footnote-1847434
Node: Non-Relocatable Image Files847550
Node: Data-Relocatable Image Files848531
Node: Fully Relocatable Image Files849440
Node: gforthmi850314
Node: cross.fs853044
Node: Stack and Dictionary Sizes853754
Node: Running Image Files854844
Ref: Running Image Files-Footnote-1857775
Node: Modifying the Startup Sequence858140
Node: Engine860720
Node: Portability861459
Node: Threading864136
Node: Scheduling865371
Node: Direct or Indirect Threaded?867169
Node: Dynamic Superinstructions870026
Node: DOES>874809
Node: Primitives875915
Node: Automatic Generation876113
Ref: Automatic Generation-Footnote-1879620
Node: TOS Optimization879791
Node: Produced code882492
Node: Performance882911
Node: Cross Compiler888308
Node: Using the Cross Compiler888823
Node: How the Cross Compiler Works893458
Node: MINOS2893639
Node: MINOS2 object framework893830
Node: actor methods894311
Node: widget methods895962
Node: MINOS2 tutorial903720
Node: Bugs904577
Node: Origin905624
Node: Forth-related information908776
Node: Licenses909374
Node: GNU Free Documentation License909660
Node: Copying932075
Node: Word Index969627
Node: Concept Index1136465

End Tag Table


Local Variables:
coding: utf-8
End:
