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

Re: C# is not Dylan (was: Re: C# : The new language from M$)



Compliments only to features which deserve them. Here I found a couple
of misinterpretations, so I list some "problems" which might be anchors
for people from outside:

Simon Brooke wrote:
>Well, then, look again. LISP syntax results from the fact that LISP as
>printed is a very nearly direct representation of the structures that
>are created in the machine as it is read. 

are you mixing assembler with lisp here? 
a lisp (READ) is a much more complicated then a C read().
a lisp (PRINT) is much more complicated then a C write().
the point is the difference, not the sameness.
not having pointers is a great burden to represent data, and internally
you have only pointers which is a great burden to deal with also.

>The representation of LISP structures which you conventionally edit in
>a file has a uniquely direct and simple mapping onto the
>representation which is held in core - a representation much more
>direct, much more consistent and much more perspicuous than in any
>other high-level language in common use. 

doubt the first. exactly the opposite, thanksfully so.
C or pascal pointer orgies would resemble high-level internal
representation of lists in contrast to the list abstraction.
compare a => b => c => nil to (a b c). 
simple? hmm. powerful, yes. consistent and perspicuous? 
well... that's getting esoteric. every language has its own consistent
and perspicuous representation.

structures are just "vector" areas in memory, that's why we have
high-level languages and don't have to deal with internal
representations. pointers and offsets. *(s+i) and such. 
named and typed slots, in lisp even typed data, not just slots.

and with tagged data it is completely the opposite of direct
representations. ever wrote lisp<-><other memory> converters?
only typed structures and typed vector would deserve that name.

>It's this cleanness which makes it so much easier to 'think yourself
>into the machine' in LISP than in other high-level languages.

I prefer the opposite thinking. into the problem not into the machine.
that's why I prefer lisp and not assembler or C.

The points with lisp are other's, that you can easily abstract lists,
nested lists and more. And having a language which is defined in exactly
the same simple way. blabla...
--
Reini Urban
http://xarch.tu-graz.ac.at/autocad/news/faq/autolisp.html



Follow-Ups: References: