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


Groups > comp.lang.forth > #10643

Re: A short history of the stages of development and status of RP's

From "Rod Pemberton" <do_not_have@noavailemail.cmm>
Newsgroups comp.lang.forth
Subject Re: A short history of the stages of development and status of RP's
Date 2012-03-30 07:04 -0400
Organization Aioe.org NNTP Server
Message-ID <jl43vr$lf5$1@speranza.aioe.org> (permalink)
References <u6udnRFRzuvWh-zSnZ2dnUVZ_sudnZ2d@supernews.com> <3bfc38529cef7fe7b6888a5c84eb9446@msgid.frell.theremailer.net>

Show all headers | View raw


"Fritz Wuehler" <fritz@spamexpire-201203.rodent.frell.theremailer.net> wrote
in message
news:3bfc38529cef7fe7b6888a5c84eb9446@msgid.frell.theremailer.net...
> "Elizabeth D. Rather" <erather@forth.com> wrote:
...

> > It's a lot easier to write a standalone Forth, with all its own drivers
> > and everything, than to write a Forth that runs under any OS we've ever
> > seen.
>
> That doesn't seem like it would be the case on z/Arch and in my case it
> wouldn't matter because I'm thinking about Forth specifically as a special
> purpose tool for writing system code for an OS (to extend the OS, not
> replace it) [...]

I'm not discouraging you from using Forth, but do you really need Forth for
that?  I.e., Forth seems like overkill.

By that, I mean, perhaps a much simpler set of tools could do the job?  A
few simple programs in assembly, or C, or PL/I, etc should do the job ...
Think of them as a set of micro-tools, i.e., micro-compiler,
micro-assembler, micro-linker, etc.  This gets to the heart of why you are
looking into Forth.  Simplicity? 0-operand? Grouping? Parsing? Interpreter?

E.g., a while back, I started two related projects.  One takes "assembly"
and converts it to hex, labels, strings, data, etc.  Another does the hex,
string, data, and label processing into binary.  Both are quite small,
although the assembly part is larger.  If they were merged together, they'd
be basically a two-pass style of assembler.  If you start with the binary
converter part, you'll see that you only need a small amount of
functionality when not dealing with the assembly.  For mine, the "assembly"
syntax is backwards, similar to the RPN style typically used by Forth.
Although, the "assembly" syntax is what I call "character directed parsing"
or "syntax directed parsing".  You can search my past posts for that.  That
technique will reduce parsing too, perhaps not as much as space-delimited
though.  You just need a switch() style statement.

You mentioned "extensibility, modularity, and compactness" in regards to
Forth in the portion I snipped.  : (colon) and ; (semicol) group operations
together, much like a procedure in other languages.  That functionality has
also been combined with BrainFuck.  Have you read about ToadSkin?
http://esolangs.org/wiki/Toadskin

Ok, that's probably still too primitive being Brainfuck derived.  Brainfuck
also needs support for strings and integers.

You can find a number of very simple compilers and bootstrap projects on the
net, most of which worked in reverse.  I.e., binary editing to create a few
needed binary code operations like branching and compare.  Next, they added
text support.  Then, they worked up from there.


Rod Pemberton



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


Thread

