diff options
| author | Taylan Kammer <taylan.kammer@gmail.com> | 2026-06-24 14:34:37 +0200 |
|---|---|---|
| committer | Taylan Kammer <taylan.kammer@gmail.com> | 2026-06-24 14:34:37 +0200 |
| commit | ede65518591b9af79cb50b18dc83419625d27782 (patch) | |
| tree | 4eedff3b74b59a55841dd5024583dd5660ec480e /_tests/eval.scm | |
| parent | 61f87806e4e0beade8597a5f7a8fdf7769a7f081 (diff) | |
Various code cleanup.
Diffstat (limited to '_tests/eval.scm')
| -rw-r--r-- | _tests/eval.scm | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/_tests/eval.scm b/_tests/eval.scm new file mode 100644 index 0000000..accd858 --- /dev/null +++ b/_tests/eval.scm @@ -0,0 +1,25 @@ + + + +(define (eval form module) + (cond + ((const? form) form) + ((id? form) (lookup form module)) + ((list? form) + (let ((len (list-len form)) + (ptr (list-ptr form))) + (eval-list ptr len module))))) + +(define (eval-list ptr len module) + (let ((first ptr[0])) + (cond + ((funcall? first) + (let ((fun-ptr (funcall-ptr first)) + (argv (eval-args ptr len module))) + (funcall fun-ptr argv))) + (())))) + + + + + |
