On Mon, Mar 1, 2021, at 7:40 PM, Josh Grams wrote: > On 2021-03-01 07:32PM, Ethan Gardener wrote: > >jonesforth.f is shorter than jonesforth.S, but so much of both files are > >comments, it's hard to compare the code sizes. > > But they're not the same thing, are they? They're two parts of the same > system. jonesforth.S is the core engine that is written in asm, > jonesforth.f is the rest of the system that builds on top and is > written in Forth.
I was responding to Anton Ertl's comment, "Assembly language is not a particularly nice way of writing Forth code, though (and most of a Forth system is written in Forth);" particularly with a view to what proportion of Jonesforth is assembly language. Looks like Francesco Ariis has the answer: about 1/3. It could be less if cross-compiled. > >I imagine JonesForth's double-indirect threading would be good for 8-bit > >systems. > > Did he ever get his terminology straight? That was always my main beef > with JonesForth: he didn't understand what direct/indirect threading > actually referred to. I tried to help straighten things out (as did, I > think, a couple of the long-time comp.lang.forth regulars) but he was > sure that he knew better than anyone else. Ah. I guess I'll have to conceed this point; if Richard Jones got it wrong, so have I. (I've never been good with terminology and never read as much as I should.) Whatever the terminology, JF's design of compiling definitions to lists of addresses seems good for small-memory systems.