Gforth Manual
GNU GENERAL PUBLIC LICENSE
Preamble
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
How to Apply These Terms to Your New Programs
Preface
Goals of Gforth
Other books on ANS Forth
Invoking Gforth
Forth Words
Notation
Arithmetic
Single precision
Bitwise operations
Mixed precision
Double precision
Floating Point
Stack Manipulation
Data stack
Floating point stack
Return stack
Locals stack
Stack pointer manipulation
Memory
Memory Access
Address arithmetic
Memory Blocks
Control Structures
Selection
Simple Loops
Counted Loops
Arbitrary control structures
Programming Style
Calls and returns
Exception Handling
Locals
Gforth locals
Where are locals visible by name?
How long do locals live?
Programming Style
Implementation
ANS Forth locals
Defining Words
Simple Defining Words
Colon Definitions
User-defined Defining Words
Applications of
CREATE..DOES>
The gory details of
CREATE..DOES>
Supplying names for the defined words
Interpretation and Compilation Semantics
Structures
Why explicit structure support?
Structure Usage
Structure Naming Convention
Structure Implementation
Structure Glossary
Object-oriented Forth
Objects
Properties of the
`objects.fs'
model
Why object-oriented programming?
Object-Oriented Terminology
Basic Objects Usage
The class
object
Creating objects
Object-Oriented Programming Style
Class Binding
Method conveniences
Classes and Scoping
Object Interfaces
`objects.fs'
Implementation
Comparison with other object models
`objects.fs'
Glossary
OOF
Properties of the OOF model
Basic OOF Usage
The base class
`object'
Class Declaration
Class Implementation
Mini-OOF
Usage
Mini-OOF Example
Mini-OOF Implementation
Tokens for Words
Wordlists
Files
Including Files
Words for Including
Search Path
Changing the Search Path
General Search Paths
Blocks
Other I/O
Programming Tools
Debugging
Assertions
Singlestep Debugger
Assembler and Code Words
Threading Words
Tools
`ans-report.fs'
: Report the words used, sorted by wordset
Caveats
ANS conformance
The Core Words
Implementation Defined Options
Ambiguous conditions
Other system documentation
The optional Block word set
Implementation Defined Options
Ambiguous conditions
Other system documentation
The optional Double Number word set
Ambiguous conditions
The optional Exception word set
Implementation Defined Options
The optional Facility word set
Implementation Defined Options
Ambiguous conditions
The optional File-Access word set
Implementation Defined Options
Ambiguous conditions
The optional Floating-Point word set
Implementation Defined Options
Ambiguous conditions
The optional Locals word set
Implementation Defined Options
Ambiguous conditions
The optional Memory-Allocation word set
Implementation Defined Options
The optional Programming-Tools word set
Implementation Defined Options
Ambiguous conditions
The optional Search-Order word set
Implementation Defined Options
Ambiguous conditions
Model
Integrating Gforth into C programs
Emacs and Gforth
Image Files
Image Licensing Issues
Image File Background
Non-Relocatable Image Files
Data-Relocatable Image Files
Fully Relocatable Image Files
`gforthmi'
`cross.fs'
Stack and Dictionary Sizes
Running Image Files
Modifying the Startup Sequence
Engine
Portability
Threading
Scheduling
Direct or Indirect Threaded?
DOES>
Primitives
Automatic Generation
TOS Optimization
Produced code
Performance
Binding to System Library
Cross Compiler
Using the Cross Compiler
How the Cross Compiler Works
Bugs
Authors and Ancestors of Gforth
Authors and Contributors
Pedigree
Word Index
Concept and Word Index
This document was generated on 13 April 2000 using
texi2html
1.56k.