nendo 0.5.3 → 0.5.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/init.nnd +7 -5
- data/lib/init.nndc +2078 -1997
- data/lib/nendo/experimental.nnd +58 -0
- data/lib/nendo/experimental.nndc +2614 -3
- data/lib/nendo/test.nnd +40 -8
- data/lib/nendo/test.nndc +704 -361
- data/lib/nendo.rb +29 -3
- data/lib/rfc/json.nndc +6 -6
- data/lib/srfi-1.nndc +147 -147
- data/lib/srfi-2.nndc +90 -90
- data/lib/srfi-26.nndc +251 -251
- data/lib/text/html-lite.nndc +23 -23
- data/lib/util/combinations.nndc +191 -191
- data/lib/util/list.nnd +2 -0
- data/lib/util/list.nndc +692 -609
- data/lib/util/match.nndc +5551 -5551
- data/test/nendo_spec.rb +19 -3
- data/test/syntax_spec.rb +339 -15
- data/test/testframework_spec.rb +153 -0
- data/test/util-list-test.nnd +6 -6
- metadata +6 -5
data/lib/init.nnd
CHANGED
@@ -311,7 +311,7 @@
|
|
311
311
|
(else (if (zero? level)
|
312
312
|
(cond ((eq? (car form) 'unquote) (car (cdr form)))
|
313
313
|
((eq? (car form) 'unquote-splicing)
|
314
|
-
(raise RuntimeError (+ "Error: Unquote-splicing wasn't in a list: " (write-to-string form))
|
314
|
+
(%raise RuntimeError (+ "Error: Unquote-splicing wasn't in a list: " (write-to-string form))
|
315
315
|
(sprintf "%s:%s outside list." (*FILE*) (*LINE*))))
|
316
316
|
((and (pair? (car form))
|
317
317
|
(eq? (car (car form)) 'unquote-splicing))
|
@@ -331,7 +331,7 @@
|
|
331
331
|
|
332
332
|
(define unquote
|
333
333
|
(macro (lst)
|
334
|
-
(raise RuntimeError "Error: unquote appeared outside quasiquote" (sprintf "%s:%s outside quasiquote" (*FILE*) (*LINE*)))))
|
334
|
+
(%raise RuntimeError "Error: unquote appeared outside quasiquote" (sprintf "%s:%s outside quasiquote" (*FILE*) (*LINE*)))))
|
335
335
|
|
336
336
|
|
337
337
|
(define unquote-splicing
|
@@ -856,11 +856,11 @@
|
|
856
856
|
,@(cddr lst))))))
|
857
857
|
(cond
|
858
858
|
((> 2 (length lst))
|
859
|
-
(raise ArgumentError ". dot-operator requires 2+ arguments." (sprintf "%s:%s in dot-operator" (*FILE*) (*LINE*))))
|
859
|
+
(%raise ArgumentError ". dot-operator requires 2+ arguments." (sprintf "%s:%s in dot-operator" (*FILE*) (*LINE*))))
|
860
860
|
(else
|
861
861
|
(if (symbol? (second lst))
|
862
862
|
(generate-method-call-form lst)
|
863
|
-
(raise TypeError ". dot-operator requires method name as symbol." (sprintf "%s:%s in dot-operator" (*FILE*) (*LINE*))))))))
|
863
|
+
(%raise TypeError ". dot-operator requires method name as symbol." (sprintf "%s:%s in dot-operator" (*FILE*) (*LINE*))))))))
|
864
864
|
|
865
865
|
|
866
866
|
(define (with-open filename pred . lst)
|
@@ -1299,7 +1299,7 @@
|
|
1299
1299
|
;; ----------------------------------------
|
1300
1300
|
(define (%setup-%tailcall-mark sexp)
|
1301
1301
|
(define (reserved? sym)
|
1302
|
-
(let* ([reserved-orig '(quote syntax-quote macro %syntax begin lambda if %let letrec define define-syntax)]
|
1302
|
+
(let* ([reserved-orig '(quote syntax-quote macro %syntax begin lambda if %let letrec define define-syntax %guard)]
|
1303
1303
|
[reserved (append reserved-orig
|
1304
1304
|
(map
|
1305
1305
|
(lambda (orig)
|
@@ -1368,6 +1368,8 @@
|
|
1368
1368
|
sexp)
|
1369
1369
|
((%syntax /nendo/core/%syntax)
|
1370
1370
|
sexp)
|
1371
|
+
((%guard /nendo/core/%guard)
|
1372
|
+
sexp)
|
1371
1373
|
((begin /nendo/core/begin)
|
1372
1374
|
`(,_car
|
1373
1375
|
,@(setup-proc-body (cdr sexp))))
|