mirror of
https://github.com/janet-lang/janet
synced 2025-11-01 08:03:02 +00:00
Use fewer special forms in c compiler. This should
make the self hosted compiler easier to make. The C version of the compiler does not need to be efficient.
This commit is contained in:
30
libs/compile.gst
Normal file
30
libs/compile.gst
Normal file
@@ -0,0 +1,30 @@
|
||||
# Real compiler
|
||||
|
||||
# Make compiler
|
||||
(: make-compiler (fn [] {
|
||||
'scopes []
|
||||
'env []
|
||||
'labels {}
|
||||
}))
|
||||
|
||||
# Make default form options
|
||||
(: make-formopts (fn [] {
|
||||
'target nil
|
||||
'resultUnused false
|
||||
'canChoose true
|
||||
'isTail false
|
||||
}))
|
||||
|
||||
# Make scope
|
||||
(: make-scope (fn [] {
|
||||
'level 0
|
||||
'nextSlot 0
|
||||
'frameSize 0
|
||||
'freeSlots []
|
||||
'literals {}
|
||||
'literalsArray []
|
||||
'slotMap []
|
||||
}))
|
||||
|
||||
# Push a scope onto the compiler
|
||||
|
||||
Reference in New Issue
Block a user