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

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



> From: "Scott McKay" <swm@mediaone.net>
> Subject: Re: C# is not Dylan (was: Re: C# : The new language from M$)
> ...

Having worked with the source to d2c, the Dylan core libraries and the
public DUIM code, as well as writing an OS interface and an application
shell in Dylan, I am convinced of Dylan's elegance and power. :-)

> Now some dislikes:
> 
> - I don't like that Dylan doesn't have first-class interfaces like Java.

Java's interfaces are broken, IMHO! Anything that allows naming clashes
whilst disallowing code reuse is a real worst of both worlds solution.
Protocols are used in Dylan instead, aren't they?

> - I wish Dylan hadn't thrown out so much of the CLOS MOP.  I would
> like some of the introspection reinstated (slot descriptors, e.g.),
> but could live with only compile-time MOP for doing extensions.

I like the way Java lets you work with objects and methods by name, and
resolve things at runtime. I used this throughout 3 years of real-world
Java programming. I'm assuming MOP transcends this, and I'd like to see it
in Dylan, although Dylan's efficiency shouldn't be compromised.

> Obviously, I like that Dylan is truly a dialect of Lisp (closest to Eulisp,
> I think) with all that Lisp gives you: dynamic types, keyword args,
> higher order functions, etc.

I'm learning Common Lisp at the moment, after working with Dylan for 2 years
(I don't intend to switch, but I feel Lisp is very important to know). In
the same way that all modern Operating Systems want to be UNIX, all modern
programming languages want to be Lisp. Dylan can be regarded as the MacOS X
or Gnome of Lisp.  This is a good thing.

- Rob.



Follow-Ups: References: