summaryrefslogtreecommitdiff
path: root/lang/elisp/internals/lambda.scm
diff options
context:
space:
mode:
authorNeil Jerram <neil@ossau.uklinux.net>2002-02-08 11:50:51 +0000
committerNeil Jerram <neil@ossau.uklinux.net>2002-02-08 11:50:51 +0000
commite79236a948466c0bc62aaa6c1d6118ee34373669 (patch)
tree7c208a2282313542b208033b237a76c4e8917bc6 /lang/elisp/internals/lambda.scm
parent1f761e0a5941b4743199d57e885026cc02badf35 (diff)
downloadguile-e79236a948466c0bc62aaa6c1d6118ee34373669.tar.gz
* Complete Elisp translator work.
Diffstat (limited to 'lang/elisp/internals/lambda.scm')
-rw-r--r--lang/elisp/internals/lambda.scm46
1 files changed, 23 insertions, 23 deletions
diff --git a/lang/elisp/internals/lambda.scm b/lang/elisp/internals/lambda.scm
index 96b21f650..9917c08bd 100644
--- a/lang/elisp/internals/lambda.scm
+++ b/lang/elisp/internals/lambda.scm
@@ -67,28 +67,28 @@
`(((,> %--num-args ,(+ num-required num-optional))
(,error "Wrong number of args (too many args)"))))
(else
- (@bind ,(append (map (lambda (i)
- (list (list-ref required i)
- `(,list-ref %--args ,i)))
- (iota num-required))
- (map (lambda (i)
- (let ((i+nr (+ i num-required)))
- (list (list-ref optional i)
- `(,if (,> %--num-args ,i+nr)
- (,list-ref %--args ,i+nr)
- #f))))
- (iota num-optional))
- (if rest
- (list (list rest
- `(,if (,> %--num-args
- ,(+ num-required
- num-optional))
- (,list-tail %--args
- ,(+ num-required
- num-optional))
- '())))
- '()))
- ,@(map transformer (cddr exp)))))))))))
+ (, @bind ,(append (map (lambda (i)
+ (list (list-ref required i)
+ `(,list-ref %--args ,i)))
+ (iota num-required))
+ (map (lambda (i)
+ (let ((i+nr (+ i num-required)))
+ (list (list-ref optional i)
+ `(,if (,> %--num-args ,i+nr)
+ (,list-ref %--args ,i+nr)
+ ,%nil))))
+ (iota num-optional))
+ (if rest
+ (list (list rest
+ `(,if (,> %--num-args
+ ,(+ num-required
+ num-optional))
+ (,list-tail %--args
+ ,(+ num-required
+ num-optional))
+ ,%nil)))
+ '()))
+ ,@(map transformer (cddr exp)))))))))))
(define (set-not-subr! proc boolean)
(set! (not-subr? proc) boolean))
@@ -101,7 +101,7 @@
(,set-procedure-property! %--lambda (,quote name) (,quote ,name))
(,set-not-subr! %--lambda #t)
,@(if is
- `((,set! (,interactive-spec %--lambda) (,quote ,is)))
+ `((,set! (,interactive-specification %--lambda) (,quote ,is)))
'())
%--lambda)))