From dfe5f9838195651b069670cfcf4a58494ef800a8 Mon Sep 17 00:00:00 2001 From: scribu Date: Sat, 8 Dec 2012 22:56:43 +0200 Subject: [PATCH] use (define) syntax sugar in examples --- examples/closure.scm | 4 ++-- examples/factorial.scm | 12 ++++++------ examples/foldr.scm | 8 ++++---- examples/map.scm | 8 +++----- examples/misc.scm | 4 ++-- examples/variables.scm | 8 ++++---- 6 files changed, 21 insertions(+), 23 deletions(-) diff --git a/examples/closure.scm b/examples/closure.scm index fe11b64..a220d44 100644 --- a/examples/closure.scm +++ b/examples/closure.scm @@ -1,5 +1,5 @@ -(define make-adder (lambda (x) - (lambda (y) (+ x y)))) +(define (make-adder x) + (lambda (y) (+ x y))) (define add-3 (make-adder 3)) diff --git a/examples/factorial.scm b/examples/factorial.scm index 3a3117d..75c19b3 100644 --- a/examples/factorial.scm +++ b/examples/factorial.scm @@ -1,14 +1,14 @@ -(define ! (lambda (n) +(define (! n) (if (>= 1 n) 1 - (* n (! (- n 1)))))) + (* n (! (- n 1))))) -(define !-it (lambda (x) - (define !-internal (lambda (n current) +(define (!-it x) + (define (!-internal n current) (if (= n 0) current - (!-internal (- n 1) (* n current))))) - (!-internal x 1))) + (!-internal (- n 1) (* n current)))) + (!-internal x 1)) (display (string-concatenate (list "factorial: " diff --git a/examples/foldr.scm b/examples/foldr.scm index bac6dfe..e0637f0 100644 --- a/examples/foldr.scm +++ b/examples/foldr.scm @@ -1,10 +1,10 @@ -(define foldr (lambda (op init lst) +(define (foldr op init lst) (if (null? lst) init - (op (car lst) (foldr op init (cdr lst)))))) + (op (car lst) (foldr op init (cdr lst))))) -(define sum (lambda (lst) - (foldr + 0 lst))) +(define (sum lst) + (foldr + 0 lst)) (display (sum (list 1 2 3))) (newline) diff --git a/examples/map.scm b/examples/map.scm index 67f5f40..48b703e 100644 --- a/examples/map.scm +++ b/examples/map.scm @@ -1,9 +1,7 @@ -(define map (lambda (fn lst) +(define (map fn lst) (if (null? lst) lst - (cons (fn (car lst)) (map fn (cdr lst)))))) + (cons (fn (car lst)) (map fn (cdr lst))))) -(define double (lambda (x) (* 2 x))) - -(display (map double (list 1 2 3))) +(display (map (lambda (x) (* 2 x)) (list 1 2 3))) (newline) diff --git a/examples/misc.scm b/examples/misc.scm index d8e712e..a97fe6e 100644 --- a/examples/misc.scm +++ b/examples/misc.scm @@ -1,5 +1,5 @@ -(define not (lambda (x) - (if (equal? #t x) #f #t))) +(define (not x) + (if (equal? #t x) #f #t)) (define PI 3.41) diff --git a/examples/variables.scm b/examples/variables.scm index c013efe..8210f3b 100644 --- a/examples/variables.scm +++ b/examples/variables.scm @@ -1,10 +1,10 @@ (define var) -(define fn (lambda () - (define inner (lambda () +(define (fn) + (define (inner) (set! var "still in global scope") - 0)) - (inner))) + #f) + (inner)) (fn)