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

This manual is for Gforth (version 0.7.9_20240306, March 06, 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: 1381
gforth.info-2: 305679
gforth.info-3: 603561
gforth.info-4: 914248

Tag Table:
(Indirect)
Node: Top1381
Node: Goals16662
Ref: Goals-Footnote-118237
Node: Stability Goals18356
Node: Gforth Environment19628
Node: Invoking Gforth20397
Node: Leaving Gforth30177
Node: Help on Gforth30669
Node: Command-line editing31594
Ref: Command-line editing-Footnote-134196
Node: Environment variables34255
Node: Gforth Files36098
Node: Gforth in pipes36945
Node: Startup speed38802
Node: Tutorial42238
Node: Starting Gforth Tutorial44556
Node: Syntax Tutorial44964
Node: Crash Course Tutorial45862
Node: Stack Tutorial46716
Node: Arithmetics Tutorial47394
Ref: Arithmetics Tutorial-Footnote-148436
Node: Stack Manipulation Tutorial48517
Node: Using files for Forth code Tutorial49969
Node: Comments Tutorial51511
Ref: Comments Tutorial-Footnote-152637
Node: Colon Definitions Tutorial52706
Node: Decompilation Tutorial53844
Node: Stack-Effect Comments Tutorial54384
Node: Types Tutorial57590
Node: Factoring Tutorial59410
Node: Designing the stack effect Tutorial60582
Node: Local Variables Tutorial63170
Node: Conditional execution Tutorial64588
Node: Flags and Comparisons Tutorial65961
Node: General Loops Tutorial68668
Node: Counted loops Tutorial70718
Node: Recursion Tutorial72110
Node: Leaving definitions or loops Tutorial73127
Node: Return Stack Tutorial73852
Node: Memory Tutorial75720
Node: Characters and Strings Tutorial78609
Node: Alignment Tutorial80176
Node: Floating Point Tutorial81397
Node: Files Tutorial84976
Node: Interpretation and Compilation Semantics and Immediacy Tutorial88243
Node: Execution Tokens Tutorial90841
Node: Exceptions Tutorial93964
Node: Defining Words Tutorial95834
Node: Arrays and Records Tutorial98750
Node: POSTPONE Tutorial100134
Node: Literal Tutorial102087
Node: Advanced macros Tutorial102978
Node: Compilation Tokens Tutorial105368
Node: Wordlists and Search Order Tutorial106567
Node: Introduction109368
Node: Introducing the Text Interpreter111496
Ref: Introducing the Text Interpreter-Footnote-1116716
Node: Stacks and Postfix notation116800
Node: Your first definition126020
Ref: Your first definition-Footnote-1129574
Node: How does that work?129738
Node: Forth is written in Forth139103
Ref: Forth is written in Forth-Footnote-1140850
Ref: Forth is written in Forth-Footnote-2140940
Node: Review - elements of a Forth system140994
Node: Where to go next142890
Node: Exercises144642
Node: Literals in source code144950
Node: Words151248
Node: Notation152067
Node: Case insensitivity156350
Node: Comments157682
Node: Boolean Flags158904
Node: Arithmetic159794
Node: Single precision160805
Node: Double precision161952
Node: Mixed precision163272
Node: Integer division163567
Node: Two-stage integer division169706
Node: Bitwise operations175035
Node: Numeric comparison178736
Node: Floating Point181360
Ref: Floating Point-Footnote-1187583
Node: Stack Manipulation187775
Node: Data stack188445
Node: Floating point stack189945
Node: Return stack190829
Node: Locals stack191939
Node: Stack pointer manipulation192231
Node: Memory193383
Node: Memory model193832
Ref: Memory model-Footnote-1195055
Node: Dictionary allocation195271
Node: Heap Allocation199320
Node: Memory Access202747
Node: Special Memory Accesses204299
Node: Address arithmetic208829
Node: Memory Blocks214533
Node: Strings and Characters217098
Node: Characters217404
Node: String representations218925
Node: String and character literals220240
Node: String words224569
Node: $tring words229376
Node: Counted string words236236
Node: Control Structures237475
Ref: Control Structures-Footnote-1238184
Node: Selection238297
Node: Simple Loops241252
Node: Counted Loops241983
Ref: Counted Loops-Footnote-1252964
Node: BEGIN loops with multiple exits253009
Node: General control structures with CASE255039
Ref: General control structures with CASE-Footnote-1257993
Node: Arbitrary control structures258131
Node: Calls and returns264667
Node: Exception Handling266820
Node: Defining Words277832
Node: CREATE278579
Node: Variables280802
Node: Constants282963
Ref: Constants-Footnote-1286283
Node: Values286399
Node: Varues287811
Node: Colon Definitions288908
Node: Anonymous Definitions292030
Node: Quotations293608
Node: Supplying names294823
Node: User-defined Defining Words295494
Node: User-defined defining words with colon definitions296257
Ref: User-defined defining words with colon definitions-Footnote-1298843
Node: User-defined defining words using CREATE299127
Ref: User-defined defining words using CREATE-Footnote-1304046
Ref: User-defined defining words using CREATE-Footnote-2304113
Node: CREATE..DOES> applications305679
Node: CREATE..DOES> details307084
Node: Advanced does> usage example309660
Node: User-defined TO and DEFER@314192
Node: User-defined compile-comma316835
Node: Creating from a prototype321685
Node: Making a word current323976
Node: Const-does>324809
Node: Deferred Words326056
Node: Forward330441
Node: Aliases331220
Node: Interpretation and Compilation Semantics332914
Ref: Interpretation and Compilation Semantics-Footnote-1335993
Ref: Interpretation and Compilation Semantics-Footnote-2336067
Node: Combined words336292
Ref: state-smartness337901
Ref: Combined words-Footnote-1338891
Node: Tokens for Words339106
Node: Execution token339567
Ref: Execution token-Footnote-1343399
Node: Name token343728
Node: Compilation token348351
Ref: Compilation token-Footnote-1350151
Node: Compiling words350376
Node: Literals351094
Node: Macros354342
Ref: Macros-Footnote-1362583
Node: The Text Interpreter362789
Ref: The Text Interpreter-Footnote-1368984
Ref: The Text Interpreter-Footnote-2369081
Ref: The Text Interpreter-Footnote-3369292
Ref: The Text Interpreter-Footnote-4369450
Ref: The Text Interpreter-Footnote-5369490
Node: Input Sources369584
Node: Number Conversion371996
Node: Interpret/Compile states374664
Node: Interpreter Directives375549
Node: Recognizers379970
Node: Default Recognizers380819
Node: Dealing with existing Recognizers384574
Node: Defining Recognizers390512
Node: Text Interpreter Hooks390683
Node: The Input Stream391230
Node: Word Lists395414
Node: Vocabularies403102
Node: Why use word lists?404349
Node: Word list example406905
Node: Environmental Queries407606
Node: Files416343
Node: Forth source files416907
Node: General files420300
Node: Redirection424560
Node: Directories426602
Node: Search Paths429246
Node: Source Search Paths431160
Node: General Search Paths432098
Node: Blocks434207
Ref: Blocks-Footnote-1444289
Node: Other I/O444688
Node: Simple numeric output445442
Node: Formatted numeric output447417
Node: Floating-point output454135
Node: Miscellaneous output458896
Node: Displaying characters and strings461992
Node: Terminal output462697
Node: Single-key input465283
Node: Line input and conversion472075
Node: Pipes475708
Node: Xchars and Unicode476694
Node: i18n and l10n482741
Node: Substitute486053
Node: CSV Reader488169
Node: OS command line arguments488671
Node: Locals490936
Node: Gforth locals491668
Node: Locals definition words496645
Node: Where are locals visible by name?500542
Ref: Where are locals visible by name?-Footnote-1507743
Node: How long do locals live?507842
Node: Locals programming style508704
Node: Locals implementation511416
Node: Closures517846
Node: Standard Forth locals522333
Node: Structures523884
Node: Why explicit structure support?524734
Node: Structure Usage527308
Ref: Structure Usage-Footnote-1530288
Node: Structure Naming Convention530572
Node: Structure Implementation531775
Node: Structure Glossary533104
Node: Forth200x Structures535130
Node: Object-oriented Forth537745
Node: Why object-oriented programming?538492
Node: Object-Oriented Terminology539855
Node: Objects541714
Node: Properties of the Objects model542859
Node: Basic Objects Usage544650
Node: The Objects base class547059
Node: Creating objects547549
Node: Object-Oriented Programming Style548351
Node: Class Binding549347
Node: Method conveniences551601
Ref: Method conveniences-Footnote-1553757
Node: Classes and Scoping553955
Node: Dividing classes555435
Node: Object Interfaces556689
Node: Objects Implementation558705
Ref: Objects Implementation-Footnote-1563572
Node: Objects Glossary563650
Node: OOF570497
Node: Properties of the OOF model571209
Node: Basic OOF Usage572265
Node: The OOF base class574575
Node: Class Declaration578098
Node: Class Implementation579195
Node: Mini-OOF579342
Node: Basic Mini-OOF Usage579833
Node: Mini-OOF Example581101
Node: Mini-OOF Implementation582648
Node: Mini-OOF2586712
Node: Comparison with other object models587980
Ref: Comparison with other object models-Footnote-1591658
Node: Regular Expressions591816
Node: Programming Tools598331
Node: Locating source code definitions599069
Node: Locating uses of a word603561
Node: Locating exception source606119
Node: Examining compiled code606449
Node: Examining data612126
Node: Forgetting words614494
Node: Debugging615841
Node: Assertions619081
Node: Singlestep Debugger622524
Node: Code Coverage624895
Node: Multitasker627722
Node: Pthreads628347
Node: Basic multi-tasking629147
Node: Task-local data633300
Node: Semaphores635118
Node: Hardware operations for multi-tasking636486
Node: Message queues638016
Node: Cilk639340
Node: C Interface641414
Node: Calling C Functions642578
Ref: Calling C Functions-Footnote-1645094
Node: Declaring C Functions645306
Node: Calling C function pointers648937
Node: Defining library interfaces650503
Node: Declaring OS-level libraries653273
Node: Callbacks655487
Node: C interface internals657196
Node: Low-Level C Interface Words658540
Node: Automated interface generation using SWIG659277
Node: Migrating the C interface from earlier Gforth661646
Node: Assembler and Code Words662336
Node: Assembler Definitions663027
Node: Common Assembler670269
Node: Common Disassembler672967
Node: 386 Assembler674662
Node: AMD64 Assembler679113
Node: Alpha Assembler686268
Node: MIPS assembler687233
Node: PowerPC assembler690658
Node: ARM Assembler691670
Node: Other assemblers696609
Node: Carnal words697911
Node: Header fields698305
Node: Header methods701337
Node: Threading Words708962
Node: Passing Commands to the OS714845
Node: Keeping track of Time716503
Node: Miscellaneous Words717914
Node: Error messages718512
Node: Tools721747
Node: Standard Report722051
Node: Stack depth changes723950
Node: Standard conformance725928
Node: The Core Words728832
Node: core-idef729192
Node: core-ambcond737577
Node: core-other747167
Node: The optional Block word set748494
Node: block-idef748895
Node: block-ambcond749323
Node: block-other750271
Node: The optional Double Number word set750632
Node: double-ambcond750944
Node: The optional Exception word set751218
Node: exception-idef751535
Node: The optional Facility word set752269
Node: facility-idef752635
Node: facility-ambcond753814
Node: The optional File-Access word set754215
Node: file-idef754592
Node: file-ambcond756979
Node: The optional Floating-Point word set758290
Node: floating-idef758671
Node: floating-ambcond759815
Node: The optional Locals word set762986
Node: locals-idef763357
Node: locals-ambcond763900
Node: The optional Memory-Allocation word set764403
Node: memory-idef764746
Node: The optional Programming-Tools word set765211
Node: programming-idef765615
Node: programming-ambcond766547
Node: The optional Search-Order word set767882
Node: search-idef768228
Node: search-ambcond768606
Node: Standard vs Extensions769372
Node: Model772719
Node: Integrating Gforth772951
Node: Emacs and Gforth776584
Node: Installing gforth.el778480
Node: Emacs Tags779267
Node: Hilighting780176
Node: Auto-Indentation782048
Node: Blocks Files783465
Node: Image Files784857
Node: Image Licensing Issues785646
Node: Image File Background786836
Ref: Image File Background-Footnote-1791128
Node: Non-Relocatable Image Files791244
Node: Data-Relocatable Image Files792235
Node: Fully Relocatable Image Files793144
Node: gforthmi794018
Node: cross.fs796748
Node: Stack and Dictionary Sizes797458
Node: Running Image Files798548
Ref: Running Image Files-Footnote-1801489
Node: Modifying the Startup Sequence801860
Node: Engine804527
Node: Portability805272
Node: Threading807951
Node: Scheduling809190
Node: Direct or Indirect Threaded?810992
Node: Dynamic Superinstructions813849
Node: DOES>818632
Node: Primitives819738
Node: Automatic Generation819936
Ref: Automatic Generation-Footnote-1823443
Node: TOS Optimization823614
Node: Produced code826315
Node: Performance826734
Node: Cross Compiler832136
Node: Using the Cross Compiler832651
Node: How the Cross Compiler Works837296
Node: MINOS2837477
Node: MINOS2 object framework837668
Node: actor methods838163
Node: widget methods839928
Node: MINOS2 tutorial846587
Node: Bugs847444
Node: Origin848491
Node: Forth-related information851647
Node: Licenses852245
Node: GNU Free Documentation License852531
Node: Copying875112
Node: Word Index914248
Node: Concept Index1069248

End Tag Table


Local Variables:
coding: utf-8
End:
