[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
At Thu, 12 Feb 2004 16:23:17 -0500, Paul Schlie wrote:
> As Ken properly pointed out, and which should be abundantly clear to most
> by now; attempting to enable scheme to more conveniently process text
> encoded in an arbitrary character set, is distinctly different than
> attempting to enable scheme to utilize arbitrary characters within its
> program identifier/comment definitions.
> While the first is arguably noble, the second would be clearly a mistake.
I think you're missing one of the real virtues of Scheme (LISP,
originally). As someone has already pointed out, Scheme's data is a
very good representation for Scheme's code.
Indeed, Schemers can exploit this to tremendous advantage. For example,
imagine you wanted to write a test suite for a macro you had written
and in particular wanted to test that syntax error are raised properly
for bad inputs. In Scheme, this is merely a additional 2 lines in your
testing infrastructure (one to call `expand' and one to catch the
exception). You do not need to step out of the language or start
scripting another instance of your compiler.
Going even further, consider DrScheme. DrScheme only has one virtual
machine that runs DrScheme itself's code and simultaneously runs the
user's program. Scheme's code as data is one piece of the puzzle that
makes this work so well.