Our great sponsors
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
I remember in 1999 there was a project to reimplement a bunch of these tools in perl:
https://perlpowertools.com/
I even contributed a little, back then. I guess writing basic versions of "ls", for example, is trivial. But there's a lot of work getting all the tools done, with all the flags implemented and behaving as expected.
I guess there are tools like busybox, toybox, and similar, which also implement a lot of "stuff" to varying degrees of completion. From my side the biggest takeaway from those projects is the sheer convenience of deploying a single binary and installing symlinks to change functionality.
I replicated something similar with my sysbox project, collecting tools together in one golang binary with various subcommands:
https://github.com/skx/sysbox
I use at least one of those tools on a daily basis, though I suspect they're not so universally useful.
> I've been working privately on such a "systems programming REPL" in my free time. Basically a freestanding Lisp with pointers and built-in Linux system calls.
Are you building something similar to babashka? Would you be able to figure out what they did with babashka to figure out what you've been unable to do, or are you challenging yourself?
https://github.com/babashka/babashka
It had some CVEs but not many [0]. I think the better argument is that some of the original code is just really hard to read. Click around the repo [1]
[0] https://www.cvedetails.com/vulnerability-list.php?vendor_id=...
[1] https://github.com/coreutils/coreutils/