08f9cc4a11
Remove premature code generation from high-level and add new nodes
...
The new nodes are more directly representational of the syntax, and
code generation will be moved to an intermediate stage with a more
linear (yet still node-based) representation.
2025-05-22 13:14:55 +02:00
ebe27cf026
Make methods for nodes to list their potential next nodes
2025-05-22 13:14:55 +02:00
4bf1316536
Half-baked and half-hearted attempt to let nodes hold comments
2025-05-22 13:14:55 +02:00
5a18cc9864
Make NODE-DOTIMES hold a counter variable
2025-05-22 13:14:55 +02:00
0867e99cc1
Various messes
2025-05-16 21:00:14 +02:00
5d0f4b4767
Move definition of REFERENCE classes to its own file
...
Dereferencing is still defined in high-level.lisp, this might change
in the future since I'm sort of restructuring a little bit.
2025-05-16 21:00:14 +02:00
449e36e183
Add reference equality test (only implemented for constants so far)
2025-05-16 21:00:14 +02:00
31bb5f8509
Add offset label class
2025-05-08 22:18:57 +02:00
15a70836ac
Add temporary ARGVEC and VARVEC definitions
2025-05-08 22:18:57 +02:00
501da2341e
Bind *LABEL-COUNTER* to 0 at the start of compiling
2025-05-08 19:33:31 +02:00
bcc039774b
Move *LABEL-COUNTER* to label.lisp
2025-05-08 19:33:13 +02:00
5ca740efa9
Add PRODUCE-COMMENT
2025-05-08 19:32:54 +02:00
41bd413b4c
Add LABEL class and replace uses of temporary strings with it
2025-05-08 19:10:38 +02:00
37241a1fc3
Replace the text assembly in high-level with instruction objects
2025-05-08 17:11:57 +02:00
0a3675feac
Turn the user-side compiler into a proper ASDF system
2025-05-03 12:22:56 +02:00