gnu-arch-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Gnu-arch-users] arch roadmap 1 (and "what's tom up to")


From: Zenaan Harkness
Subject: Re: [Gnu-arch-users] arch roadmap 1 (and "what's tom up to")
Date: Sat, 03 Jul 2004 04:57:55 +1000

On Sat, 2004-07-03 at 02:46, Tom Lord wrote:
>    That'll change, I predict, within our professional lifetimes.
>    There are plenty of people who actively work on reducing the proven
>    theory into pragmatic practice.   But it'll be a few years more
>    before Scheme is as handy to reach for as C.

Sorry - I guess this is in essence the answer to my previous questions.
Still, I'm open to further enlightenment.

>    The resulting Scheme-generator can wind up being very fragile: a
>    seemingly innocent change can trash the output you'll get from a 
>    Scheme compiler, even if the VM machine code you were aiming for is
>    conceptually very simple.

Do you mean to imply this will never change?

> 3. At the same time, although Scheme has the famous denotational
>    semantics in the standard, it also has a famous but not-formalized
>    _operational_ semantics.   Putting it crudely, there is a well
>    known idealized "Scheme Machine" -- a virtual machine (essentially
>    Furth-like) on which Scheme is easy to implement.
> 
>    The optimizations of an optimizing Scheme compiler apply when
>    translating Scheme to a Furth-like VM but, much more importantly,
>    describing (in VM terms) the desired translation for a piece of
>    code is fairly easy.  
> 
>    In other words, sometimes it's much easier to write something that
>    generates code directly for a Scheme VM than to write something
>    that generates Scheme that produces that same VM code.
> 
> 
> 4. Therefore, in a sense, while Scheme is _abstractly_ an ideal 
>    intermediate language for many high-level languages, tiny and
>    large, a Furthish Scheme VM is _pragmatically_ an ideal 
>    intermediate langauge.
> 
>    Targeting the VM directly, rather than via Scheme, means that I
>    don't have "trick" a Scheme compiler into generating exactly the
>    VM code I want.

It does sound very interesting. I missed the start of the thread, so
I'll have to go back and find a link to furth now :)

> So it's not (from the arch perspective) that I want to compile Pika
> to Furth VM.   Rather, it's that:
> 
>   a) we need some high-level language tools in arch
> 
>   b) all such language can reasonably be written to translate 
>      into Furth
> 
>   c) Furth is practical in the same way that arch is practical:
>      relatively small and simple.

You really know how to get minds going - it's too exciting. Here's a
proposal to this list:

Once any of us start to get going learning Furth and/ or anything
related eg. targetting/ compiling to it, could we start a new list for
us to post all our ongoing experiences?

Then people like myself or others so inclined and/ or experienced, can
assemble and refine this over time into the "O'Rielly book" that addicts
keep clambering for (BTW, Docbook is _the_ markup to use).

> It's sort of like I can commit to a Furth VM without precluding 
> what the high-level language tools in arch look like beyond that.
> So, that's what I'm doing.

"sort of"? I guess, as in, Furth is still so young we don't actually
have other language compilers targetting it, but it should be relatively
straightforward to implement?

>     >    Then the question is whether it make sense to use scheme in config 
>     > files...
> 
> Often not, I suspect.

My lack of scheme and functional "grok" was the only thing that made
things difficult for me with Emacs. However, I used vim for 1.5 years,
Emacs for 1.75 years, and vim for the last 3 years, and now I want to go
back to Emacs and never really return to vim. Emacs has _actual_ client/
server implementation (vim makes some "server" claim which is a poor
excuse for such, simply a command-sender from the client to the actual
vim (ie. the vim displaying your files), which is ... pointless!) Sorry,
OT now...

> The next question is whether it makes sense to
> use a Schemish-VM to interpret any tiny languages that do show up 
> in arch.   I think: "yes".

:) ... as in, how many (mini or otherwise) languages do you envision
'showing up'? :) :)

regards
zen




reply via email to

[Prev in Thread] Current Thread [Next in Thread]