Hacker News new | ask | show | jobs
by qwertyuiop924 3536 days ago
But it's still an entirely pointless 336K. I could use that to store:

-197 copies of nethack

-10% of DarkPlaces

-36% of GCC

-44% of ZSH

-30 copies of CPython (just the executable, of course: that's all you counted)

-10% of ZSNES

-1.36 copies of XScreenSaver

-42% of Teeworlds

All of these are more valuable uses of my precious disk space, because all of them actually do something: They actually give me capabilities I previously didn't have.

2 comments

GCC and CPython are great illustrations of what Im talking about. Others are good. Also, Oberon System base with kernel, files, editor, viewer, etc is around 116KB per Wirth's paper on FPGA implementation.

So, you get a whole OS with some utilities in between 1/3 and 1/2 of SystemD binary. Also worth noting Oberon includes safety checks, too. ;)

Oberon might be worth checking out. I've heard neat stuff.

However, from what I've seen, it's a bit too verbose for my tastes (the language, not the OS).

Honestly, I found the tradeoffs of it to be the most interesting. It hits an interesting balance of readable, safe, fast compile, and fast runtime. Includes some OOP and concurrency foundations while barely changing the language. Whole platform can fit in one book. You could theoretically understand whole thing and reimplement in language of your choosing. Was esp good when hardware was weaker and more diverse. Also better starting language than C in education as it can be easy at first with difficulty gradually increased with intro of unsafe constructs. Finally, it's seeing some uptake in embedded with Astrobe IDE.

So, that's a quick review. The main one you'll find is older system where A2 Bluebottle is latest. Runs fast, too.

Neat.

Yeah, it does look really cool, just verbose. And you say it's easy to implement....

Maybe I can get it running on my gameboy?

I kid. Sort of.

"Yeah, it does look really cool, just verbose. And you say it's easy to implement...."

It is a compiler and OS. Easy means a different thing in this context versus average usage in software. I'd say vastly easier than trying to understand GCC or Linux. How about that? Also, the original version was done by 2 people and some change. Each port of compiler was done by 1-2 people in relatively short time. Mostly students with basic knowledge in CompSci. Helps it's well-documented.

So, it's not easy as throwing together a web app but can't be ridiculously hard if you take it a piece at a time. The use I had for it, other than learning or pleasure, would be for subversion-resistent, verified-to-assembly builds. It's super easy to learn Oberon with the OS itself straight-forward. People could code it up in a local language, the compiler too, compile those (or hand-done in ASM), and bootstrap into a trusted environment. That can be used to produce the rest with compilers built on top in a memory-safe language that handles foreign code more safely. Better, no patent suits or anything on Wirth-based tech like .NET or Java might get you.

Other than Oberon system, Modula-3 (not Wirth) and Component Pascal (Wirth et al) are most worthwhile to check out in terms of practical languages. BlackBox Component Builder is still in active use with Component Pascal, esp in Russia and Europe. They love it over there since it's got OOP & GUI with Oberon simplicity & safety.

Oberon is mind boggling, in all respects. You can download the emulator (<5mb total). It is SDL2 based so runs like a stand alone app, no VirtualBox or QEMU needed. Then you can get and compile Lola-2, the Verilog pre-processor compiler from Prof. Wirth. Now you can literally compile the RISC5 processor "chip" itself which runs on the FPGA!! Just use the output .v files from Lola-2 and compile with the Xilinx toolchain. Next you can compile the "Oberon OS" quite simply by hand in a few minutes. With a compile script the complete OS compiles in 10 seconds.

Then why not finish off with PICL, the language/compiler for the PIC16. Includes the uploader. All in <700 lines of Oberon code. The best part is the amazing tutorials/documentation. Some amazing finds at Prof Wirths personal site. https://www.inf.ethz.ch/personal/wirth/

This has to be the most jam packed tutorial you could ever hope for: https://www.inf.ethz.ch/personal/wirth/PICL/PIC.pdf

Of course. I'm foolish, but not foolish enough to think "easy" compiler/OS equals "easy" webapp. However, I am foolish enough to start any project, although usually not mad enough to finish it once I get an idea of the work involved.

Once again, Oberon looks neat. I am usually not a fan of the Wirthian languages, so I might not enjoy it in the same way I enjoy, say, Python, or Scheme, but it looks interesting.

> -30 copies of CPython (just the executable, of course: that's all you counted)

I checked with ldd; it doesn't have any other systemd dependencies as far as I can see.

I'm saying relative to disk space today which is on the magnitude of hundreds of gigabytes; the disk usage is not a concern.

To my knowledge, CPython is the only piece of software on that list that has its own shared libraries.

And yes, disk usage is a concern. Because those kilobytes add up fast, and I've only got so much space.

And finally, the point isn't merely that it takes up disk: the point is that it's worthless. The old solution to that problem, having init set locale on boot from a config file, worked fine. I don't mind disk use that much. But I do mind pointless software.

All code has bugs: to minimize bugs, write less code.