Richard Bucker

Alternative to Go Rust etc?

Posted at — Jul 16, 2022

Are there any reasonable alternatives to go and rust? I know of only one. Borland Turbo Pascal. Do not confuse Turbo Pascal with Delphi because they are not the same thing.

One list make these recommendations… ruby, php, javascript, python. All basically interpreted langs and while python is on the list perl is not. Nothing interesting here and implementing an interpreted lang in an interpreted lang does not make much sense. Since python has become popular as a system lang the versioning of lobs is starting to create chaos.

Haskell, Elixir, Java as alternatives. Haskells syntax can be difficult to reason and not many people actually use it. Elixir is ruby built on Erlang which like haskell is a functional lang but has backing from some popular projects but is still pretty crappy. Java is the new COBOL with too many APIs and terrible language features that are pet projects, do not add value, but as devs move to projects like go bring that junk with them. (If generics were that special then stay with java)

generics are templates at compile time

Lastly, NIM and C++. NIM is interesting because it’s a transpiler. NIM source is converted to C, C++ or javascript. On the other hand NIM looks a lot like python but it can be compiled.

Another list had many of he same and added Swift (see Apple; and in the Apple way of doing things the language is very long in the tooth and at the time was apple only). Kotlin ran on the JVM but when you’re ActiveState most new projects look like Java.

Clojure… another JVM and it’s lisp. F#… I don’t know anything except it’s Microsoft. OCaml… functional lang with or two customers. C#… is java from Microsoft when J# failed. Typescript… is from Microsoft when they tried to “fix” javascript like they did to Java. Scala… another JVM. Pharo…. loks like APL meets wolfram. V… Looks like rust and has generics. Elm… quirky syntax. D… interesting C syntax but just looking atht edatabase libs they are old. Julia… supports the various databases but I’m suspect when you include JDBC.

No decisions yet. But if C had some go in it… simply cannot argue with K&R.

The problem with most programming languages is that they are not turbo pascal. Turbo pascal could be reasoned about. It was self contained. All the APIs you needed where there. You could build DOS TSRs. Everything was “batteries included”.

I remember trying to teach myself C after working on TP for 6 months. It was very hard at first but I got there. And then I started working on OS/2 internals shortly after.

And then there is my secret weapon…. for another day.