lisp, prolog, smalltalk, forth, fortran, even ada.
The challenge for programming languages today is not so much the syntax/language constructs but the ecosystem, libraries, community & support.
See php, it has all that and is very successful.
p/s. I write PHP code and believe pascal is a better language.
[0] https://www.embarcadero.com/app-development-tools-store/delp...
So programming tools come from some source that has an agenda. Oracle. Microsoft. Google. Even Mozilla.
It's just that $1.5k is hard to justify for a single language environment/compiler. VS2015 Pro is $499, while a yearly Pro/MSDN subscriptions is $1,199/year.
For some languages, lower prices won't significantly increases sales volume. And 1.5K is not a barrier if it's your bread and butter language. It's in the same ballpark as a developer machine.
Charging the developer, before they even have a chance to try the language out, when there are other free options available, means they'll never even give the language a chance.
Making Delphi or Common Lisp the next hotness is pretty much a lost cause, and has been for a long time. The people using those things tend to be heavily invested in them, and still making money. If you're not making enough money to spend US1.5K on your primary tool then you're not really making money.
Most of the people who balk at $1,500 will probably still pick the free option rather than pay $19.99.
Even though there are good free options (in the case of common lisp there are multiple good free options), there's still no gaining of traction.
So these companies charging money have defined their target market as people already using the language professionally, and they've found a price point that lets them stay in business and provide quality tooling (specialized IDEs, debuggers, GUI frameworks, et al). If they lowered their prices to $19.99, rather than attract loads of new mindshare they'd simply go out of business.
It's actually gotten so bad that my company is opting to migrate to C# for future development, in spite of our long investment in Delphi.
I did like Kylix. I messed about with it and I remember going to watch the UK demo of it by Charlie Calvert in the Polish Centre in London circa 2001/2002. I had a licensed version of 1.0 (and used the Betas as my company at the time was sub contracted by Borland UK, so we got perks like being NDA'd.) That they got the IDE to work was cool. But CLX really messed up the direction.
By the time they did the .Net version, the writing was on the wall.... that bug in the compiler that tied the compiler down in a way that made the 2.0 framework unhappy to run 1.1 binaries, that really told me all I wanted to know. I transitioned to .Net and C#.
- Both: No undo in the UI builder
- Delphi: There are about 3 different ways of adding an existing file to a project. They seem to differ in how they track dependencies.
- Both: Project files periodically get corrupted.
- Both: Renaming a control on a form by only changing case causes some references to the control not to be updated.
- Both: No customizable keybindings
- C++Builder (might be true with Delphi too): The debugger periodically crashes.
- C++Builder: Sometimes the project fails to build and gives a bunch of errors in system headers. The solution? Close the IDE and open it again.
Those are just the big ones. There are a million tiny annoyances that add up to be very frustrating.
I actually quite liked it. I thought Pascal provided the right level of hand-holding necessary for a newbie programmer. I was probably able to pick up C more quickly the next year because of the solid foundation from Pascal.
Writing "if" statements without short-circuit operators is both tedious and error-prone.
So, yeah, I like the C syntax. It's not a question of "ugly", though. Pascal is tedious. It's more work to write. And, of the kinds of tedious I've complained about here, it's not tedious in a way that gets you more correct code. It's just tedious in a way that takes effort and saps your energy for stuff that doesn't matter.
Syntax is definitely a personal preference. I know multiple PLs from different families, and even then, I still prefer a certain syntax.
Well, except that the cascade of ends is a frequent complaint about Ruby, rather than something "never cited".
By default both Delphi and Free Pascal perform short-circuit evaluation of boolean operators. The Delphi and Free Pascal documentation has more:
http://docwiki.embarcadero.com/RADStudio/Berlin/en/Boolean_s...
http://docwiki.embarcadero.com/RADStudio/Berlin/en/Expressio...
http://www.freepascal.org/docs-html/current/ref/refsu48.html...
grumble grumble kids get off my lawn...
Basic "original" Pascal is very much a teaching language first, and a "real" language second. But the small tweaks (or big, depending on your point of view) to Object Pascal/the default dialect for Free Pascal makes a world of difference IMNHO. So, I think someone can both agree that early Pascal (or plain Pascal) is uncomfortably verbose and rigid, while at the same time think that modern Free/Object Pascal is a great language to work with.
I wonder if there's anyone working on a Pascal back-end for Nim? In some ways is seems like a "waste" that the default target is C.
This probably is part of the reasons: People that optimize for write instead of reading.
However, after python I consider "begin/end" marks redundant with indentation...
But then some people hate clear code, and prefer mess with the layout!
It's really too bad about Modula-2. It was a very nice language, comparatively speaking, and it should have been what Pascal eventually became through its dialects (notably Apple's and Borland's).
Modula-2, though, has a nice trait in that it has exactly the feature set necessary for "better C", and nothing more.