axiom-developer
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Axiom-developer] B-MDEF


From: Gabriel Dos Reis
Subject: [Axiom-developer] B-MDEF
Date: 10 Aug 2007 13:35:05 -0500

Tim --

  The SBCL compiler does not like the definition of B-MDEF in def.lisp:

(defun B-MDEF (FORM SIGNATURE $BODY)
  (declare (ignore SIGNATURE))
  (let* ($OpAssoc
         ($op (first form))
         (argl (cdr form))
         (GARGL (MAPCAR '(LAMBDA (X) (GENSYM)) ARGL))
         ($BODY (SUBLISLIS GARGL ARGL (|bootTransform| (DEFTRAN $BODY))))
         ($BODY (LIST 'SUBLISLIS (CONS 'LIST GARGL) 
                      (LIST 'QUOTE GARGL) (LIST 'QUOTE $BODY))))
    (COMP (SUBLIS $OPASSOC
                  (LIST (LIST $OP (LIST 'MLAMBDA (CONS () GARGL) $BODY)))))))

Saying that:

; file: /home/gdr/build/bi/src/interp/def.lisp
; in: DEFUN B-MDEF
;     (MAPCAR '(LAMBDA (BOOT::X) (GENSYM)) BOOT::ARGL)
; --> LET SB-INT:DO-ANONYMOUS BLOCK LET TAGBODY TAGBODY RPLACD LET PROGN SETF 
; --> SB-KERNEL:%RPLACD SETQ THE LIST CONS 
; ==>
;   (FUNCALL #:G70 (CAR #:G69))
; 
; caught WARNING:
;   Asserted type (OR FUNCTION SYMBOL) conflicts with derived type
;   (VALUES CONS &OPTIONAL).
;   See also:
;     The SBCL Manual, Node "Handling of Types"


Indeed, in 
        
        (GARGL (MAPCAR '(LAMBDA (X) (GENSYM)) ARGL))

we really want to say

        (GARGL (MAPCAR #'(LAMBDA (X) (GENSYM)) ARGL))
                       ^
                     was missing

-- Gaby




reply via email to

[Prev in Thread] Current Thread [Next in Thread]