File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ * .run
Original file line number Diff line number Diff line change 1+ #lang racket
2+ (provide (all-defined-out ))
3+ (require "compile.rkt " "syntax.rkt " "asm/printer.rkt " )
4+
5+ ;; String -> Void
6+ ;; Compile contents of given file name,
7+ ;; emit asm code on stdout
8+ (define (main fn)
9+ (with-input-from-file fn
10+ (λ ()
11+ (let ((c (read-line))
12+ (p (read)))
13+ (unless (expr? p) (error "syntax error " p))
14+ (asm-display (compile (sexpr->prog p)))))))
Original file line number Diff line number Diff line change 1+ #lang racket
2+ (begin
3+ (define (f x y) (+ x y))
4+ (let ((x (cons (f 1 2 ) '() ))) x))
Original file line number Diff line number Diff line change 1+ #lang racket
2+ (provide (all-defined-out ))
3+ (require "interp.rkt " "syntax.rkt " )
4+
5+ ;; String -> Void
6+ ;; Parse and interpret contents of given filename,
7+ ;; print result on stdout
8+ (define (main fn)
9+ (with-input-from-file fn
10+ (λ ()
11+ (let ((c (read-line)))
12+ (let ((p (read)))
13+ (unless (expr? p) (error "syntax error " p))
14+ (writeln (interp (sexpr->prog p))))))))
You can’t perform that action at this time.
0 commit comments