However, Perl is not really capable of DSLs...
Back to Perl, by Cosine Jeremiah
I seem to recall writing several parsers in Perl. Perhaps the author was thinking of PERL, a so-called language with a confusingly similar name which stubbornly resists the efforts of even the best programmers to do anything useful.
I can't understand that phrase one bit, unless I change the meaning of at least one of the nouns substantially.
I think he is complaining about the fact that he needs to write sub {
instead of do
, somewhere in there. Other than that, I cannot parse his post into anything intelligible.
I've spent several hours using language A, using my several years experience using language B I will explain how language A sucks. Doesn't this seem like a fallacy? It certainly flipped my bozo bit.In my day job I spent a few hours today working in Perl. Having been using Ruby for over six years now I am quite familiar with how lacking Perl is in comparison.
Re:I think the problem was at the beginning
chromatic on 2007-07-21T18:44:34
When I am emperor, I will have everyone who says "DSL" in apparent seriousness when describing an API beaten, except Martin Fowler.
Re:I think the problem was at the beginning
djberg96 on 2007-07-22T01:11:36
So, we need a different term then. I've heard "external" vs "internal" but I'm not too keen on it. Generally speaking people won't know the difference.What about "Idiomatic Domain Language"? I dunno, I'm just flailing here, but if you don't come up with a different term then people will keep using "DSL" inappropriately until you do. And no, they won't just be satisfied with "API", like it or not.
Re:I think the problem was at the beginning
educated_foo on 2007-07-22T02:55:15
I'm fond of "API that doesn't suck" myself. I doubt DSL mania would have happened if Sun hadn't been torturing programmers for the last 10-15 years.Re:I think the problem was at the beginning
chromatic on 2007-07-22T06:58:25
And no, they won't just be satisfied with "API", like it or not.Matz forbid they stop their superlative language design sessions to do what the rest of the programming world does once in a while: call and sometimes write functions.
I guess slapping a colon on the front of your identifiers gives you magic powers or something, like wearing your underwear outside of your pants.
Re:I think the problem was at the beginning
educated_foo on 2007-07-23T07:06:40
ObKickAssSemiRelevantSong: Lazyboy, "Underwear goes inside the pants."Face it: without a colon, you'd also be much less (excretionarily) concise and pleasant to be around
;).
This sentence you wrote in one of your blogs sums it up for me: "If I'm confused about what a DSL is, you must be too." You can't even imagine that other people can understand something if you can't. You assume that if people aren't using words in a way you understand, then they must be wrong, or stupid. However if, as you said, the people at that Ruby conference were using "DSL" every ten minutes, then apparently they understand what they're talking about among themselves. So maybe it's actually you who doesn't understand what they mean; and, rather than admit that, you'd prefer to rag on them about being ignorant of some fact that you know.
I thought Piers Cawley's comment was right on: "Maybe we're just old farts complaining about these young whippersnappers raving about stuff we learned about a long time ago. Maybe we should try and cut 'em some slack." Nobody is born with knowledge of everything, nobody ever acquires knowledge of everything. We live our very short lives, take a certain path. What does it hurt if, as you wrote, "There are plenty of noisy people who seem to have just discovered things that the wider world of programming (or at least programming in dynamic languages) have been developing for ten to twenty years" ?
Isn't that feeling of discovery one of the things that makes life worth living? But instead of encouraging it, we end up with old fogies commenting on how kids aren't as smart as they used to be. Bullshit, it's just that the old fogies are older and more experienced now than they were when they were younger, and they can't clearly remember how cloudy the "fog of life" was.
Re:language nazis, incorporated
Aristotle on 2007-07-23T17:24:22
So you think the CADT Model is a good thing? “We’re not so much building on the programming state of the art as continually have each generation of programmers rediscover it.”
Re:language nazis, incorporated
djberg96 on 2007-07-23T22:33:03
No, I think understanding that we're talking about internal DSL's, not external DSL's, is a Good Thing.But, I suspect you already know the difference.
:/ Re:language nazis, incorporated
chromatic on 2007-07-24T01:59:00
You're much better at Ruby than I am, and you have much better connections to and insight into the Ruby community than I do. Can you explain the quote from my original post, or was my initial impression correct that it's (at best) incorrect?
Re:language nazis, incorporated
djberg96 on 2007-07-24T02:16:48
I tuit "Perl is not really capable of DSLs" to mean either, "Perl is not very well suited for internal DSL's" and/or "Ruby looks much nicer for internal DSL's".Whether or not you agree with the translation(s) is another matter.
:) Re:language nazis, incorporated
Aristotle on 2007-07-24T04:08:54
I tuit it to mean “I have used Perl for not long enough to figure out how my Ruby knowledge might transfer.”
Re:language nazis, incorporated
chromatic on 2007-07-24T04:23:04
I can understand different preferences for different languages, but it's awfully difficult not to read severe and ignorant jassackery into the verb phrase "is not capable of".
Then again, I don't think I can believe in internal DSLs until I see one with syntax or semantics different from the host language, so I already lacked the inclination for a charitable interpretation.
Re:language nazis, incorporated
chromatic on 2007-07-24T01:57:04
You can't even imagine that other people can understand something if you can't. You assume that if people aren't using words in a way you understand, then they must be wrong, or stupid.I would appreciate very much if you refrained from telling me or anyone else what I think. Thank you.