mirror of
https://github.com/justinethier/cyclone.git
synced 2025-05-23 20:15:05 +02:00
Emit lambda AST's
This commit is contained in:
parent
f6be983113
commit
a20f020f66
1 changed files with 10 additions and 10 deletions
|
@ -187,17 +187,17 @@
|
|||
;; Memoize all of the functions at top-level
|
||||
(foldl
|
||||
(lambda (var/new-var acc)
|
||||
(let ((rsym (gensym 'r))
|
||||
(var (car var/new-var))
|
||||
(new-var (cdr var/new-var)))
|
||||
(let* ((rsym (gensym 'r))
|
||||
(var (car var/new-var))
|
||||
(new-var (cdr var/new-var))
|
||||
(body
|
||||
`((Cyc-seq
|
||||
(set-global! ,var ,rsym)
|
||||
,acc)))
|
||||
)
|
||||
`(memoize
|
||||
(,(gensym 'lambda)
|
||||
(,rsym)
|
||||
(Cyc-seq
|
||||
(set-global! ,var ,rsym)
|
||||
,acc
|
||||
))
|
||||
,new-var)))
|
||||
,(ast:make-lambda (list rsym) body)
|
||||
,new-var)))
|
||||
exp
|
||||
memo-tbl)
|
||||
)))
|
||||
|
|
Loading…
Add table
Reference in a new issue