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

Dave Dave_member at pathlink.com
Mon Feb 12 06:49:36 PST 2007


kris wrote:
> Walter Bright wrote:
>> kris wrote:
>>
>>> Walter Bright wrote:
>>>
>>>> The flashy stuff, though, is the stuff that piques peoples' 
>>>> interests enough to give D a try.
>>>
>>>
>>> Bling is very much in the eye of the beholder, and often has the 
>>> inverse effect?
>>
>>
>> If it is perceived as being *just* bling, it will have the reverse 
>> effect. If you can show, however, that it solves otherwise intractable 
>> or time-wasting problems, you get interest.
> 
> Absolutely.
> 
> If you can successfully do that for, say, dev managers, then so much the 
> better. On the other hand, giving such ppl a reason to fear adoption 
> would be a terrible mistake. As you probably know, commercial shops tend 
> to be more than a bit conservative when it comes to code.
> 
> Even companies perceived as progressive care deeply about ensuring the 
> code is 'pedestrian' in nature. Google, for example, outlawed C++ 
> templates. They did this because their experience showed such code was 
> unmaintainable, more often than not. In the hands of the masses, such 
> tools are often used for creating a language within a language, and 
> everyone's version has a personal stamp: MyDSL
> 
> It's the old story about great power requiring great responsibility. 
> Should the language be penalized for that? No. Might it be viewed that 
> way? Sure. Just being "right" is never enough in such an environment.
> 
> In no way am I saying "oh, all that meta-stuff is poppycock", as someone 
> had suggested to me. I personally /like/ a touch of DSL here and there 
> (have been shot-down in the past for exactly that). Instead, my personal 
> concerns (when it comes to D) are based purely around three things:
> 
> 1) is it of notable or daily value to 50%+ or more of users?
> 2) does it further delay fixing existing features that match #1?
> 3) does it have /real/ potential to hinder adoption due to ignorance, 
> religion, sexual preferences, or the weather?
> 
> Those are all arguable, of course. Programmers are notoriously fickle 
> when it comes to #3. But my concern over that one is the commercial dev 
> shops; the likes of Google, Oracle, SAP, Yahoo, along with every single 
> company that currently uses Java instead of C++
> 
> Thus; shouting from the rooftops that D is all about meta-code, and DSL 
> up-the-wazzoo, may well provoke a backlash from the very people who 
> should be embracing the language. I'd imagine Andrei would vehemently 
> disagree, but so what? The people who will ultimately be responsible for 
> "allowing" D through the door don't care about fads or technical 
> superiority; they care about costs. And the overwhelming cost in 
> software development today, for the type of companies noted above, is 
> maintenance. For them, software dev is already complex enough. In all 
> the places I've worked or consulted, in mutiple countries, and since the 
> time before Zortech C, pedestrian-code := maintainable-code := less 
> overall cost.
> 
> All IMO
> 
> - Kris

All great points. Build it (a solid foundation) and they will come. Recent activity on 
const/inout/scope come to mind for me.

That said, the metaprogramming stuff is cool, and has its place, but I don't think it should be 
given precedence over the basics.



More information about the Digitalmars-d mailing list