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

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




Rob Myers wrote in message ...
>> 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?

Any of the 'define protocol' stuff you might have seen is
just simple macrology I wrote to collate things that I think
belong in a first-class interface...


But I didn't mean Dylan interfaces should be like Java.
I meant that Dylan needs an object -- let's just call it an
"interface" -- that collects sets of generic functions into
this interface.  You can then say a class implements [some
part of] an interface, and some compile-time (or run-time)
error gets signalled when you try to make an objects whose
interfaces are not fully implemented.

In a language with multi-method dispatch, this has some
complications...





Follow-Ups: References: