Clay language

Andrei Alexandrescu SeeWebsiteForEmail at erdani.org
Wed Dec 29 12:38:27 PST 2010


On 12/29/10 2:10 PM, Steven Schveighoffer wrote:
> On Wed, 29 Dec 2010 14:42:53 -0500, Andrei Alexandrescu
> <SeeWebsiteForEmail at erdani.org> wrote:
>
>> On 12/27/10 6:55 PM, Andrei Alexandrescu wrote:
>>> On 12/27/10 12:35 PM, bearophile wrote:
>>>> Through Reddit I have found a link to some information about the Clay
>>>> language, it wants to be (or it will be) a C++-class language, but
>>>> it's not tied to C syntax. It shares several semantic similarities
>>>> with D too. It looks like a cute language:
>>>> https://github.com/jckarter/clay/wiki/
>>> [snip]
>>>
>>> FWIW I just posted a response to a question asking for a comparison
>>> between Clay and D2.
>>>
>>> http://www.reddit.com/r/programming/comments/es2jx/clay_programming_language_wiki/
>>>
>>
>> That thread is shaping up more and more interesting because it's
>> turning into a discussion of generic programming at large.
>
> I wanted to address your post in the reddit discussion regarding the
> issue of operator overloads not being virtual:
>
> "This non-issue has been discussed in the D newsgroup. You can implement
> virtuals on top of non-virtuals efficiently, but not vice versa."
>
> I've found some very real problems with that, when implementing operator
> overloads in dcollections. It's forced me to use the (yet to be
> deprecated) opXXX forms. Specifically, you cannot use covariance with
> templated functions without repeating the entire implementation in the
> derived class.

Glad you're bringing that up. Could you please post an example that 
summarizes the issue?

> Also, let's not forget, templates can't be used in
> interfaces, which means no operator overloading in interfaces.

Interfaces allow final methods which should help.

> Related bug:
>
> http://d.puremagic.com/issues/show_bug.cgi?id=4174

That should be what the doctor prescribed. I updated the report and 
assigned it to Walter.


Andrei


More information about the Digitalmars-d mailing list