summaryrefslogtreecommitdiff
path: root/scheme
diff options
context:
space:
mode:
authormichele.simionato <devnull@localhost>2009-05-18 16:51:34 +0000
committermichele.simionato <devnull@localhost>2009-05-18 16:51:34 +0000
commitba5ebf54417aae9d796e1cbf34e123ea36c333ae (patch)
tree11c48093d7f2d232e038db2a86f65e460bb6bfff /scheme
parent161a9e471eea4aec8b063d94f8880b03b26c6a45 (diff)
downloadmicheles-ba5ebf54417aae9d796e1cbf34e123ea36c333ae.tar.gz
Work for my Scheme talk
Diffstat (limited to 'scheme')
-rw-r--r--scheme/aps/lang.sls3
-rw-r--r--scheme/experimental/M.sls4
-rw-r--r--scheme/experimental/my-lib.sls8
3 files changed, 11 insertions, 4 deletions
diff --git a/scheme/aps/lang.sls b/scheme/aps/lang.sls
index a884e55..fd0ec4d 100644
--- a/scheme/aps/lang.sls
+++ b/scheme/aps/lang.sls
@@ -21,8 +21,7 @@
(sub (: let-form e)
#'e)
(sub (: let-form e1 e2)
- (syntax-violation ': "Odd number of arguments"
- (syntax->datum #'(let-form e1 e2))))
+ (syntax-violation ': "Odd number of arguments" #'let-form))
(sub (: let-form patt value rest ... expr)
#'(let-form ((patt value)) (: let-form rest ... expr))
(identifier? #'let-form)
diff --git a/scheme/experimental/M.sls b/scheme/experimental/M.sls
index 9bc2d40..01e6269 100644
--- a/scheme/experimental/M.sls
+++ b/scheme/experimental/M.sls
@@ -2,6 +2,6 @@
(library (experimental M)
(export a)
(import (rnrs) (experimental L))
-(when #f (m)); this line is never executed at runtime
-(display "M instantiated\n")
+(m); this line is expanded at compile-time
+(display "M instantiated\n"); at run-time
)
diff --git a/scheme/experimental/my-lib.sls b/scheme/experimental/my-lib.sls
new file mode 100644
index 0000000..7d6fa21
--- /dev/null
+++ b/scheme/experimental/my-lib.sls
@@ -0,0 +1,8 @@
+#!r6rs
+(library (experimental my-lib)
+(export a b)
+(import (rnrs))
+(define a 42)
+(define b 0)
+(display "my-lib instantiated!\n")
+)