Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.forth > #44096

Re: Bootstrapping

From "Rod Pemberton" <boo@fasdfrewar.cdm>
Newsgroups comp.lang.forth
Subject Re: Bootstrapping
Date 2015-12-05 21:02 -0500
Organization Aioe.org NNTP Server
Message-ID <op.x8689npmyfako5@localhost> (permalink)
References <5016c629-9407-42ae-80c0-eb2c1c178f83@googlegroups.com>

Show all headers | View raw


On Tue, 01 Dec 2015 17:08:24 -0500, Chris Curl <ccurl609@gmail.com> wrote:

> I feel like I'm making decent progress on my latest implementation,
> an indirect threaded Forth written in C.
>
> Might someone have a Forth bootstrap script that assumes (some number
> of) primitives are already defined? Ideally, such a script could build
> a working Forth by building on the primitives that are hand coded
> into the system.
>
> Then an implementer could focus on the basic system and use the script
> to get off the ground. A nice feature of that would be that it could
> also be a smoke test for ANS compatibility.

Each system build from primitives uses a different set of them.

You could also look at fig-Forth.  Much of it is listed as high-level
Forth code.  Discard the Forth words no longer in use, or which were
dropped by later Forth standards, e.g., Forth-79, Forth-83, ANS-Forth.

eForth has already been mentioned.  This is the Forth renowned for
the technique of building up Forth from low-level primitives.

I implemented many words in C first, then slowly rewrote them
in high-level Forth.  Most of this was easy, but some of them
were difficult because high-level C is so much more powerful
than high-level Forth, especially things like pointers to pointer
to an element of an array, etc., which must be rewritten in
terms of very basic address manipulations, e.g, fetch @ and
store ! .


Rod Pemberton


-- 
How to kill Facebook.  Tell a bunch of fourth graders that
only old people use Facebook.  Wait eight years.

Back to comp.lang.forth | Previous | Next — Previous in thread | Find similar | Unroll thread


Thread

Bootstrapping Chris Curl <ccurl609@gmail.com> - 2015-12-01 14:08 -0800
  Re: Bootstrapping Paul Rubin <no.email@nospam.invalid> - 2015-12-01 14:31 -0800
  Re: Bootstrapping Lars Brinkhoff <lars.spam@nocrew.org> - 2015-12-02 08:04 +0100
    Re: Bootstrapping Albert van der Horst <albert@spenarnc.xs4all.nl> - 2015-12-02 11:53 +0000
  Re: Bootstrapping "Rod Pemberton" <boo@fasdfrewar.cdm> - 2015-12-05 21:02 -0500

csiph-web