Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

And you can AOT compile your Lisp code to pure native code, try that with JavaScript.



Maybe a stupid question, but is AOT a new name for what just few years ago we used to call "normal" compilation?


No, lol, it's exactly normal compilation. It's a buzzword that differentiates languages without normal compilation (esp using VM's or interpreters) from special implementations of them that do support that. The latter have "AOT" compilation. Wikipedia states the difference is AOT compiles the bytecode of an existing VM. It's still just a compiler, though, given the end result is mostly the same.


Yeap. It's quite a common linguistic phenomenan, when a term like JIT stops being a fringe thing and enters mainstream discourse among an audience, what used to just be "normal" now gets a name.

"Imperative programming" might be another one. IRL, think about how "cisgender" has entered into mainstream vocabulary in the past few years, or "heterosexual" many years before that.


I suppose the contrast is with JIT compilation, which has a lot of mindshare now so it's valuable to make the distinction


Yes, because nowadays VM with dynamic compilation are a thing on mainstream computing, which used to be only available on mainframes or specialized hardware systems like those developed at Xerox PARC, DEC and ETHZ.

So ahead-of-time compilation, as linguistic term and CS literature, was born as a way to differentiate from dynamic compilation.


Maybe the point is that Javascript is JIT compiled?


Not just AOT; you can also easily compile new functions at runtime, and then even serialize the entire program's state, including JIT-compiled functions, into a new compiled image that starts instantly.




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: