←back to thread

210 points JoeDaDude | 2 comments | | HN request time: 0.422s | source
Show context
sourcepluck ◴[] No.42208060[source]
Looks very cool!

Relatedly, there's http://tumbleforth.hardcoded.net/, which I think looks lovely. Has anyone gone through that and would like to share their experience?

replies(4): >>42208254 #>>42209883 #>>42212088 #>>42212776 #
forth_throwaway ◴[] No.42208254[source]
I got about halfway through it during a slow work week. It was a throwback to my hardware classes from college. It got me thinking differently about computing.

I am young and stupid, but from a rear-view perspective it looks like maybe certain abstractions were chosen in the old days when there were hardware limitations, and that our current "evolutionary branch" of programming languages has a lot of abstractions that have not aged well, leading to a lot of layers of load-bearing cruft --much like any engineering project.

Collapse OS might not be practical today, but it has a "liberating" appeal. Freeing yourself from all these layers of abstraction sounds really enticing. A way to enjoy computing as it existed in the 1960s, but without the terrible developer experience. (or so I imagine)

Currently my pie-in-the-sky project would be to work through these projects, get Dusk OS building on a virtual machine, then physical machine, then write a Scheme interpreter for Dusk OS in C --and go hog-wild from there.

I have a couple of rivers to cross before I get there. I implemented a Scheme interpreter in Python in a couple of hours, then improved the scanner/Tokenizer in a couple more hours. Now I'm reading through crafting interpreters to see how I would go about implementing a Scheme interpreter in C. After that's done and I implement an interpreter in C, I'll revisit this guide and try to jump headfirst into DuskOS.

replies(2): >>42210271 #>>42212450 #
1. exe34 ◴[] No.42212450[source]
I found this quite easy to follow: https://www.buildyourownlisp.com/ for building a not-quite-Scheme in C. I didn't get massively far but only because of the sheer amount of other shiny things.
replies(1): >>42214187 #
2. forth_throwaway ◴[] No.42214187[source]
Yes I have seen that one! It's on my list of resources. There's also this, which I have been studying the code of as I follow along with Crafting Interpreters, to try and incrementally understand the codebase:

https://github.com/vibhavp/skeem/blob/master/src/builtins.c#...

The simplicity of the eval function is so cool!