Hi,

  This patchlet fixes translation of Boot definition of global variables.

Currently, an assignment to a Boot global variable (which actually is a
definition) is translated to Lisp in terms of SETQ.  That elicites
irritating warnings from Lisp compilers to the effect that the
variable is undefined. The resulting share noise obscures the rest of
other useful warnings.  The fix is a one-liner.  The rest of the patch
consists of the mechnical update of the cached Lisp translation.  One
day, the latter will go away.

Applid to build-improvements.

-- Gaby

2007-05-21  Gabriel Dos Reis  <[EMAIL PROTECTED]>

        Translate definitions of global variables as defparameters.
        * ast.boot.pamphlet: Update Lisp translation.
        * includer.boot.pamphlet: Likwise.
        * tokens.boot.pamphlet: Likewise.
        * translator.boot.pamphlet (bpOutItem): Use DEFPARAMETER for
        assignment at global scope.
        Update Lisp translation.

*** ast.boot.pamphlet   (revision 15502)
--- ast.boot.pamphlet   (local)
*************** bfDs n== if n=0 then '"" else CONCAT('"D
*** 1001,1007 ****
  <<ast.clisp>>=
  (IN-PACKAGE "BOOTTRAN")
  
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL) (SETQ |$inDefIS| NIL))
  
  (DEFUN |bfGenSymbol| ()
    (PROG ()
--- 1001,1007 ----
  <<ast.clisp>>=
  (IN-PACKAGE "BOOTTRAN")
  
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL) (DEFPARAMETER |$inDefIS| NIL))
  
  (DEFUN |bfGenSymbol| ()
    (PROG ()
*** includer.boot.pamphlet      (revision 15502)
--- includer.boot.pamphlet      (local)
*************** bPremStreamNull(s)==
*** 519,525 ****
  <<includer.clisp>>=
  (IN-PACKAGE "BOOTTRAN")
  
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL) (SETQ |bStreamNil| (LIST '|nullstream|)))
  
  (DEFUN |char| (|x|) (PROG () (RETURN (CHAR (PNAME |x|) 0))))
  
--- 519,526 ----
  <<includer.clisp>>=
  (IN-PACKAGE "BOOTTRAN")
  
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL) 
!   (DEFPARAMETER |bStreamNil| (LIST '|nullstream|)))
  
  (DEFUN |char| (|x|) (PROG () (RETURN (CHAR (PNAME |x|) 0))))
  
*** scanner.boot.pamphlet       (revision 15502)
--- scanner.boot.pamphlet       (local)
*************** shoePunCons()==
*** 580,586 ****
    (PROG () (RETURN (AND (CONSP |x|) (EQ (CAR |x|) |y|)))))
    
  (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL)
!   (SETQ *READ-DEFAULT-FLOAT-FORMAT* 'DOUBLE-FLOAT))
  
  (DEFUN DOUBLE (|x|) (PROG () (RETURN (FLOAT |x| 1.0))))
  
--- 580,586 ----
    (PROG () (RETURN (AND (CONSP |x|) (EQ (CAR |x|) |y|)))))
    
  (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL)
!   (DEFPARAMETER *READ-DEFAULT-FLOAT-FORMAT* 'DOUBLE-FLOAT))
  
  (DEFUN DOUBLE (|x|) (PROG () (RETURN (FLOAT |x| 1.0))))
  
*** tokens.boot.pamphlet        (revision 15502)
--- tokens.boot.pamphlet        (local)
*************** for i in [ _
*** 400,466 ****
  (IN-PACKAGE "BOOTTRAN")
  
  (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL)
!   (SETQ |shoeKeyWords|
!         (LIST (LIST "and" 'AND) (LIST "by" 'BY) (LIST "case" 'CASE)
!               (LIST "cross" 'CROSS) (LIST "else" 'ELSE)
!               (LIST "for" 'FOR) (LIST "if" 'IF) (LIST "in" 'IN)
!               (LIST "is" 'IS) (LIST "isnt" 'ISNT) (LIST "of" 'OF)
!               (LIST "or" 'OR) (LIST "repeat" 'REPEAT)
!               (LIST "return" 'RETURN) (LIST "structure" 'STRUCTURE)
!               (LIST "then" 'THEN) (LIST "until" 'UNTIL)
!               (LIST "where" 'WHERE) (LIST "while" 'WHILE)
!               (LIST "." 'DOT) (LIST ":" 'COLON) 
!               (LIST "::" 'COLON-COLON) (LIST "," 'COMMA) 
!               (LIST ";" 'SEMICOLON) (LIST "*" 'TIMES)
!               (LIST "**" 'POWER) (LIST "/" 'SLASH) (LIST "+" 'PLUS)
!               (LIST "-" 'MINUS) (LIST "<" 'LT) (LIST ">" 'GT)
!               (LIST "<=" 'LE) (LIST ">=" 'GE) (LIST "=" 'SHOEEQ)
!               (LIST "^" 'NOT) (LIST "^=" 'NE) (LIST ".." 'SEG)
!               (LIST "#" 'LENGTH) (LIST "=>" 'EXIT) (LIST ":=" 'BEC)
!               (LIST "==" 'DEF) (LIST "==>" 'MDEF) (LIST "(" 'OPAREN)
!               (LIST ")" 'CPAREN) (LIST "(|" 'OBRACK)
!               (LIST "|)" 'CBRACK) (LIST "[" 'OBRACK) (LIST "]" 'CBRACK)
!               (LIST "suchthat" 'BAR) (LIST "'" 'QUOTE) (LIST "|" 'BAR))))
! 
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL) 
!   (SETQ |shoeKeyTable| (|shoeKeyTableCons|)))
! 
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL) 
!   (SETQ |shoeSPACE| (QENUM "    " 0)))
! 
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL) 
!   (SETQ |shoeESCAPE| (QENUM "_  " 0)))
! 
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL) 
!   (SETQ |shoeLispESCAPE| (QENUM "!  " 0)))
! 
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL) 
!   (SETQ |shoeSTRINGCHAR| (QENUM "\"  " 0)))
! 
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL) 
!   (SETQ |shoePLUSCOMMENT| (QENUM "+   " 0)))
! 
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL) 
!   (SETQ |shoeMINUSCOMMENT| (QENUM "-   " 0)))
! 
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL) 
!   (SETQ |shoeDOT| (QENUM ".   " 0)))
! 
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL) 
!   (SETQ |shoeEXPONENT1| (QENUM "E   " 0)))
! 
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL) 
!   (SETQ |shoeEXPONENT2| (QENUM "e   " 0)))
! 
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL) 
!   (SETQ |shoeCLOSEPAREN| (QENUM ")   " 0)))
  
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL) (SETQ |shoeTAB| 9))
  
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL) 
!   (SETQ |shoeDict| (|shoeDictCons|)))
  
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL) (SETQ |shoePun| (|shoePunCons|)))
  
  (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL)
    (PROG ()
--- 400,466 ----
  (IN-PACKAGE "BOOTTRAN")
  
  (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL)
!   (DEFPARAMETER |shoeKeyWords|
!       (LIST (LIST "and" 'AND) (LIST "by" 'BY) (LIST "case" 'CASE)
!             (LIST "cross" 'CROSS) (LIST "else" 'ELSE) (LIST "for" 'FOR)
!             (LIST "if" 'IF) (LIST "in" 'IN) (LIST "is" 'IS)
!             (LIST "isnt" 'ISNT) (LIST "of" 'OF) (LIST "or" 'OR)
!             (LIST "repeat" 'REPEAT) (LIST "return" 'RETURN)
!             (LIST "structure" 'STRUCTURE) (LIST "then" 'THEN)
!             (LIST "until" 'UNTIL) (LIST "where" 'WHERE)
!             (LIST "while" 'WHILE) (LIST "." 'DOT) (LIST ":" 'COLON)
!             (LIST "::" 'COLON-COLON) (LIST "," 'COMMA)
!             (LIST ";" 'SEMICOLON) (LIST "*" 'TIMES) (LIST "**" 'POWER)
!             (LIST "/" 'SLASH) (LIST "+" 'PLUS) (LIST "-" 'MINUS)
!             (LIST "<" 'LT) (LIST ">" 'GT) (LIST "<=" 'LE)
!             (LIST ">=" 'GE) (LIST "=" 'SHOEEQ) (LIST "^" 'NOT)
!             (LIST "^=" 'NE) (LIST ".." 'SEG) (LIST "#" 'LENGTH)
!             (LIST "=>" 'EXIT) (LIST ":=" 'BEC) (LIST "==" 'DEF)
!             (LIST "==>" 'MDEF) (LIST "(" 'OPAREN) (LIST ")" 'CPAREN)
!             (LIST "(|" 'OBRACK) (LIST "|)" 'CBRACK) (LIST "[" 'OBRACK)
!             (LIST "]" 'CBRACK) (LIST "suchthat" 'BAR) (LIST "'" 'QUOTE)
!             (LIST "|" 'BAR))))
  
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL)
!   (DEFPARAMETER |shoeKeyTable| (|shoeKeyTableCons|)))
! 
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL)
!   (DEFPARAMETER |shoeSPACE| (QENUM "    " 0)))
! 
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL)
!   (DEFPARAMETER |shoeESCAPE| (QENUM "_  " 0)))
! 
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL)
!   (DEFPARAMETER |shoeLispESCAPE| (QENUM "!  " 0)))
! 
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL)
!   (DEFPARAMETER |shoeSTRINGCHAR| (QENUM "\"  " 0)))
! 
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL)
!   (DEFPARAMETER |shoePLUSCOMMENT| (QENUM "+   " 0)))
! 
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL)
!   (DEFPARAMETER |shoeMINUSCOMMENT| (QENUM "-   " 0)))
! 
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL)
!   (DEFPARAMETER |shoeDOT| (QENUM ".   " 0)))
! 
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL)
!   (DEFPARAMETER |shoeEXPONENT1| (QENUM "E   " 0)))
! 
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL)
!   (DEFPARAMETER |shoeEXPONENT2| (QENUM "e   " 0)))
! 
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL)
!   (DEFPARAMETER |shoeCLOSEPAREN| (QENUM ")   " 0)))
  
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL) (DEFPARAMETER |shoeTAB| 9))
  
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL)
!   (DEFPARAMETER |shoeDict| (|shoeDictCons|)))
! 
! (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL)
!   (DEFPARAMETER |shoePun| (|shoePunCons|)))
  
  (EVAL-WHEN (:EXECUTE :LOAD-TOPLEVEL)
    (PROG ()
*** translator.boot.pamphlet    (revision 15502)
--- translator.boot.pamphlet    (local)
*************** bpOutItem()==
*** 419,425 ****
      EQCAR(b,"TUPLE")=> bpPush cdr b
      EQCAR(b,"+LINE")=> bpPush [ b ]
      b is ["L%T",l,r] and IDENTP l =>
!                  bpPush [shoeEVALANDFILEACTQ ["SETQ",l,r]]
      b:=shoeCompTran ["LAMBDA",["x"],b]
      bpPush [shoeEVALANDFILEACTQ CADDR b]
   
--- 419,425 ----
      EQCAR(b,"TUPLE")=> bpPush cdr b
      EQCAR(b,"+LINE")=> bpPush [ b ]
      b is ["L%T",l,r] and IDENTP l =>
!                  bpPush [shoeEVALANDFILEACTQ ["DEFPARAMETER",l,r]]
      b:=shoeCompTran ["LAMBDA",["x"],b]
      bpPush [shoeEVALANDFILEACTQ CADDR b]
   
*************** PSTOUT string==
*** 1369,1375 ****
                                (PROGN (SETQ |r| (CAR |ISTMP#2|)) 'T)))))
                  (IDENTP |l|))
             (|bpPush|
!                (LIST (|shoeEVALANDFILEACTQ| (LIST 'SETQ |l| |r|)))))
            ('T
             (PROGN
               (SETQ |b| (|shoeCompTran| (LIST 'LAMBDA (LIST '|x|) |b|)))
--- 1369,1376 ----
                                (PROGN (SETQ |r| (CAR |ISTMP#2|)) 'T)))))
                  (IDENTP |l|))
             (|bpPush|
!                (LIST (|shoeEVALANDFILEACTQ| 
!                          (LIST 'DEFPARAMETER |l| |r|)))))
            ('T
             (PROGN
               (SETQ |b| (|shoeCompTran| (LIST 'LAMBDA (LIST '|x|) |b|)))



_______________________________________________
Axiom-developer mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/axiom-developer

Reply via email to