D/Objective-C Preliminary Design

lurk lurk at lurk.rk
Wed Nov 3 11:53:08 PDT 2010


Nick Sabalausky Wrote:

> "%u" <user at web.news> wrote in message news:iap1l4$17hk$1 at digitalmars.com...
> >I found a slideshow called 'The Expressiveness of Go' recently. The 
> >conclusions are:
> >
> > * Go is not a small language but it is an expressive and comprehensible 
> > one.
> >
> > * Expressiveness comes from orthogonal composition of constructs.
> >
> > * Comprehensibility comes from simple constructs that interact in easily 
> > understood ways.
> >
> > * Build a language from simple orthogonal constructs and you have a 
> > language that will be easy and productive to use.
> >
> > * The surprises you discover will be pleasant ones.
> >
> 
> I know how much the Unix creators (ie, Go creators) *love* taking 
> orthogonality to extremes. I find that leads to puritanical languages that 
> actively avoid pragmatism (ie, some of the worst kinds of languages). 
> Orthogonality is good for *machines*,

What does that mean? Makes the microchips smile in lecherous ways? Seriously kid, have you ever heard of pure von Neumann or RAM architectures. Those are horribly impractical because as we know, some hardware components are suboptimal (ALUs faster than memory modules). Orthogonality is good for humans. Less rules to remember. The search space is smaller. The mental abilities can only manage a finite amount of entities concurrently. You either make it all simpler in the first place or shove all that complexity in your ass with abstractions.

> but not quite as much for humans (in 
> moderation, yes, in large doses, no).

Seriously? How do I know?

> Even programmers aren't as 
> orthogonally-minded as we often think we are.

Maybe you aren't! After all, you're using D 2.0 and all! Selection bias, you know.

> It's a bad idea for them, and 
> it's just gonna lead to another Java/Smalltalk/Haskel/etc

Oh dear, orthogonality would lead to yet another most popular language in the world. First there was Java (damn, terribly popular) and now Python (even more orthogonal and quicky getting past Java in popularity -- for example Python has more orthogonal tuples than D or Java, it's getting a lot of attention, and even small kids are using it! oh dear oh dear! So much non-pragmatism! And they're forcing it down kids' throats! It's a rape!)

>, and we've already 
> got a million of those, we certainly don't need yet another.

You've got the most promising unorthogonal language in front of you. I think you've succeeded nicely. No other language has as many keywords, as many special cases and as many compiler bugs. Only the ones with most faith will worship it!

> I find it 
> really odd that no matter how many times people keep trying that 
> purity-not-pragmatic approach to language design and end up with junk, 
> others still keep trying to make "better" languages by using the same damn 
> ideology that led to the problems in the first place.

Would you build me a fucking pure pragmatic language. I need 110% pure pragmatism now. Even the language's name should reflect this fact - let's call it The Pure Pragma Language 2.0. Or between me and U, we can secretly call it the 'Hype oriented number 1 marketing bullshit language (fixing bugs was never this easy: never write new code, just believe and shout the truth, the louder the better)'. I'm so gonna rule the world with my pragmatic pragmatism. I want zero non-pragmatic features, only pure practical real world pragmatic serious power! Now what are these features? You don't know - only your god knows!

Conclusion: it's so much more pragmatic to leave a half-baked implementation of (value) tuples in the compiler and confuse users for the eternity. It's so much more practical to add tuples into the library and introduce some braindead stupid new unorthogonal syntax for these to make them as repelling as possible. After all, all other modern languages are making them easier to use and use the same ugly (vomit vomit) orthogonal syntax. We must fight back!


More information about the Digitalmars-d mailing list