DeRailed DSL (was Re: compile-time regex redux)

Andrei Alexandrescu (See Website For Email) SeeWebsiteForEmail at erdani.org
Fri Feb 9 23:19:31 PST 2007


Kyle Furlong wrote:
> Andrei Alexandrescu (See Website For Email) wrote:
>> kris wrote:
>>> Andrei Alexandrescu (See Website For Email) wrote:
>>>>>> I think there is a lot of apprehension and misunderstanding 
>>>>>> surrounding what metacode is able and supposed to do or simplify. 
>>>>>> Please, let's focus on understanding _before_ forming an opinion.
>>>>>
>>>>>
>>>>> If that's the case, then perhaps it's due to a lack of solid & 
>>>>> practical examples for people to examine? There's been at least two 
>>>>> requests recently for an example of how this could help DeRailed in 
>>>>> a truly practical sense, yet both of those requests appear to have 
>>>>> been ignored thus far.
>>>>>
>>>>> I suspect that such practical examples would help everyone 
>>>>> understand since, as you suggest, there appears to be "differences" 
>>>>> in perspective? Since Walter brough RoR up, and you apparently 
>>>>> endorsed his point, perhaps one of you might enlighten us via those 
>>>>> relevant examples?
>>>>>
>>>>> There's a request in the original post on "The DeRailed Challenge" 
>>>>> for just such an example ... don't feel overtly obliged; but it 
>>>>> might do something to offset the misunderstanding you believe is 
>>>>> prevalent.
>>>>
>>>>
>>>> I saw the request. My problem is that I don't know much about 
>>>> DeRailed, and that I don't have time to invest in it. 
>>>
>>> You wrote (in the past):
>>> ====
>>> I think things would be better if we had better libraries and some 
>>> success stories.
>>> ====
>>>
>>> We have better libraries now. And we're /trying/ to build a 
>>> particular success story. Is that not enough reason to illustrate 
>>> some practical examples, busy though you are? I mean, /we're/ putting 
>>> in a lot of effort, regardless of how busy our personal lives may be. 
>>> All we're asking for are some practical and relevant examples as to 
>>> why advanced DSL support in D will assist us so much.
>>>
>>>
>>>> My current understanding is that DeRailed's approach is basically 
>>>> dynamic, a domain that metaprogramming can help somewhat, but not a 
>>>> lot. The simplest example is to define variant types (probably they 
>>>> are already there) using templates. Also possibly there are some 
>>>> code generation aspects (e.g. for various platforms), which I 
>>>> understand RoR does a lot, that could be solved using metacode.
>>>
>>> I read "Possibly there ... Could be solved ..."
>>>
>>> Forgive me, Andrei, but that really does not assist in comprehending 
>>> what it is that you say we fail to understand. Surely you would 
>>> agree? Variant types can easily be handled by templates today, but 
>>> without an example it's hard to tell if that's what you were 
>>> referring to.
>>>
>>> On Feb 7th, you wrote (in reference to the DSL discourse):
>>> =====
>>> Walter gave another good case study: Ruby on Rails. The success of Ruby
>>> on Rails has a lot to do with its ability to express abstractions that
>>> were a complete mess to deal with in concreteland.
>>> ====
>>>
>>> On Feb 7th, Walter wrote (emphasis added):
>>> =====
>>> Good question. The simple answer is look what Ruby on Rails did for 
>>> Ruby. Ruby's a good language, but the killer app for it was RoR. RoR 
>>> is what drove adoption of Ruby through the roof. /Enabling ways for 
>>> sophisticated DSLs to interoperate with D will enable such applications/
>>> =====
>>>
>>> You see that subtle but important reference to RoR and DSL in the 
>>> above? What we're asking for is that one of you explain just exactly 
>>> what is /meant/ by that. DeRailed faces many of the same issues RoR 
>>> did, so some relevant examples pertaining to the RoR claim may well 
>>> assist DeRailed.
>>>
>>> Do we have to get down on our knees and beg?
>>
>> Aw, give me a break.
>>
>> Andrei
> 
> <rant>
> 
> Have you even looked at Tango? Have you seen the amount of effort that 
> the team has put in? Do you understand what it means for the success of 
> D as a real world language?
> 
> Do you realize that over the past week, you've been repeatedly ignoring 
> and belittling one of the most code productive and prolific library 
> writers in the D community?
> 
> Do you understand that he has real life issues with the way D is 
> specified and implemented that affect the most coherent library effort 
> we have, of which he is (along with Sean Kelly) the primary code 
> contributor?
> 
> Do you comprehend that as you seem to have the ear of Walter in language 
> design decisions, kris necessarily must come to you to try and 
> understand said decisions?
> 
> For Bob's sake, have some respect for who this man is. Try and be open 
> minded about his concerns.
> 
> If you are interested in D being a language that can solve problems for 
> "practical" people, start listening to kris, and stop using D as your 
> personal vehicle for language research.
> 
> </rant>

Great. There is nothing personal ever, just in case that's not clear, 
nor I meant disrespect to anyone. As a rule, on the Usenet I reply "ad 
postum", not "ad hominem". If there were a newsreader feature to hide 
names, I'd think of using it, if it weren't for losing much of the sense 
of social dynamics.

For the record, I'm not doing language research, officially or not. So 
much about presuppositions. :o|

> All that aside, I do respect you for the contributions I know you have 
> made in C++ land and here in D land. I hope you continue to enjoy D and 
> contribute your considerable help in its design.
> 
> However, I do believe that you should take a step back and realize the 
> context in which you are discussing.

If one doesn't like a post, is one allowed to not reply to it?


Andrei



More information about the Digitalmars-d mailing list