A short history of the stages of development and status of RP's Forth interpreter. "Rod Pemberton" <do_not_have@noavailemail.cmm> - 2012-03-22 19:16 -0400
  Re: A short history of the stages of development and status of RP's Forth interpreter. jacko <jackokring@gmail.com> - 2012-03-23 00:38 -0700
    Re: A short history of the stages of development and status of RP's Forth interpreter. jacko <jackokring@gmail.com> - 2012-03-23 00:56 -0700
  Re: A short history of the stages of development and status of RP's For  interpreter. Nomen Nescio <nobody@dizum.com> - 2012-03-23 12:53 +0100
    Re: A short history of the stages of development and status of RP's For  interpreter. "Rod Pemberton" <do_not_have@noavailemail.cmm> - 2012-03-23 20:44 -0400
      Re: A short history of the stages of development and status of RP's For  interpreter. Nomen Nescio <nobody@dizum.com> - 2012-03-25 10:30 +0200
        Re: A short history of the stages of development and status of RP's For  interpreter. "Rod Pemberton" <do_not_have@noavailemail.cmm> - 2012-03-25 06:05 -0400
          Re: A short history of the stages of development and status of RP's Nomen Nescio <nobody@dizum.com> - 2012-03-27 03:03 +0200
            Re: A short history of the stages of development and status of RP's "Elizabeth D. Rather" <erather@forth.com> - 2012-03-26 15:39 -1000
              Re: A short history of the stages of development and status of RP's Fritz Wuehler <fritz@spamexpire-201203.rodent.frell.theremailer.net> - 2012-03-28 11:18 +0200
                Re: A short history of the stages of development and status of RP's "Rod Pemberton" <do_not_have@noavailemail.cmm> - 2012-03-30 07:04 -0400
                Re: A short history of the stages of development and status of RP's Fritz Wuehler <fritz@spamexpire-201203.rodent.frell.theremailer.net> - 2012-03-30 19:24 +0200
                Re: A short history of the stages of development and status of RP's Paul Rubin <no.email@nospam.invalid> - 2012-03-30 13:00 -0700
                Re: A short history of the stages of development and status of RP's Nomen Nescio <nobody@dizum.com> - 2012-04-04 16:09 +0200
                Re: A short history of the stages of development and status of RP's "Rod Pemberton" <do_not_have@noavailemail.cmm> - 2012-03-30 18:06 -0400
                Re: A short history of the stages of development and status of RP's Fritz Wuehler <fritz@spamexpire-201204.rodent.frell.theremailer.net> - 2012-04-02 16:39 +0200
                Re: A short history of the stages of development and status of RP's Paul Rubin <no.email@nospam.invalid> - 2012-04-02 15:37 -0700
                Re: A short history of the stages of development and status of RP's BruceMcF <agila61@netscape.net> - 2012-04-02 16:59 -0700
                Re: A short history of the stages of development and status of RP's kenney@cix.compulink.co.uk - 2012-04-03 17:15 -0500
                Re: A short history of the stages of development and status of RP's "Rod Pemberton" <do_not_have@notemailnot.cmm> - 2012-04-04 05:23 -0400
                Re: A short history of the stages of development and status of RP's Nomen Nescio <nobody@dizum.com> - 2012-04-04 15:58 +0200
                Re: A short history of the stages of development and status of RP's "Rod Pemberton" <do_not_have@notemailnot.cmm> - 2012-04-05 09:57 -0400
                Re: A short history of the stages of development and status of RP's Fritz Wuehler <fritz@spamexpire-201204.rodent.frell.theremailer.net> - 2012-04-05 11:21 +0200
          Re: A short history of the stages of development and status of RP's Fritz Wuehler <fritz@spamexpire-201203.rodent.frell.theremailer.net> - 2012-03-27 13:08 +0200
      Re: A short history of the stages of development and status of RP's For  interpreter. anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-03-26 08:58 +0000
  Re: A short history of the stages of development and status of RP's Forth interpreter. Fanzo <cristianof6@gmail.com> - 2012-03-25 15:32 +0200
  Re: A short history of the stages of development and status of RP's Forth interpreter. "Rod Pemberton" <do_not_have@noavailemail.cmm> - 2012-03-30 18:05 -0400
    Re: A short history of the stages of development and status of RP's Forth interpreter. "Rod Pemberton" <do_not_have@notemailnot.cmm> - 2012-04-02 05:08 -0400
      Re: A short history of the stages of development and status of RP's Forth interpreter. "Rod Pemberton" <do_not_have@notemailnot.cmm> - 2012-04-10 11:07 -0400

csiph-web