diff --git a/src/test/run-pass/ambig-scope.scm b/src/test/run-pass/ambig-scope.scm index 055e8ac..57a27ff 100644 --- a/src/test/run-pass/ambig-scope.scm +++ b/src/test/run-pass/ambig-scope.scm @@ -1,18 +1,22 @@ #lang scheme -(define (displayln x) (newline) (display x)) +(define (displayln x) + (newline) + (display x)) -(define (ambig1 x) (lambda (x) x)) +(define (ambig1 x) + (lambda (x) x)) (displayln ((ambig1 13) 42)) (define (ambig2 a) (displayln a) (define a- a) - (lambda (b) (displayln b) + (lambda (b) + (displayln b) (lambda (a) (displayln a) (displayln b) (displayln a-)))) -(((ambig2 1) 2) 3) \ No newline at end of file +(((ambig2 1) 2) 3) diff --git a/src/test/run-pass/capture.scm b/src/test/run-pass/capture.scm index bbf6c99..83898ef 100644 --- a/src/test/run-pass/capture.scm +++ b/src/test/run-pass/capture.scm @@ -1,12 +1,13 @@ #lang scheme -(define (displayln x) (display x) (newline)) +(define (displayln x) + (display x) + (newline)) - -(define (const x) (lambda () x)) +(define (const x) + (lambda () x)) (define two-thunk (const 2)) (displayln two-thunk) (displayln (two-thunk)) - diff --git a/src/test/run-pass/closure/assign-closures.scm b/src/test/run-pass/closure/assign-closures.scm index ca65638..69895e4 100644 --- a/src/test/run-pass/closure/assign-closures.scm +++ b/src/test/run-pass/closure/assign-closures.scm @@ -3,24 +3,26 @@ (define f #f) (define g #f) -(define (displayln x) (display x) (newline)) +(define (displayln x) + (display x) + (newline)) ((lambda () - (define local 1) - - (define (f_) - (displayln local) - (set! local 2) - (displayln local)) + (define local 1) - (set! f f_) + (define (f_) + (displayln local) + (set! local 2) + (displayln local)) - (define (g_) - (displayln local) - (set! local 3) - (displayln local)) + (set! f f_) - (set! g g_))) + (define (g_) + (displayln local) + (set! local 3) + (displayln local)) + + (set! g g_))) (f) -(g) \ No newline at end of file +(g) diff --git a/src/test/run-pass/closure/assign-shadowed-later.scm b/src/test/run-pass/closure/assign-shadowed-later.scm index b8986b5..5a4275c 100644 --- a/src/test/run-pass/closure/assign-shadowed-later.scm +++ b/src/test/run-pass/closure/assign-shadowed-later.scm @@ -2,15 +2,16 @@ (define a 0) -(define (displayln x) (display x) (newline)) +(define (displayln x) + (display x) + (newline)) +((lambda () + (define (assign) + (set! a 1)) -((lambda () - (define (assign) (set! a 1)) + (define a 2) + (assign) + (displayln a))) - (define a 2) - (assign) - (displayln a) -)) - -(displayln a) \ No newline at end of file +(displayln a) diff --git a/src/test/run-pass/closure/bagel-donut.scm b/src/test/run-pass/closure/bagel-donut.scm index b40e8c5..ac06159 100644 --- a/src/test/run-pass/closure/bagel-donut.scm +++ b/src/test/run-pass/closure/bagel-donut.scm @@ -1,11 +1,14 @@ -(define (displayln x) (display x) (newline)) +(define (displayln x) + (display x) + (newline)) (define (make-print x) - (define (print) (displayln x)) - print) + (define (print) + (displayln x)) + print) (define print-2 (make-print 2)) (define print-4 (make-print 4)) (print-4) -(print-2) \ No newline at end of file +(print-2) diff --git a/src/test/run-pass/closure/close-over-function-param.scm b/src/test/run-pass/closure/close-over-function-param.scm index ed6c9a9..df024aa 100644 --- a/src/test/run-pass/closure/close-over-function-param.scm +++ b/src/test/run-pass/closure/close-over-function-param.scm @@ -1,9 +1,10 @@ (define f #f) (define (foo param) - (define (f_) (display param)) - (set! f f_)) + (define (f_) + (display param)) + (set! f f_)) (foo 77) -(f) \ No newline at end of file +(f) diff --git a/src/test/run-pass/closure/close-over-later-variable.scm b/src/test/run-pass/closure/close-over-later-variable.scm index 81370e8..9a1a978 100644 --- a/src/test/run-pass/closure/close-over-later-variable.scm +++ b/src/test/run-pass/closure/close-over-later-variable.scm @@ -1,14 +1,14 @@ ; https://github.com/munificent/craftinginterpreters/blob/master/test/closure/close_over_later_variable.lox (define (f) - (define a 1) - (define b 2) + (define a 1) + (define b 2) - (define (g) - (display b) - (newline) - (display a)) + (define (g) + (display b) + (newline) + (display a)) - (g)) + (g)) -(f) \ No newline at end of file +(f) diff --git a/src/test/run-pass/closure/close-unused.scm b/src/test/run-pass/closure/close-unused.scm index b237a89..ab70eb0 100644 --- a/src/test/run-pass/closure/close-unused.scm +++ b/src/test/run-pass/closure/close-unused.scm @@ -1,10 +1,6 @@ ((lambda () - (define a 1) + (define a 1) - (if #f - (lambda () a) - 0 - ) -)) + (if #f (lambda () a) 0))) -(display 7) \ No newline at end of file +(display 7) diff --git a/src/test/run-pass/closure/closed-closure-in-function.scm b/src/test/run-pass/closure/closed-closure-in-function.scm index 3c9874e..11d8dd0 100644 --- a/src/test/run-pass/closure/closed-closure-in-function.scm +++ b/src/test/run-pass/closure/closed-closure-in-function.scm @@ -3,9 +3,9 @@ (define f #f) ((lambda () - (define local 1) - (define (f_) (display local)) - (set! f f_) -)) + (define local 1) + (define (f_) + (display local)) + (set! f f_))) -(f) \ No newline at end of file +(f) diff --git a/src/test/run-pass/closure/gnarly-i.scm b/src/test/run-pass/closure/gnarly-i.scm index 870b38d..6190093 100644 --- a/src/test/run-pass/closure/gnarly-i.scm +++ b/src/test/run-pass/closure/gnarly-i.scm @@ -1,19 +1,22 @@ #lang scheme -(define (displayln x) (display x) (newline)) +(define (displayln x) + (display x) + (newline)) (define (outer) - (define x 1) - - (define (middle) - (define (inner) (displayln x)) - (displayln 2) - inner) + (define x 1) - (displayln 3) + (define (middle) + (define (inner) + (displayln x)) + (displayln 2) + inner) - middle) + (displayln 3) + + middle) (define mid (outer)) (define in (mid)) -(in) \ No newline at end of file +(in) diff --git a/src/test/run-pass/closure/mutate-levels.scm b/src/test/run-pass/closure/mutate-levels.scm index d43ccbf..61f7d3d 100644 --- a/src/test/run-pass/closure/mutate-levels.scm +++ b/src/test/run-pass/closure/mutate-levels.scm @@ -1,20 +1,24 @@ (define x 2) -(define (show-x) (display x) (newline)) +(define (show-x) + (display x) + (newline)) (show-x) (set! x 3) (show-x) ((lambda () - (define x 7) - (show-x) - (set! x 8) - (show-x))) + (define x 7) + (show-x) + (set! x 8) + (show-x))) ((lambda () - (define (show-x) (display x) (newline)) - (define x 7) - (show-x) - (set! x 8) - (show-x))) + (define (show-x) + (display x) + (newline)) + (define x 7) + (show-x) + (set! x 8) + (show-x))) diff --git a/src/test/run-pass/closure/nested-assign.scm b/src/test/run-pass/closure/nested-assign.scm index df1a580..5bd5b1e 100644 --- a/src/test/run-pass/closure/nested-assign.scm +++ b/src/test/run-pass/closure/nested-assign.scm @@ -1,7 +1,8 @@ (define (outer) - (define x 0) - (define (y) (set! x 1)) - (y) - (display x)) + (define x 0) + (define (y) + (set! x 1)) + (y) + (display x)) -(outer) \ No newline at end of file +(outer) diff --git a/src/test/run-pass/closure/nested-closure.scm b/src/test/run-pass/closure/nested-closure.scm index c0f58cb..9e84874 100644 --- a/src/test/run-pass/closure/nested-closure.scm +++ b/src/test/run-pass/closure/nested-closure.scm @@ -1,12 +1,13 @@ ; https://github.com/munificent/craftinginterpreters/blob/master/test/closure/nested_closure.lox #lang scheme - -(define (displayln x) (display x) (newline)) +(define (displayln x) + (display x) + (newline)) (define f #f) -(define (f1) +(define (f1) (define a 1) (define (f2) (define b 2) @@ -22,4 +23,4 @@ (f1) -(f) \ No newline at end of file +(f) diff --git a/src/test/run-pass/closure/objects-are-a-poor-mans-closure.scm b/src/test/run-pass/closure/objects-are-a-poor-mans-closure.scm index 2e4e182..0a00e31 100644 --- a/src/test/run-pass/closure/objects-are-a-poor-mans-closure.scm +++ b/src/test/run-pass/closure/objects-are-a-poor-mans-closure.scm @@ -5,18 +5,29 @@ (define do-print 3) (define add 4) -(define (displayln x) (display x) (newline)) +(define (displayln x) + (display x) + (newline)) (define (vector x y) (define (add-to other) (vector (+ x (other get-x)) (+ y (other get-y)))) (lambda (message) - (if (= message get-x) x - (if (= message get-y) y - (if (= message add) add-to - (if (= message do-print) ((lambda () (displayln x) (displayln y) (newline))) - ((lambda () (displayln -99) 0)))))))) + (if (= message get-x) + x + (if (= message get-y) + y + (if (= message add) + add-to + (if (= message do-print) + ((lambda () + (displayln x) + (displayln y) + (newline))) + ((lambda () + (displayln -99) + 0)))))))) (define v-1-7 (vector 1 7)) (displayln (v-1-7 get-x)) @@ -29,4 +40,4 @@ (v-8-2 do-print) (define v-9-9 ((v-8-2 add) v-1-7)) -(v-9-9 do-print) \ No newline at end of file +(v-9-9 do-print) diff --git a/src/test/run-pass/closure/open-closure-in-function.scm b/src/test/run-pass/closure/open-closure-in-function.scm index a261912..904424e 100644 --- a/src/test/run-pass/closure/open-closure-in-function.scm +++ b/src/test/run-pass/closure/open-closure-in-function.scm @@ -2,8 +2,8 @@ ; https://github.com/munificent/craftinginterpreters/blob/master/test/closure/open_closure_in_function.lox - ((lambda () (define local 1) - (define (f) (display local)) - (f))) \ No newline at end of file + (define (f) + (display local)) + (f))) diff --git a/src/test/run-pass/closure/reference-closure-multiple-times.scm b/src/test/run-pass/closure/reference-closure-multiple-times.scm index 2a41c5e..71ce1d7 100644 --- a/src/test/run-pass/closure/reference-closure-multiple-times.scm +++ b/src/test/run-pass/closure/reference-closure-multiple-times.scm @@ -12,5 +12,3 @@ (set! f f_))) (f) - - diff --git a/src/test/run-pass/closure/reuse-closure-slot.scm b/src/test/run-pass/closure/reuse-closure-slot.scm index 44f1d73..d963162 100644 --- a/src/test/run-pass/closure/reuse-closure-slot.scm +++ b/src/test/run-pass/closure/reuse-closure-slot.scm @@ -6,7 +6,8 @@ (define f #f) ((lambda () (define a 1) - (define (f_) (display a)) + (define (f_) + (display a)) (set! f f_))) ((lambda () diff --git a/src/test/run-pass/closure/scope.scm b/src/test/run-pass/closure/scope.scm index 12c1842..7c636b8 100644 --- a/src/test/run-pass/closure/scope.scm +++ b/src/test/run-pass/closure/scope.scm @@ -1,9 +1,13 @@ (define x 2) -(define (displayln x) (display x) (newline)) +(define (displayln x) + (display x) + (newline)) -(define (gy y) x) -(define (gx x) x) +(define (gy y) + x) +(define (gx x) + x) (displayln (gx 7)) -(displayln (gy 7)) \ No newline at end of file +(displayln (gy 7)) diff --git a/src/test/run-pass/closure/shadow-closure-with-local.scm b/src/test/run-pass/closure/shadow-closure-with-local.scm index 6a8b94b..2d19f4e 100644 --- a/src/test/run-pass/closure/shadow-closure-with-local.scm +++ b/src/test/run-pass/closure/shadow-closure-with-local.scm @@ -1,14 +1,15 @@ ; https://github.com/munificent/craftinginterpreters/blob/master/test/closure/shadow_closure_with_local.lox ; TODO: Forbid this https://discordapp.com/channels/571040468092321801/618895179343986688/925533402592079912 - -(define (displayln x) (display x) (newline)) +(define (displayln x) + (display x) + (newline)) ((lambda () (define foo 0) - (define (f) + (define (f) ((lambda () (displayln foo) (define foo 1) - (displayln foo)))) - (f))) \ No newline at end of file + (displayln foo)))) + (f))) diff --git a/src/test/run-pass/closure/unused-later-closures.scm b/src/test/run-pass/closure/unused-later-closures.scm index 8ed1c15..e556b15 100644 --- a/src/test/run-pass/closure/unused-later-closures.scm +++ b/src/test/run-pass/closure/unused-later-closures.scm @@ -1,25 +1,19 @@ (define closure #f) ((lambda () - (define a 1) + (define a 1) + ((lambda () + (define b 2) - ((lambda () - (define b 2) + (define (get-a) + a) - (define (get-a) a) + (set! closure get-a) - (set! closure get-a) + (if #f (lambda () b) 0))) - (if #f - (lambda () b) - 0) - - )) - - (display (closure)) - -)) + (display (closure)))) (newline) - (display (closure)) +(display (closure)) diff --git a/src/test/run-pass/closure/use-after-close.scm b/src/test/run-pass/closure/use-after-close.scm index e6f91e9..355c468 100644 --- a/src/test/run-pass/closure/use-after-close.scm +++ b/src/test/run-pass/closure/use-after-close.scm @@ -1,8 +1,8 @@ (define (outer) - (define x 1) - (define (inner) (display x)) - inner) + (define x 1) + (define (inner) + (display x)) + inner) (define clousre (outer)) -(clousre) - +(clousre) diff --git a/src/test/run-pass/closure/val-or-var.scm b/src/test/run-pass/closure/val-or-var.scm index cc40067..2404e4d 100644 --- a/src/test/run-pass/closure/val-or-var.scm +++ b/src/test/run-pass/closure/val-or-var.scm @@ -2,16 +2,18 @@ (define globalGet #f) (define (main) - (define a 0) + (define a 0) - (define (set) (set! a 1)) - (define (get) (display a) (newline)) + (define (set) + (set! a 1)) + (define (get) + (display a) + (newline)) - (set! globalSet set) - (set! globalGet get) -) + (set! globalSet set) + (set! globalGet get)) (main) (globalGet) (globalSet) -(globalGet) \ No newline at end of file +(globalGet) diff --git a/src/test/run-pass/curry.scm b/src/test/run-pass/curry.scm index c5bac77..7fd510d 100644 --- a/src/test/run-pass/curry.scm +++ b/src/test/run-pass/curry.scm @@ -1,7 +1,10 @@ #lang scheme -(define (displayln x) (display x) (newline)) +(define (displayln x) + (display x) + (newline)) -(define (curry2 f) (lambda (l) (lambda (r) (f l r)))) +(define (curry2 f) + (lambda (l) (lambda (r) (f l r)))) (displayln (((curry2 +) 1) 2)) diff --git a/src/test/run-pass/fib.scm b/src/test/run-pass/fib.scm index 92cbcab..6754aad 100644 --- a/src/test/run-pass/fib.scm +++ b/src/test/run-pass/fib.scm @@ -1,21 +1,28 @@ #lang scheme -(define (displayln x) (display x) (newline)) +(define (displayln x) + (display x) + (newline)) -(define (my-or a b) (if a #t b)) ; Test was written before we had `or` +(define (my-or a b) + (if a #t b)) ; Test was written before we had `or` - -(define (fib-base? n) (my-or (= n 1) (= n 0))) +(define (fib-base? n) + (my-or (= n 1) (= n 0))) (define (fib n) - (if (fib-base? n) 1 - (+ (fib (- n 1)) (fib (- n 2))))) - + (if (fib-base? n) 1 (+ (fib (- n 1)) (fib (- n 2))))) -(define (pfib n) (displayln n) (displayln (fib n)) (newline)) +(define (pfib n) + (displayln n) + (displayln (fib n)) + (newline)) (define (pfibs n) - (if (= n (- 1)) 0 ; Hack - ((lambda () (pfib n) (pfibs (- n 1)))))) ; Hack + (if (= n (- 1)) + 0 ; Hack + ((lambda () + (pfib n) + (pfibs (- n 1)))))) ; Hack -(pfibs 10) \ No newline at end of file +(pfibs 10) diff --git a/src/test/run-pass/funcs.scm b/src/test/run-pass/funcs.scm index 58c1e2d..856fd88 100644 --- a/src/test/run-pass/funcs.scm +++ b/src/test/run-pass/funcs.scm @@ -1,6 +1,8 @@ #lang scheme -(define (displayln x) (display x) (newline)) +(define (displayln x) + (display x) + (newline)) (define add1 +) (displayln (add1 2 3)) @@ -8,5 +10,6 @@ (define add2 (lambda (a b) (+ a b))) (displayln (add2 5 6)) -(define (add3 a b) (+ a b)) -(displayln (add3 5 9)) \ No newline at end of file +(define (add3 a b) + (+ a b)) +(displayln (add3 5 9)) diff --git a/src/test/run-pass/lambda-calc.scm b/src/test/run-pass/lambda-calc.scm index 5d3e56e..6da98f2 100644 --- a/src/test/run-pass/lambda-calc.scm +++ b/src/test/run-pass/lambda-calc.scm @@ -1,18 +1,24 @@ #lang scheme -(define (displayln x) (display x) (newline)) -(define (printbool x) (displayln (bool->int x))) +(define (displayln x) + (display x) + (newline)) +(define (printbool x) + (displayln (bool->int x))) -(define (true x y) x) -(define (false x y) y) -(define (and x y) (x y x)) -(define (or x y) (x x y)) -(define (not x) (x false true)) +(define (true x y) + x) +(define (false x y) + y) +(define (and x y) + (x y x)) +(define (or x y) + (x x y)) +(define (not x) + (x false true)) -(define (bool->int x) - (if - (equal? x true) 1 - (if (equal? x false) 0 (- 1)))) +(define (bool->int x) + (if (equal? x true) 1 (if (equal? x false) 0 (- 1)))) (printbool true) (printbool false) @@ -27,4 +33,4 @@ (printbool (or true false)) (printbool (or false true)) (printbool (or false false)) -(printbool (and (or true false) (or false true))) \ No newline at end of file +(printbool (and (or true false) (or false true))) diff --git a/src/test/run-pass/multi.scm b/src/test/run-pass/multi.scm index 6df5bff..3a5dc57 100644 --- a/src/test/run-pass/multi.scm +++ b/src/test/run-pass/multi.scm @@ -1,5 +1,8 @@ #lang scheme -(define (multi) 1 2 3) +(define (multi) + 1 + 2 + 3) -(display (multi)) \ No newline at end of file +(display (multi)) diff --git a/src/test/run-pass/nested-defs.scm b/src/test/run-pass/nested-defs.scm index 6d4265a..15c9eee 100644 --- a/src/test/run-pass/nested-defs.scm +++ b/src/test/run-pass/nested-defs.scm @@ -6,15 +6,14 @@ (define (sqrt x) (define (sqrt-iter guess x) (define (good-enough? guess x) - (define (square x) (* x x)) + (define (square x) + (* x x)) (< (abs (- (square guess) x)) 0.001)) (define (improve guess x) - (define (average x y) + (define (average x y) (/ (+ x y) 2)) (average guess (/ x guess))) - (if (good-enough? guess x) - guess - (sqrt-iter (improve guess x) x))) + (if (good-enough? guess x) guess (sqrt-iter (improve guess x) x))) (sqrt-iter 1.0 x)) -(display (sqrt 2)) \ No newline at end of file +(display (sqrt 2)) diff --git a/src/test/run-pass/sqrt.scm b/src/test/run-pass/sqrt.scm index 051ac15..5300635 100644 --- a/src/test/run-pass/sqrt.scm +++ b/src/test/run-pass/sqrt.scm @@ -4,17 +4,16 @@ ; http://sarabander.github.io/sicp/html/1_002e1.xhtml#g_t1_002e1_002e7 (define (sqrt-iter guess x) - (if (good-enough? guess x) - guess - (sqrt-iter (improve guess x) x))) + (if (good-enough? guess x) guess (sqrt-iter (improve guess x) x))) (define (improve guess x) (average guess (/ x guess))) -(define (average x y) +(define (average x y) (/ (+ x y) 2)) -(define (square x) (* x x)) +(define (square x) + (* x x)) (define (good-enough? guess x) (< (abs (- (square guess) x)) 0.001)) @@ -22,4 +21,4 @@ (define (sqrt x) (sqrt-iter 1.0 x)) -(display (sqrt 2)) \ No newline at end of file +(display (sqrt 2))