more on HLLs
Jecel Mattos de Assumpcao Jr.
jecel@lsi.usp.br
Wed, 8 Mar 1995 00:20:56 -0300
Strange... I still haven't received back the last few messages
I sent. Anyway, I used Mosaic to take a peek at the latest HLL
pages. I am really impressed.
Here is a reference that you might find interesting ( I haven't
read it yet, so I can't be sure :-) :
Irons, E. T.
"Experience with an extensible language"
Communications of the ACM, vol. 13 no. 1
pp. 31-40, January 1970
And this is about a very *cool* language that I haven't heard
of since ( I read it, but never fully understood it ) :
Barber, C. Bradford
"Echonet - Part 1: A Flexible Programming System"
Byte Magazine, vol. 8 no. 9
pp. 356-373, September 1983
Barber, C. Bradford
"Echonet - Part 2: The Compiler"
Byte Magazine, vol. 8 no. 10
pp. 384-395, October 1983
Check it out - you will be amazed! Of course, I would not recomend
something like that for Tunes, but it can give you neat ideas. I
think I will ask in comp.lang.misc if anyone knows what became of
it.
The first reference inspired Alan Kay in the design of Smalltalk-72.
This language allowed you to define your own syntax! Unfortunately,
this created some problems of context dependent code and slow
interepreters. In Smalltalk-76 this idea was abandoned with the most
popular "home grown" syntaxes becoming built in.
I think it is possible to use the flexible syntax idea of Smalltalk-72
without its problems using a two step process. In the first step, the
text is parsed into LLL via a "symbolic interpretation" using special
methods in the objects themselves ( not quite a meta-level ). So objects
would be able to extend the syntax ( once past a mind twisting
bootstrap, of course ) used in their, and other object's, methods. I
did something like this in my language Troy but mixed this up with
LLL execution. That had the Smalltalk-72 problem of making source
impossible to compile.
This idea would be the perfect way to win obfuscated code contests.
At least it would make macros obsolete :-)
-- Jecel Mattos de Assumpcao Jr
Laboratorio de Sistemas Integraveis - University of Sao Paulo - Brazil
jecel@lsi.usp.br http://www.lsi.usp.br/~jecel/jecel.html