Hello Joel,
You caught my attention when you mentioned OCaml, Haskell, and Lisp...
May I ask why you are attempting the punishing feat of producing a
language written in Forth? You have already used the most appropriate
languages for this purpose. Is it the notion that Forth can produce
standalone DLL's more easily than these other languages?
FYI, I come from waaaay back with Forth, having created literally
hundreds of systems from the ground up, starting at the Wyoming
Infrared Telescope Observatory, then moving on to do the entire mount
control system for the Multiple Mirror Telescope Observatory using my
MMTO-SuperFORTH, then on to IBM where I taught engineers that they
could run their own equipment without relying on IT Programmer staff,
and finally developing commercial HyperFORTH systems.
But that was a long time ago, and since then, I have done a lot with
OCaml (my NML modeling language) and much much more with Lisp. We are
using Lisp in our embedded systems, having realized long ago that Lisp
is what Forth wants to be when it grows up.
I still have some nostalgia for good old Forth, but every time I think
of doing something with it, I give up in exasperation, realizing that
it would be sooo much easier and faster to use Lisp. Just yesterday I
had a lightning bolt strike me as I realized that the Forth compiler
words using DOES> and ;: are really just crude attempts at creating a
single-parameter compiled functional closure.
For the sake of the non-literate engineers at Raytheon I created
Godzilla! which is RPL a.k.a. HP-48 Forth/Lisp, using Lisp, not Forth.
So you really have me curious as to why you would attempt such a high-
level abstract chore as a language design in such an incredibly low-
level language as Forth. This is not meant as a criticism of any sort.
I am really curious to hear your thinking on this subject. We face
daily decisions as to whether to implement some embedded system aspect
using either Forth or Lisp.
Dr. David McClain
Chief Technical Officer
Refined Audiometrics Laboratory
4391 N. Camino Ferreo
Tucson, AZ 85750
email: dbm_at_refined-audiometrics.com
phone: 1.520.390.3995
web: http://www.refined-audiometrics.com
On Jan 29, 2010, at 11:40 AM, Joel Reymont wrote:
> That's the approach I plan to take, except I'd like to use Gerry
> Jackson's lexgen and grace lexer and parser generators respectively. I
> have written this compiler in OCaml, Haskell and Lisp before and I'm
> new to Forth. I ported SwiftForth to the Mac (Leon, can I boast?) but
> that doesn't count.
>
> I'm struggling with things like 1) how to represent a mapping of
> string keywords to numbers and 2) build an abstract syntax tree (AST)
> in Forth. I used a hash table for #1 in my other compilers and I
> figure I can allocate a bunch of structures on the heap for #2.
> Suggestions are welcome!
>
> Thanks, Joel
>
> On Fri, Jan 29, 2010 at 6:30 PM, Gene LeFave <gene_at_tekdata.com> wrote:
>> An approach I've used is
>>
>> 1, =A0 Easylanguage* converted into forth using my version of the
>> Brad
>> Rodreguez BNF interpretter.
>> 2.. Forth written iinto a separate file.
>> 3. When needed =A0Forth interpretter activiated as cgi, and
>> interprets fi=
> le.
>> 4. Output sent back is html.
>
> --=20
> http://es.linkedin.com/in/joelreymont
> ----------------------------------------------------------------------
> sftalk_at_forth.com The SwiftForth programming discussion email list
> To unsubscribe, send subject "unsubscribe" to sftalk-request_at_forth.com
> For list command help, send subject "help" to sftalk-request_at_forth.com
> Message archives are located at http://www.forth.com/archive/sftalk
> ----------------------------------------------------------------------
> This list is a forum for SwiftForth users. For product support and
> bug reports, please send email to support_at_forth.com
> ----------------------------------------------------------------------
>
>
Dr. David McClain
dbm_at_refined-audiometrics.com
----------------------------------------------------------------------
sftalk_at_forth.com The SwiftForth programming discussion email list
To unsubscribe, send subject "unsubscribe" to sftalk-request_at_forth.com
For list command help, send subject "help" to sftalk-request_at_forth.com
Message archives are located at http://www.forth.com/archive/sftalk
----------------------------------------------------------------------
This list is a forum for SwiftForth users. For product support and
bug reports, please send email to support_at_forth.com
----------------------------------------------------------------------
Received on Fri Jan 29 2010 - 10:56:36 PST
Subscribe to our e-mail list service. It's free for all SwiftForth and SwiftX users!
This archive was generated 09-Feb-2012. Archive updated nightly.