This post started as a rust v go
rant but then it became something else. The whole
point of high level languages is to make reasoning and implementation easier to
accomplish; by extension GSD.
Yesterday I was considering starting a new project and beginning with rust. I made a mental list of some simple goals and then started some lite reading. I was left in a vague state but with some ideas.
split
and some other commands are different between OSC
flags? C-Flags or Rust?go
will compile on OpenBSD without changes. Rust will not.I’ve written and maintained millions of LOC in assembler. C
makes assembler/assembly
easier to reason. The early C
implementations were just transpilers making it
simple to reason but then came optimization and that made the resulting assembly code harder to reason.
The original C++
was easy to reason (see Borland C++ for DOS) Later incarnations not so much.
Having spent a great deal of time disassembling byte-code I just do not want to do that anymore.
… in conclusion …
What we need is a language and toolchain that we can trust to work on all operating systems forever. Then we need a low-code macro layer on top with some shims to various libraries. We need to be able to split a file in one or two lines of code and we need to be able to generate a report from a database in the same. Change a flag and it’s HTML, csv, tsv etc… I see picol.c and picol.go and I see the answer.