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

This manual is for Gforth (version 0.7.9_20250115, January 15, 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: 302382
gforth.info-3: 602207
gforth.info-4: 914128

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 Allocation214696
Node: Memory blocks and heap allocation216506
Node: Growable memory buffers217861
Node: Memory Access219155
Node: Special Memory Accesses220707
Node: Address arithmetic225259
Ref: Address arithmetic-Footnote-1231346
Node: Memory Blocks231392
Node: Strings and Characters233378
Node: Characters233684
Node: String representations235205
Node: String and character literals236520
Node: String words242159
Node: $tring words248514
Node: Counted string words255139
Node: Control Structures256730
Ref: Control Structures-Footnote-1257439
Node: Selection257552
Node: Simple Loops260507
Node: Counted Loops261238
Ref: Counted Loops-Footnote-1272331
Node: BEGIN loops with multiple exits272376
Node: General control structures with CASE274406
Ref: General control structures with CASE-Footnote-1277360
Node: Arbitrary control structures277498
Node: Calls and returns284034
Node: Exception Handling286187
Node: Defining Words298004
Node: CREATE298721
Node: Variables302382
Node: Constants304543
Ref: Constants-Footnote-1307863
Node: Values307979
Node: Varues309617
Node: Colon Definitions310833
Node: Anonymous Definitions313955
Node: Quotations315602
Node: Supplying names316817
Node: User-defined Defining Words317488
Node: User-defined defining words with colon definitions318256
Ref: User-defined defining words with colon definitions-Footnote-1320842
Node: User-defined defining words using CREATE321126
Ref: User-defined defining words using CREATE-Footnote-1326045
Ref: User-defined defining words using CREATE-Footnote-2326112
Node: CREATE..DOES> applications326297
Node: CREATE..DOES> details327702
Node: Advanced does> usage example330278
Node: Words with user-defined TO etc.334815
Node: User-defined compile-comma341240
Node: Creating from a prototype346095
Node: Making a word current348561
Node: Const-does>349394
Node: Deferred Words350641
Node: Forward355157
Node: Aliases355936
Node: Structures357613
Node: Standard Structures358364
Node: Varue-Flavoured and Defer-Flavoured Fields363486
Node: Structure Extension369940
Ref: Structure Extension-Footnote-1371689
Node: Gforth structs371757
Node: User-defined Stacks375991
Node: Interpretation and Compilation Semantics378077
Ref: Interpretation and Compilation Semantics-Footnote-1381161
Ref: Interpretation and Compilation Semantics-Footnote-2381235
Node: Combined words381460
Ref: state-smartness384288
Ref: Combined words-Footnote-1385421
Node: Tokens for Words385636
Node: Execution token386097
Ref: Execution token-Footnote-1389929
Node: Name token390258
Node: Compilation token395068
Ref: Compilation token-Footnote-1396868
Node: Compiling words397093
Node: Literals397811
Node: Macros401059
Ref: Macros-Footnote-1409641
Node: The Text Interpreter409847
Ref: The Text Interpreter-Footnote-1416042
Ref: The Text Interpreter-Footnote-2416139
Ref: The Text Interpreter-Footnote-3416350
Ref: The Text Interpreter-Footnote-4416508
Ref: The Text Interpreter-Footnote-5416548
Node: Input Sources416642
Node: Number Conversion419054
Node: Interpret/Compile states421722
Node: Interpreter Directives422607
Node: Recognizers427028
Node: Default Recognizers427877
Node: Dealing with existing Recognizers431632
Node: Defining Recognizers439033
Node: Text Interpreter Hooks439204
Node: The Input Stream439751
Node: Word Lists443994
Node: Vocabularies452250
Node: Why use word lists?453497
Node: Word list example456053
Node: Environmental Queries456754
Node: Files465491
Node: Forth source files466055
Node: General files469448
Node: Redirection473708
Node: Directories475750
Node: Search Paths478394
Node: Source Search Paths480308
Node: General Search Paths481246
Node: Blocks483355
Ref: Blocks-Footnote-1493437
Node: Other I/O493836
Node: Simple numeric output494565
Node: Formatted numeric output496902
Node: Floating-point output503620
Node: Miscellaneous output508381
Node: Displaying characters and strings511487
Node: Terminal output512192
Node: Single-key input514870
Node: Line input and conversion521662
Node: Pipes525295
Node: Xchars and Unicode526281
Node: i18n and l10n532328
Node: Substitute535640
Node: CSV reading and writing537984
Node: OS command line arguments539221
Node: Locals541486
Node: Gforth locals542229
Node: Locals definition words547206
Node: Where are locals visible by name?551326
Ref: Where are locals visible by name?-Footnote-1558527
Node: How long do locals live?558626
Node: Locals programming style559488
Node: Locals implementation562200
Node: Closures568770
Node: Standard Forth locals573318
Node: Object-oriented Forth574876
Node: Why object-oriented programming?575619
Node: Object-Oriented Terminology576982
Node: Objects578841
Node: Properties of the Objects model579986
Node: Basic Objects Usage581777
Node: The Objects base class584186
Node: Creating objects584676
Node: Object-Oriented Programming Style585478
Node: Class Binding586474
Node: Method conveniences588728
Ref: Method conveniences-Footnote-1590884
Node: Classes and Scoping591082
Node: Dividing classes592554
Node: Object Interfaces593808
Node: Objects Implementation595824
Ref: Objects Implementation-Footnote-1600691
Node: Objects Glossary602207
Node: OOF609054
Node: Properties of the OOF model609741
Node: Basic OOF Usage610797
Node: The OOF base class613107
Node: Class Declaration616630
Node: Mini-OOF617698
Node: Basic Mini-OOF Usage618189
Node: Mini-OOF Example619793
Node: Mini-OOF Implementation621340
Node: Mini-OOF2625404
Node: Comparison with other object models626971
Ref: Comparison with other object models-Footnote-1630649
Node: Regular Expressions630807
Node: Programming Tools637382
Node: Locating source code definitions638120
Node: Locating uses of a word641365
Node: Locating exception source643923
Node: Examining compiled code644253
Node: Examining data649930
Node: Forgetting words652280
Node: Debugging653627
Node: Assertions656867
Node: Singlestep Debugger660310
Node: Code Coverage662681
Node: Multitasker665781
Node: Pthreads666406
Node: Basic multi-tasking667206
Node: Task-local data672232
Node: Semaphores674166
Node: Hardware operations for multi-tasking675534
Node: Message queues677064
Node: Cilk679025
Node: C Interface681099
Node: Calling C Functions682263
Ref: Calling C Functions-Footnote-1684779
Node: Declaring C Functions684991
Node: Calling C function pointers688622
Node: Defining library interfaces690188
Node: Declaring OS-level libraries693196
Node: Callbacks695410
Node: C interface internals697119
Node: Low-Level C Interface Words698463
Node: Automated interface generation using SWIG699200
Node: Migrating the C interface from earlier Gforth701569
Node: Assembler and Code Words702259
Node: Assembler Definitions702950
Node: Common Assembler710192
Node: Common Disassembler712890
Node: 386 Assembler714585
Node: AMD64 Assembler719036
Node: Alpha Assembler726191
Node: MIPS assembler727156
Node: PowerPC assembler730581
Node: ARM Assembler731593
Node: Other assemblers736532
Node: Carnal words737834
Node: Header fields738228
Node: Header methods741260
Node: Threading Words747660
Node: Passing Commands to the OS752484
Node: Keeping track of Time754142
Node: Miscellaneous Words755553
Node: Error messages756151
Node: Tools759386
Node: Standard Report759690
Node: Stack depth changes761589
Node: Standard conformance763567
Node: The Core Words766471
Node: core-idef766831
Node: core-ambcond775222
Node: core-other784812
Node: The optional Block word set786139
Node: block-idef786540
Node: block-ambcond786968
Node: block-other787916
Node: The optional Double Number word set788277
Node: double-ambcond788589
Node: The optional Exception word set788863
Node: exception-idef789180
Node: The optional Facility word set789914
Node: facility-idef790280
Node: facility-ambcond791459
Node: The optional File-Access word set791860
Node: file-idef792237
Node: file-ambcond794624
Node: The optional Floating-Point word set795935
Node: floating-idef796316
Node: floating-ambcond797460
Node: The optional Locals word set800631
Node: locals-idef801002
Node: locals-ambcond801545
Node: The optional Memory-Allocation word set802048
Node: memory-idef802391
Node: The optional Programming-Tools word set802856
Node: programming-idef803260
Node: programming-ambcond804192
Node: The optional Search-Order word set805527
Node: search-idef805873
Node: search-ambcond806251
Node: Standard vs Extensions807017
Node: Model810364
Node: Integrating Gforth810596
Node: Emacs and Gforth814229
Node: Installing gforth.el816125
Node: Emacs Tags816912
Node: Hilighting817821
Node: Auto-Indentation819693
Node: Blocks Files821110
Node: Image Files822502
Node: Image Licensing Issues823291
Node: Image File Background824481
Ref: Image File Background-Footnote-1828773
Node: Non-Relocatable Image Files828889
Node: Data-Relocatable Image Files829880
Node: Fully Relocatable Image Files830789
Node: gforthmi831663
Node: cross.fs834393
Node: Stack and Dictionary Sizes835103
Node: Running Image Files836193
Ref: Running Image Files-Footnote-1839134
Node: Modifying the Startup Sequence839505
Node: Engine842105
Node: Portability842850
Node: Threading845529
Node: Scheduling846768
Node: Direct or Indirect Threaded?848570
Node: Dynamic Superinstructions851427
Node: DOES>856210
Node: Primitives857316
Node: Automatic Generation857514
Ref: Automatic Generation-Footnote-1861021
Node: TOS Optimization861192
Node: Produced code863893
Node: Performance864312
Node: Cross Compiler869714
Node: Using the Cross Compiler870229
Node: How the Cross Compiler Works874874
Node: MINOS2875055
Node: MINOS2 object framework875246
Node: actor methods875741
Node: widget methods877506
Node: MINOS2 tutorial884165
Node: Bugs885022
Node: Origin886069
Node: Forth-related information889225
Node: Licenses889823
Node: GNU Free Documentation License890109
Node: Copying914128
Node: Word Index951883
Node: Concept Index1116641

End Tag Table


Local Variables:
coding: utf-8
End:
