[Top][All Lists]

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

Re: eval

From: Neil Jerram
Subject: Re: eval
Date: 06 Feb 2001 01:29:38 +0000

>>>>> "Dirk" == Dirk Herrmann <address@hidden> writes:

    Dirk> Very interesting.

Well it gets round the current problem anyway.  I guess it works
because the execution of the read hash procedure is an application and
not an evaluation.  But also, "#m" is infinitely easier to type than
"(define-module", and it's cleaner (IMO) than `define-module' because
it doesn't confuse defining a new module with switching to an existing
one (cf. Marius' `in-module' idea).

    Dirk> It comes close to the idea of the ,foo syntax that is used
    Dirk> (I think) by SCSH.  However, the advantage of the ,foo
    Dirk> syntax is, that a comma as the very first character of a
    Dirk> top-level expression can immediately be detected as an
    Dirk> indicator of some special command, while a hash character
    Dirk> may also indicate the start of any other hash constant, for
    Dirk> example the boolean values or character constants.

    Dirk> We could provide the ,foo syntax for guile, and provide all
    Dirk> those ",foo" commands in a similar way as with
    Dirk> read-hash-extend, for example as a read-comma-extend
    Dirk> command.  Your code would then simply be changed to:
    [ ... ]
    Dirk> to provide a command ",module <some module>".  It looks as
    Dirk> this would be easy to implement, although I admit that I
    Dirk> have never taken a close look into the reader...

Yes, but I'm reluctant to preempt the outcome of our module design
process (which included discussion of this kind of syntax).  And it
has to be balanced against the use of `,' as an identifier character,
etc. etc.  And... "#m" is still a lot shorter than ",module" :-)

Best regards,

reply via email to

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