Comment

Comment by munificent

> There's a joke that every web developer makes a personal page by first writing a custom bespoke CMS over a couple of months and then only using it for one "Hello, World!" post

I might be able to top that. About eleven years ago, I went through this process:

1. I wanted to redo my web site. But I hated using PHP which is all my shared host allowed.

2. Maybe I'll design a little programming language that transpiles to PHP. Then I can program my site using that.

3. I have the parser working and producing an AST. You know, writing a little interpreter that walks that AST is practically trivial. I'll do the PHP backend later, but let's give that a try.

4. Whoa, I have a working language! Neat! But, man, that tree-walking interpreter is slow. Maybe I could translate the tree to bytecode and write a little bytecode VM...

5. Bytecode is so fun! But I'm relying on the .NET VM for most of the heavy lifting like the GC and object representation. I wonder how that stuff works. Maybe I should try writing a little VM in C++...

6. That wasn't as bad as I expected. I learned a whole bunch. Maybe I should write some of this down.

So, uh, now I work at Google on a programming language and wrote a textbook on building interpreters [1]. I never did finish that website. (I just ported my blog to Jekyll at some point instead.)

[1]: http://craftinginterpreters.com/

parent munificent 6 years ago

Discussion

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton