1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-17 17:20:29 +02:00

Get rid of comments and dead branches

This commit is contained in:
Ian Price 2015-06-06 20:15:25 +01:00
parent 54ce470cf8
commit d1a663baec
4 changed files with 7 additions and 29 deletions

View file

@ -16,7 +16,6 @@
;; first-order optimization should go here
(set! exp (reify-primitives exp))
(set! exp (renumber exp))
;; (values exp env env)
(match exp
(($ $program funs)
;; TODO: I should special case the compilation for the initial fun,
@ -27,16 +26,12 @@
(values (make-program (compile-fun (car funs))
(map compile-fun (cdr funs)))
env
env)))
)
env))))
(define (compile-fun fun)
;; meta
(match fun
(($ $cont k ($ $kfun src meta self ($ $cont tail ($ $ktail)) clause))
(make-var k (compile-clause clause self tail)))
(_
`(fun:todo: ,fun))))
(make-var k (compile-clause clause self tail)))))
(define (compile-clause clause self tail)
(match clause
@ -58,9 +53,7 @@
(compile-term exp))
(($ $cont k _)
(make-local (list (compile-cont body))
(make-continue k (map make-id req)))))))
(_
`(clause:todo: ,clause))))
(make-continue k (map make-id req)))))))))
(define (not-supported msg clause)
(error 'not-supported msg clause))
@ -115,9 +108,7 @@
;; FIXME:
;; may happen if a test branch of a conditional compiles to values
;; placeholder till I learn if multiple values could be returned.
(make-id val))
(_
`(exp:todo: ,exp))))
(make-id val))))
(define (compile-test exp kt kf)
;; TODO: find out if the expression is always simple enough that I

View file

@ -182,9 +182,3 @@
(display separator port)
(printer x port))
rest))))
(define (print-terminated args printer terminator port)
(for-each (lambda (x)
(printer x port)
(display terminator port))
args))

View file

@ -7,13 +7,12 @@
make-continuation continuation
make-local local
make-var var
make-continue continue ; differ from conts
make-continue continue
make-const const
make-primcall primcall
make-call call
make-closure closure
make-branch branch
; print-js
make-return return
make-id id
))
@ -78,7 +77,6 @@
`(continue ,k ,(map unparse-js args)))
(($ branch test then else)
`(if ,(unparse-js test) ,(unparse-js then) ,(unparse-js else)))
;; values
(($ const c)
`(const ,c))
(($ primcall name args)
@ -90,8 +88,4 @@
(($ return val)
`(return . ,(unparse-js val)))
(($ id name)
`(id . ,name))
(_
;(error "unexpected js" exp)
(pk 'unexpected exp)
exp)))
`(id . ,name))))

View file

@ -1,6 +1,5 @@
(define-module (language js-il spec)
#:use-module (system base language)
; #:use-module (language js-il)
#:use-module (language js-il compile-javascript)
#:export (js-il))
@ -8,5 +7,5 @@
#:title "Javascript Intermediate Language"
#:reader #f
#:compilers `((javascript . ,compile-javascript))
#:printer #f ; print-js
#:printer #f
#:for-humans? #f)