WIP - sequencing expressions

This commit is contained in:
Justin Ethier 2018-10-29 18:51:47 -04:00
parent 0113982e87
commit 2d4a5f0f44

View file

@ -1082,6 +1082,20 @@
;; Could not inline
(map (lambda (e) (opt:inline-prims e scope-sym refs)) exp)))
)) ;;
;; Lambda with a parameter that is never used; sequence code instead to avoid lambda
((and (ast:lambda? (car exp))
(every
(lambda (param)
(with-var param (lambda (var)
(null? (adbv:ref-by var)))))
(ast:lambda-formals->list (car exp)))
)
(opt:inline-prims
`(Cyc-seq
,@(cdr exp)
,(ast:lambda-body (car exp)))
scope-sym
refs))
(else
(map (lambda (e) (opt:inline-prims e scope-sym refs)) exp))))
(else