Question: Why hasn’t anyone made a programming language that has super simple syntax unlike our current programming languages (like Python or Java) which have more complicated syntax?

Answer:

Someone has. His name is Alan Kay.

In the 1970s, the brilliant and visionary team of Alan Kay, Dan Ingalls, and Adele Goldberg at Xerox PARC developed a language called Smalltalk. It was so small and simple that the complete syntax could fit on a post card!

Image for post
Image for post

The language was designed to investigate teaching programming to children. Nevertheless, Smalltalk turned out to be incredibly powerful and capable.

In fact, in the 1990s, Smalltalk became the most popular OOP language after C++. According to a 1995 IDC report, OOP language market shares were:

  1. C++ — 71.3%
  2. Smalltalk — 15.1%
  3. Objective-C — 5.7%
  4. Object Pascal — 4.2%
  5. CLOS — 2.5%
  6. Eiffel — 1.1%
  7. all others — 0.2%

Here’s a page from Computerworld, November 6, 1995, showing Smalltalk and C++ duking it out:

Smalltalk was so good for business use that IBM chose it as the centrepiece of their VisualAge enterprise initiative to replace COBOL:

Image for post
Image for post

In the early 2000s, the U.S. joint military used Smalltalk to write a million-line battle simulation program called JWARS. It actually outperformed a similar simulation called STORM written in C++ by the U.S. Air Force. That by itself was an astonishing testament to the capabilities of the language.

Smalltalk was used by JP Morgan to write their massive financial risk management system called Kapital. In fact, Smalltalk is quite popular in the financial industry; other users include Desjardins and UBS.

Orient Overseas Container Lines used Smalltalk to develop their IRIS-2 shipping management system.

Other major users include Florida Power & Light, Texas Instruments, Telecom Argentina, BMW, and Siemens AG.

In my home country, Smalltalk is used by Communications Security Establishment (CSE), Canada’s national cryptologic agency.

Smalltalk is endlessly versatile:

And I’ve just barely scratched the surface!

All of this coming from a language that is so simple and easy to learn, I recommend it to children age 10 and up. It’s the best language to grow into, after the child is done with MIT’s Scratch.

And here’s the bonus: Smalltalk is provably the most productive programming language in the world.

Question: What is the worst bug in a programming language itself?

Answer:

In JavaScript, there is a bug that was created by design! JavaScript can actually fail silently due to syntactical error. The compiler won’t catch it. The runtime won’t catch it. Consequently, finding the source of the failure is a real bitch.

Why was this allowed? JavaScript is most forgiving of errors so that web browsers and web pages can carry on their merry ways without inconveniencing the user. How’s that working out? <snicker>

There are many other similar bugs, too: the numerous WATs and WTFs that have made JavaScript the butt of jokes for years. Again, these bugs are there by design. You can confirm this be perusing the ECMAScript language spec. Watch this:

Kyle Simpson says that most WTFs arise from lack of understanding of the language spec, of how things should work, of the reasoning behind the spec. He says there is probably some method to the madness but he can’t see it. And, still, he encourages people to use JavaScript.

WTF?!! Excuse me, but why should I want to use a language whose spec is so obtuse that I can’t easily understand the reasoning behind it, or how things are supposed to work? What kind of language requires so much special scrutiny, so much extra effort to understand?

He says JavaScript has greatness to it. I’m not so sure about that, but even if I accept it, there are other languages that can do what JavaScript does without all the ugly baggage. The ONLY reason to use JavaScript is because, for programming the web browser, you have no choice. You must use JavaScript, or at least a language that transpiles to JavaScript.

Removing choice is hardly a ringing endorsement for the JavaScript language.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store