This is a series that teaches you how to make a programming language. It was motivated by a gap between compilers as taught and compilers as seen in production. Production compilers are deeply concerned with being interactive, accomodating IDE usage and incremental compilation. In trying to learn how these work, I encounterd a dearth of material. The language we implement here will be modest, but it will focus on what’s required for an interactive compiler ready to support an IDE.

Our language will have a healthy reverence for the theory, but won’t be partaking. We’re happy to rely on the results of theory, but we won’t be picking apart how it achieves those results. This series focus will be on the practical side of things. Runnable code can be found accompanying each section.

Similar Posts

Loading similar posts...

Keyboard Shortcuts

Navigation
Next / previous item
j/k
Open post
oorEnter
Preview post
v
Post Actions
Love post
a
Like post
l
Dislike post
d
Undo reaction
u
Recommendations
Add interest / feed
Enter
Not interested
x
Go to
Home
gh
Interests
gi
Feeds
gf
Likes
gl
History
gy
Changelog
gc
Settings
gs
Browse
gb
Search
/
General
Show this help
?
Submit feedback
!
Close modal / unfocus
Esc

Press ? anytime to show this help