On Thursday, 14 July 2016 at 14:46:50 UTC, Ola Fosheim Grøstad wrote:
On Thursday, 14 July 2016 at 14:11:25 UTC, Chris wrote:
On Thursday, 14 July 2016 at 13:39:48 UTC, Ola Fosheim Grøstad wrote:
On Thursday, 14 July 2016 at 13:26:06 UTC, Chris wrote:
Such a language will never see the light of day.

Many such languages exist.

Didn't I say that I don't have time for a long rant? :-)

Simula is a pretty good example. In it's first incarnation it was a simulation language, then it was reformulated as a general purpose language.

Dart is a pretty good example. The extensions have been primarily syntactical AFAIK.

TypeScript is a pretty good example of a language that is both stable and wildly expansive, as the core language is JavaScript and TypeScript is a layer above the core language. It is getting pretty good actually.

Go is a reasonable example (despite the error handling blunder). It has not changed much in terms of the core language and IIRC it is based on earlier languages by the same authors.

The JVM is also a decent example of a core language that is fairly stable. It as based on the StrongTalk VM.

I could go on for a while.

I'm not convinced.

Dart & TypeScript are scripting languages for the Internet and cannot be compared to D and C++.

Go is an Internet/server language, very bare bones and designed for Google's code mines.

All three languages above where designed by big companies with certain commercial goals in mind.

I don't know much about Simula (your patriotic choice :), but it's pure OOP and as such cannot be compared to D either (which is multi-paradigm).

... and they're all usable as in I can write software with them right now.

Plenty of languages are usable, both Pony and Pure are usable, but they are not widely used. So it currently does not make much sense for me to use them as they most likely would cause more trouble than they would save me.

But you don't use them for a reason.

Examples?

Slices etc.

Yes, exactly, they were never meant to be big languages, just scripting tools. Same happened to Python in a way. It should never have left the lab and infected millions of people.

Python was informed by an educational language, but was designed to appeal to professionals, so I don't think it applies to Python as much.

But only in a "lab environment".

There's never _the_ perfect time to deploy a language, just like there's never _the_ perfect time to buy a computer, the moment you leave the shop it's out of date.

Huh, I don't understand the comparison?

I.e you have to deploy it at some point, it will never be perfect before you deploy it - just as you have to buy a computer at some point. If you keep waiting for the next generation, you'll never buy a computer (has happened!).

Anyhow, I don't upgrade until I hit some unacceptable performance issues. I have a 4 year old computer and have no performance issues with it yet. :-P

There is very little advantage for me to have a faster computer than where the software is deployed.


You're dreaming of a language that only exists in cloud cuckoo land and it will get you nowhere.

Nope. Such languages exits, but they are not _system level_ programming languages.

So they don't exist, because the perfect language is also a system level language.

But of course, it's much easier to criticize the players on the pitch from your comfy armchair than to actually go onto the pitch and play yourself.

What makes you think that I am not playing? What you actually are saying is that one should not make judgments about programming languages or try to influence their direction.

I don't know whether I should be sad or angry to see someone with your knowledge and experience wasting his time endlessly ranting about D (while praising every other language under the sun). You could make valuable hands-on contributions to D, but choose to be the Statler & Waldorf of the community - only without the fun factor. It's tiresome and doesn't get us anywhere.

No language ever gets it 100% right, because there are conflicting demands, and it's trivial to point out flaws that are bound to arise out of conflicting demands.

What conflicting demands do you suggest applies to D?

I don't see them, so I hope you can inform me.

E.g. low-level control vs. safety (cf. the discussion about casting away immutable)

Reply via email to