Giter Site home page Giter Site logo

lbforth's Introduction

( Subset of Forth94 )

The bootstrapping process uses a metacompiler written in Lisp to
target a small inner interpreter and a handful of code words written
in C.  There is also a new metacompiler written in Forth which is
intended to replace the Lisp version in the future.  Work is under way
to add a real target using assembly language code words.

( Further reading )

INSTALL          \ How to build.
doc              \ Classic (and recent) texts not related to this project.
lib/README       \ Information about libraries.
targets/README   \ Information about current and possibly future targets.

( Implementation guide )

The Forth kernel contains everything needed to read and compile the
rest of the system from source code, and not much else.  It's composed
of two parts: a target-specific file nucleus.fth containing all
primitive CODE words, and a target-independent kernel.fth.  These two
are compiled by the metacompiler.

The C target nucleus used for bootstrapping has only twelve proper
primitives.  There is also the COLD word which compiles to main(), a
signal handler, and four I/O words.

When the kernel starts, it jumps to the word called WARM.  This is
responsible for loading the rest of the system and entering the text
interpreter.  The first file loaded by WARM is core.fth, which
implements the CORE wordset.  Because the kernel only has a bare
minimum of words, the start of core.fth looks a little strange.

lbforth's People

Contributors

johanlindberg avatar larsbrinkhoff avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.