A single-pass compiler for a simple imperative language.
 
 
Go to file
James T. Martin 46640b6204
Remove gratuitous platform-specific IO.
I don't need some fancy atomic output file updating or
posix_fadvise. I removed all platform-specific code
except for a single `chmod`.

That's not to say there's no advantage to atomically
reading or writing files, but for this project, the first
rule needs to be KISS. It's premature optimization and
overengineering.
2022-09-06 23:16:23 -07:00
src Remove gratuitous platform-specific IO. 2022-09-06 23:16:23 -07:00
.editorconfig Initial commit. 2022-09-05 23:48:56 -07:00
.gitignore Initial commit. 2022-09-05 23:48:56 -07:00
LICENSE.txt Initial commit. 2022-09-05 23:48:56 -07:00
Makefile Separate instruction encoding into a separate file. 2022-09-06 02:20:10 -07:00
README.md Initial commit. 2022-09-05 23:48:56 -07:00

README.md

Passlang

A one-pass, linear-time compile-and-go compiler.

I'm imposing these restrictions on myself to avoid over-engineering and give myself a design challenge. The goal is to make the absolute best language I can under these constraints, and then incrementally begin to relax the restrictions only when absolutely necessary to make progress.