erysdren

VICTIM OF THE MOON

23 - script kitty (ΞΈβ¨Ί) & actual real life vampire

wife: @evie-src

Weird Al Yankovic ButtonInternet Archive ButtonSlipgate Sighteer Button
LibreQuake ButtonHaiku OS ButtonPrey Button

πŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡ΈπŸ‡΅πŸ‡Έ


discord
erysdren
email
contact@erysdren.me
You must log in to comment.

in reply to @erysdren's post:

I'm currently playing shapez and I'm getting toward the end. Sequencing all the piping between, gathering, cutting, stacking & coloring for these more difficult shapes is stretching my brain.

in reply to @erysdren's post:

It's been decades since I gave "real" compilers much thought, and this was old and obscure even then, but the most (and only) approachable book that I've seen (other than size) was Holub's Compiler Design in C. I don't know if it survived "the dragon book" (Compilers, Aho, Sethi, and Ullman, last I checked) becoming the graduate and undergraduate standard text, and then the weird "just pretend that you're compiling to a stack machine and figure out the translation later" trend that showed up in a lot of writing in the late '90s/early 2000s.

I have to imagine that somebody since has written a book about LLVM's architecture, which might also be useful, but I don't know of any.

we learned from an old edition of the famous "dragon book" (Compilers: Principles, Tools, and Techniques by Aho, Sethi, and Ullman) but it's also famously opaque and badly structured and uses key concepts without introducing them

we usually recommend Andrew Appel's Modern Compiler Implementation in ML - specifically that one and not the Java version of the book, because the type system stuff matters. we don't yet know anyone who's tried to write a working compiler based solely on it though, compiler design is a rare bug to be bit by, so please let us know how you like it if you give it a try.

you might also enjoy the OSDev Wiki; its focus is lower in the stack but there's stuff it will help with, especially around binary generation and so on.

cohost just eat my comment so i'm making it brief, apologies

  • there aren't good guides for 'human readable compilers'
  • dragon book is a terse nightmare that seems to drag on, and many other follow suit
  • compiler algorithms (parsing, unifcation, inference, colouring) are hard to implement in languages without support for search or pattern matching
  • implementing those algorithms inside a more popular language often means drowning your algorithm under hundreds of implementation details
  • on the other hand, weird programming languages that make compilers easier are often seen as less friendly to humans: see prolog
  • but there is one thing you can do that helps: a nanopass compiler
  • a direct opposite to a "single pass compiler", a nanopass compiler is built out as many steps as possible
  • it runs like dogshit but each layer of the compiler is relatively simple, and it's a good way to build a first compiler
  • there's a paper if you're curious but i don't think you need to read it

apart from that, the most "hands on" implementing a compiler books i know of are these ones: https://www.cs.princeton.edu/~appel/modern/