Re: Various comments Jorgen Schaefer 24 Jun 2006 16:06 UTC

Robby Findler <xxxxxx@cs.uchicago.edu> writes:

> Seems like a pretty abstract argument

Yes, it is. Is abstractness a problem?

> esp. when this seems to be common practice and without it, one
> cannot implement classes or units as macros.

This is wrong.

In the context of class-based object systems, the SRFI currently
provides the possibility to provide a syntax to write FOO to
access a class variable named FOO, by transforming FOO into
something like (CLASS-VARIABLE-GET FOO). Without this specific
feature, you would have to write (FOO) instead of FOO. As I said,
this feature saves exactly two parens, but introduces the problem
that _any_ variable reference could cause the execution of an
arbitrary amount of code.

The other situation is SET! - this is not as problematic to me as
the variable reference is, because this is a very specific context
- where (SET! FOO X) could be transformed into
(CLASS-VARIABLE-SET! FOO X). Using SRFI-17, it is possible to
write (SET! (CLASS FOO) X) to get the same effect.

Hence, one can easily implement classes or units as macros without
these features.

Regards,
        -- Jorgen

--
((email . "xxxxxx@forcix.cx") (www . "http://www.forcix.cx/")
 (gpg   . "1024D/028AF63C")   (irc . "nick forcer on IRCnet"))