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

This manual is for Gforth (version 0.7.9_20250101, January 01, 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: 1438
gforth.info-2: 302259
gforth.info-3: 601953
gforth.info-4: 913568

Tag Table:
(Indirect)
Node: Top1438
Node: Goals16801
Ref: Goals-Footnote-118668
Node: Stability Goals18787
Node: Gforth Environment20476
Node: Invoking Gforth21245
Node: Leaving Gforth36412
Node: Help on Gforth36969
Node: Command-line editing37827
Ref: Command-line editing-Footnote-140429
Node: Environment variables40488
Node: Gforth Files42331
Node: Gforth in pipes43178
Node: Startup speed45035
Node: Tutorial46819
Node: Starting Gforth Tutorial49137
Node: Syntax Tutorial49545
Node: Crash Course Tutorial50443
Node: Stack Tutorial51297
Node: Arithmetics Tutorial51975
Ref: Arithmetics Tutorial-Footnote-153017
Node: Stack Manipulation Tutorial53098
Node: Using files for Forth code Tutorial54550
Node: Comments Tutorial56092
Ref: Comments Tutorial-Footnote-157218
Node: Colon Definitions Tutorial57287
Node: Decompilation Tutorial58425
Node: Stack-Effect Comments Tutorial58965
Node: Types Tutorial62171
Node: Factoring Tutorial63991
Node: Designing the stack effect Tutorial65163
Node: Local Variables Tutorial67751
Node: Conditional execution Tutorial69169
Node: Flags and Comparisons Tutorial70542
Node: General Loops Tutorial73249
Node: Counted loops Tutorial75299
Node: Recursion Tutorial76691
Node: Leaving definitions or loops Tutorial77708
Node: Return Stack Tutorial78433
Node: Memory Tutorial80301
Node: Characters and Strings Tutorial83190
Node: Alignment Tutorial84757
Node: Floating Point Tutorial85978
Node: Files Tutorial89557
Node: Interpretation and Compilation Semantics and Immediacy Tutorial92824
Node: Execution Tokens Tutorial95422
Node: Exceptions Tutorial98545
Node: Defining Words Tutorial100415
Node: Arrays and Records Tutorial103331
Node: POSTPONE Tutorial104715
Node: Literal Tutorial106668
Node: Advanced macros Tutorial107559
Node: Compilation Tokens Tutorial109949
Node: Wordlists and Search Order Tutorial111148
Node: Introduction113949
Node: Introducing the Text Interpreter116077
Ref: Introducing the Text Interpreter-Footnote-1121297
Node: Stacks and Postfix notation121381
Node: Your first definition130601
Ref: Your first definition-Footnote-1134155
Node: How does that work?134319
Node: Forth is written in Forth143684
Ref: Forth is written in Forth-Footnote-1145431
Ref: Forth is written in Forth-Footnote-2145521
Node: Review - elements of a Forth system145575
Node: Where to go next147471
Node: Exercises149223
Node: Literals in source code149531
Node: Words156916
Node: Notation157759
Ref: Notation-Footnote-1163454
Node: Case insensitivity163548
Node: Comments164253
Node: Boolean Flags165584
Node: Arithmetic166474
Node: Single precision167213
Node: Double precision168441
Node: Mixed precision169904
Node: Integer division170199
Node: Two-stage integer division176767
Node: Bitwise operations182646
Node: Numeric comparison186381
Node: Floating Point189098
Ref: Floating Point-Footnote-1195820
Node: Stack Manipulation196012
Node: Data stack196682
Node: Floating point stack198189
Node: Return stack199073
Node: Locals stack201013
Node: Stack pointer manipulation201307
Node: Memory202577
Node: Memory model203039
Ref: Memory model-Footnote-1204280
Node: Dictionary allocation204496
Node: Sections209204
Node: Heap Allocation214573
Node: Memory blocks and heap allocation216383
Node: Growable memory buffers217738
Node: Memory Access219032
Node: Special Memory Accesses220584
Node: Address arithmetic225136
Ref: Address arithmetic-Footnote-1231223
Node: Memory Blocks231269
Node: Strings and Characters233255
Node: Characters233561
Node: String representations235082
Node: String and character literals236397
Node: String words242036
Node: $tring words248391
Node: Counted string words255016
Node: Control Structures256607
Ref: Control Structures-Footnote-1257316
Node: Selection257429
Node: Simple Loops260384
Node: Counted Loops261115
Ref: Counted Loops-Footnote-1272208
Node: BEGIN loops with multiple exits272253
Node: General control structures with CASE274283
Ref: General control structures with CASE-Footnote-1277237
Node: Arbitrary control structures277375
Node: Calls and returns283911
Node: Exception Handling286064
Node: Defining Words297881
Node: CREATE298598
Node: Variables302259
Node: Constants304420
Ref: Constants-Footnote-1307740
Node: Values307856
Node: Varues309494
Node: Colon Definitions310710
Node: Anonymous Definitions313832
Node: Quotations315479
Node: Supplying names316694
Node: User-defined Defining Words317365
Node: User-defined defining words with colon definitions318133
Ref: User-defined defining words with colon definitions-Footnote-1320719
Node: User-defined defining words using CREATE321003
Ref: User-defined defining words using CREATE-Footnote-1325922
Ref: User-defined defining words using CREATE-Footnote-2325989
Node: CREATE..DOES> applications326174
Node: CREATE..DOES> details327579
Node: Advanced does> usage example330155
Node: Words with user-defined TO etc.334692
Node: User-defined compile-comma341117
Node: Creating from a prototype345972
Node: Making a word current348438
Node: Const-does>349271
Node: Deferred Words350518
Node: Forward354903
Node: Aliases355682
Node: Structures357359
Node: Standard Structures358110
Node: Varue-Flavoured and Defer-Flavoured Fields363232
Node: Structure Extension369686
Ref: Structure Extension-Footnote-1371435
Node: Gforth structs371503
Node: User-defined Stacks375737
Node: Interpretation and Compilation Semantics377823
Ref: Interpretation and Compilation Semantics-Footnote-1380907
Ref: Interpretation and Compilation Semantics-Footnote-2380981
Node: Combined words381206
Ref: state-smartness384034
Ref: Combined words-Footnote-1385167
Node: Tokens for Words385382
Node: Execution token385843
Ref: Execution token-Footnote-1389675
Node: Name token390004
Node: Compilation token394814
Ref: Compilation token-Footnote-1396614
Node: Compiling words396839
Node: Literals397557
Node: Macros400805
Ref: Macros-Footnote-1409387
Node: The Text Interpreter409593
Ref: The Text Interpreter-Footnote-1415788
Ref: The Text Interpreter-Footnote-2415885
Ref: The Text Interpreter-Footnote-3416096
Ref: The Text Interpreter-Footnote-4416254
Ref: The Text Interpreter-Footnote-5416294
Node: Input Sources416388
Node: Number Conversion418800
Node: Interpret/Compile states421468
Node: Interpreter Directives422353
Node: Recognizers426774
Node: Default Recognizers427623
Node: Dealing with existing Recognizers431378
Node: Defining Recognizers438779
Node: Text Interpreter Hooks438950
Node: The Input Stream439497
Node: Word Lists443740
Node: Vocabularies451996
Node: Why use word lists?453243
Node: Word list example455799
Node: Environmental Queries456500
Node: Files465237
Node: Forth source files465801
Node: General files469194
Node: Redirection473454
Node: Directories475496
Node: Search Paths478140
Node: Source Search Paths480054
Node: General Search Paths480992
Node: Blocks483101
Ref: Blocks-Footnote-1493183
Node: Other I/O493582
Node: Simple numeric output494311
Node: Formatted numeric output496648
Node: Floating-point output503366
Node: Miscellaneous output508127
Node: Displaying characters and strings511233
Node: Terminal output511938
Node: Single-key input514616
Node: Line input and conversion521408
Node: Pipes525041
Node: Xchars and Unicode526027
Node: i18n and l10n532074
Node: Substitute535386
Node: CSV reading and writing537730
Node: OS command line arguments538967
Node: Locals541232
Node: Gforth locals541975
Node: Locals definition words546952
Node: Where are locals visible by name?551072
Ref: Where are locals visible by name?-Footnote-1558273
Node: How long do locals live?558372
Node: Locals programming style559234
Node: Locals implementation561946
Node: Closures568516
Node: Standard Forth locals573064
Node: Object-oriented Forth574622
Node: Why object-oriented programming?575365
Node: Object-Oriented Terminology576728
Node: Objects578587
Node: Properties of the Objects model579732
Node: Basic Objects Usage581523
Node: The Objects base class583932
Node: Creating objects584422
Node: Object-Oriented Programming Style585224
Node: Class Binding586220
Node: Method conveniences588474
Ref: Method conveniences-Footnote-1590630
Node: Classes and Scoping590828
Node: Dividing classes592300
Node: Object Interfaces593554
Node: Objects Implementation595570
Ref: Objects Implementation-Footnote-1600437
Node: Objects Glossary601953
Node: OOF608800
Node: Properties of the OOF model609487
Node: Basic OOF Usage610543
Node: The OOF base class612853
Node: Class Declaration616376
Node: Mini-OOF617444
Node: Basic Mini-OOF Usage617935
Node: Mini-OOF Example619539
Node: Mini-OOF Implementation621086
Node: Mini-OOF2625150
Node: Comparison with other object models626411
Ref: Comparison with other object models-Footnote-1630089
Node: Regular Expressions630247
Node: Programming Tools636822
Node: Locating source code definitions637560
Node: Locating uses of a word640805
Node: Locating exception source643363
Node: Examining compiled code643693
Node: Examining data649370
Node: Forgetting words651720
Node: Debugging653067
Node: Assertions656307
Node: Singlestep Debugger659750
Node: Code Coverage662121
Node: Multitasker665221
Node: Pthreads665846
Node: Basic multi-tasking666646
Node: Task-local data671672
Node: Semaphores673606
Node: Hardware operations for multi-tasking674974
Node: Message queues676504
Node: Cilk678465
Node: C Interface680539
Node: Calling C Functions681703
Ref: Calling C Functions-Footnote-1684219
Node: Declaring C Functions684431
Node: Calling C function pointers688062
Node: Defining library interfaces689628
Node: Declaring OS-level libraries692636
Node: Callbacks694850
Node: C interface internals696559
Node: Low-Level C Interface Words697903
Node: Automated interface generation using SWIG698640
Node: Migrating the C interface from earlier Gforth701009
Node: Assembler and Code Words701699
Node: Assembler Definitions702390
Node: Common Assembler709632
Node: Common Disassembler712330
Node: 386 Assembler714025
Node: AMD64 Assembler718476
Node: Alpha Assembler725631
Node: MIPS assembler726596
Node: PowerPC assembler730021
Node: ARM Assembler731033
Node: Other assemblers735972
Node: Carnal words737274
Node: Header fields737668
Node: Header methods740700
Node: Threading Words747100
Node: Passing Commands to the OS751924
Node: Keeping track of Time753582
Node: Miscellaneous Words754993
Node: Error messages755591
Node: Tools758826
Node: Standard Report759130
Node: Stack depth changes761029
Node: Standard conformance763007
Node: The Core Words765911
Node: core-idef766271
Node: core-ambcond774662
Node: core-other784252
Node: The optional Block word set785579
Node: block-idef785980
Node: block-ambcond786408
Node: block-other787356
Node: The optional Double Number word set787717
Node: double-ambcond788029
Node: The optional Exception word set788303
Node: exception-idef788620
Node: The optional Facility word set789354
Node: facility-idef789720
Node: facility-ambcond790899
Node: The optional File-Access word set791300
Node: file-idef791677
Node: file-ambcond794064
Node: The optional Floating-Point word set795375
Node: floating-idef795756
Node: floating-ambcond796900
Node: The optional Locals word set800071
Node: locals-idef800442
Node: locals-ambcond800985
Node: The optional Memory-Allocation word set801488
Node: memory-idef801831
Node: The optional Programming-Tools word set802296
Node: programming-idef802700
Node: programming-ambcond803632
Node: The optional Search-Order word set804967
Node: search-idef805313
Node: search-ambcond805691
Node: Standard vs Extensions806457
Node: Model809804
Node: Integrating Gforth810036
Node: Emacs and Gforth813669
Node: Installing gforth.el815565
Node: Emacs Tags816352
Node: Hilighting817261
Node: Auto-Indentation819133
Node: Blocks Files820550
Node: Image Files821942
Node: Image Licensing Issues822731
Node: Image File Background823921
Ref: Image File Background-Footnote-1828213
Node: Non-Relocatable Image Files828329
Node: Data-Relocatable Image Files829320
Node: Fully Relocatable Image Files830229
Node: gforthmi831103
Node: cross.fs833833
Node: Stack and Dictionary Sizes834543
Node: Running Image Files835633
Ref: Running Image Files-Footnote-1838574
Node: Modifying the Startup Sequence838945
Node: Engine841545
Node: Portability842290
Node: Threading844969
Node: Scheduling846208
Node: Direct or Indirect Threaded?848010
Node: Dynamic Superinstructions850867
Node: DOES>855650
Node: Primitives856756
Node: Automatic Generation856954
Ref: Automatic Generation-Footnote-1860461
Node: TOS Optimization860632
Node: Produced code863333
Node: Performance863752
Node: Cross Compiler869154
Node: Using the Cross Compiler869669
Node: How the Cross Compiler Works874314
Node: MINOS2874495
Node: MINOS2 object framework874686
Node: actor methods875181
Node: widget methods876946
Node: MINOS2 tutorial883605
Node: Bugs884462
Node: Origin885509
Node: Forth-related information888665
Node: Licenses889263
Node: GNU Free Documentation License889549
Node: Copying913568
Node: Word Index951323
Node: Concept Index1115935

End Tag Table


Local Variables:
coding: utf-8
End:
