ee89d2330d
This commit introduces support for comments within the AST nodes. Comments are now parsed by the lexer and stored within the `Token` struct. These comments are then propagated through various compiler phases, including the `Node` struct, ensuring they are preserved in the Abstract Syntax Tree. This change enhances the AST's ability to retain source code information, which can be valuable for debugging and analysis.
24 lines
567 B
Plaintext
24 lines
567 B
Plaintext
;; Benchmark: 102ns
|
|
;; Benchmark-Repeat: 20685
|
|
;; Output: [42 150]
|
|
(do
|
|
;; 1. Provokation Stack-Gap (bei Optimization Level 2)
|
|
(def result
|
|
(fn []
|
|
(do
|
|
;; Wird entfernt, Slot 0 ist dann "leer"
|
|
(def unused 10)
|
|
;; Bleibt auf Slot 1 -> Lücke!
|
|
(def used 42)
|
|
used)))
|
|
|
|
;; 2. Provokation Inlining-Blockade
|
|
;; Diese Funktion wird nicht inlined, weil sie ein 'def' enthält
|
|
(def complex-add
|
|
(fn [a]
|
|
(do
|
|
(def b 100)
|
|
(+ a b))))
|
|
|
|
[(result) (complex-add 50)]
|
|
) |