CMUCL commit: intl-branch src (5 files)

Raymond Toy rtoy at common-lisp.net
Wed Feb 10 00:42:32 CET 2010


    Date: Tuesday, February 9, 2010 @ 18:42:32
  Author: rtoy
    Path: /project/cmucl/cvsroot/src
     Tag: intl-branch

Modified: code/ntrace.lisp code/numbers.lisp code/package.lisp
          i18n/locale/cmucl.pot i18n/locale/ko/LC_MESSAGES/cmucl.po

Mark translatable strings; update cmucl.pot and ko/cmucl.po
accordingly.


-------------------------------------+
 code/ntrace.lisp                    |   36 -
 code/numbers.lisp                   |  184 ++---
 code/package.lisp                   |  202 +++---
 i18n/locale/cmucl.pot               | 1096 +++++++++++++++++++++++++++++++++-
 i18n/locale/ko/LC_MESSAGES/cmucl.po | 1094 +++++++++++++++++++++++++++++++++
 5 files changed, 2369 insertions(+), 243 deletions(-)


Index: src/code/ntrace.lisp
diff -u src/code/ntrace.lisp:1.43.12.1 src/code/ntrace.lisp:1.43.12.2
--- src/code/ntrace.lisp:1.43.12.1	Mon Feb  8 12:15:48 2010
+++ src/code/ntrace.lisp	Tue Feb  9 18:42:32 2010
@@ -5,7 +5,7 @@
 ;;; Carnegie Mellon University, and has been placed in the public domain.
 ;;;
 (ext:file-comment
-  "$Header: /project/cmucl/cvsroot/src/code/ntrace.lisp,v 1.43.12.1 2010-02-08 17:15:48 rtoy Exp $")
+  "$Header: /project/cmucl/cvsroot/src/code/ntrace.lisp,v 1.43.12.2 2010-02-09 23:42:32 rtoy Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -28,15 +28,15 @@
 (use-package :fwrappers)
 
 (defvar *trace-values* nil
-  "This is bound to the returned values when evaluating :BREAK-AFTER and
+  _N"This is bound to the returned values when evaluating :BREAK-AFTER and
    :PRINT-AFTER forms.")
 
 (defvar *max-trace-indentation* 40
-  "If the trace indentation exceeds this value, then indentation restarts at
+  _N"If the trace indentation exceeds this value, then indentation restarts at
    0.")
 
 (defvar *trace-encapsulate-default* :default
-  "The default value for the :ENCAPSULATE option to trace.")
+  _N"The default value for the :ENCAPSULATE option to trace.")
 
 (defvar *trace-encapsulate-package-names*
   '("LISP"
@@ -51,7 +51,7 @@
     "SYSTEM"
     "COMPILER"
     "TRACE")
-  "List of package names.  Encapsulate functions from these packages
+  _N"List of package names.  Encapsulate functions from these packages
    by default.  This should at least include the packages of functions
    used by TRACE, directly or indirectly.")
 
@@ -163,7 +163,7 @@
       (typecase x
 	(symbol
 	 (cond ((special-operator-p x)
-		(error "Can't trace special form ~S." x))
+		(error _"Can't trace special form ~S." x))
 	       ((macro-function x))
 	       (t
 		(values (fdefinition x) t))))
@@ -302,7 +302,7 @@
   (when (and break (funcall (cdr break) frame))
     (di:flush-frames-above frame)
     (let ((*stack-top-hint* frame))
-      (break "Breaking ~A traced call to ~S:" where
+      (break _"Breaking ~A traced call to ~S:" where
 	     (trace-info-what info)))))
 
 ;;; DISCARD-INVALID-ENTRIES  --  Internal
@@ -398,7 +398,7 @@
 	    (pprint-logical-block (*standard-output* nil)
 	      (print-trace-indentation)
 	      (pprint-indent :current 2)
-	      (format t "~S returned" (trace-info-what info))
+	      (format t _"~S returned" (trace-info-what info))
 	      (dolist (v *trace-values*)
 		(write-char #\space)
 		(pprint-newline :linear)
@@ -458,7 +458,7 @@
 		    (nth-value 2 (trace-fdefinition definition))))
 	  (trace-fdefinition function-or-name))
     (when (gethash (or local fun) *traced-functions*)
-      (warn "Function ~S already TRACE'd, retracing it." function-or-name)
+      (warn _"Function ~S already TRACE'd, retracing it." function-or-name)
       (untrace-1 fun))
     
     (let* ((debug-fun (di:function-debug-function fun :local-name local))
@@ -472,7 +472,7 @@
 		     encapsulate-p)
 		    (:compiled-closure
 		     (unless (functionp function-or-name)
-		       (warn "Tracing shared code for ~S:~%  ~S"
+		       (warn _"Tracing shared code for ~S:~%  ~S"
 			     function-or-name fun))
 		     encapsulate-p)
 		    ((:interpreted :interpreted-closure
@@ -504,7 +504,7 @@
 		   (declare (ignore validp))
 		   (unless (or (stringp block-name)
 			       (fboundp block-name))
-		     (warn "~S name is not a defined global function: ~S"
+		     (warn _"~S name is not a defined global function: ~S"
 			   type wherein))))))
 	(verify-wherein (trace-info-wherein info) :wherein)
 	(verify-wherein (trace-info-wherein-only info) :wherein-only))
@@ -513,10 +513,10 @@
       (cond
        (encapsulated
 	(unless named
-	  (error "Can't use encapsulation to trace anonymous function ~S."
+	  (error _"Can't use encapsulation to trace anonymous function ~S."
 		 fun))
 	(when (listp fun)
-	  (error "Can't use encapsulation to trace local flet/labels function ~S."
+	  (error _"Can't use encapsulation to trace local flet/labels function ~S."
 		 fun))
 	(fwrap function-or-name #'trace-fwrapper :type 'trace
 	       :user-data info))
@@ -626,7 +626,7 @@
 	     (t (return)))
 	   (pop current)
 	   (unless current
-	     (error "Missing argument to ~S TRACE option." option))
+	     (error _"Missing argument to ~S TRACE option." option))
 	   (pop current)))
       current)))
 
@@ -661,7 +661,7 @@
 			  (trace-1 name ',options))))))
 	   ((and (keywordp name)
 		 (not (or (fboundp name) (macro-function name))))
-	    (error "Unknown TRACE option: ~S" name))
+	    (error _"Unknown TRACE option: ~S" name))
 	   ;;
 	   ;; Method name -> trace method functions.
 	   ((and (consp name) (eq (car name) 'method))
@@ -689,7 +689,7 @@
 ;;; TRACE -- Public.
 ;;;
 (defmacro trace (&rest specs)
-  "TRACE {Option Global-Value}* {Name {Option Value}*}*
+  _N"TRACE {Option Global-Value}* {Name {Option Value}*}*
    TRACE is a debugging tool that prints information when specified functions
    are called.  In its simplest form:
        (trace Name-1 Name-2 ...)
@@ -786,7 +786,7 @@
     (let* ((key (or local fun))
 	   (info (gethash key *traced-functions*)))
       (cond ((not info)
-	     (warn "Function is not TRACE'd -- ~S." function-or-name))
+	     (warn _"Function is not TRACE'd -- ~S." function-or-name))
 	    (t
 	     (cond ((trace-info-encapsulated info)
 		    (funwrap (trace-info-what info) :type 'trace))
@@ -806,7 +806,7 @@
   t)
 
 (defmacro untrace (&rest specs)
-  "Removes tracing from the specified functions.  With no args, untraces all
+  _N"Removes tracing from the specified functions.  With no args, untraces all
    functions."
   (if specs
       (collect ((res))
Index: src/code/numbers.lisp
diff -u src/code/numbers.lisp:1.67.10.1 src/code/numbers.lisp:1.67.10.2
--- src/code/numbers.lisp:1.67.10.1	Mon Feb  8 12:15:48 2010
+++ src/code/numbers.lisp	Tue Feb  9 18:42:32 2010
@@ -5,7 +5,7 @@
 ;;; Carnegie Mellon University, and has been placed in the public domain.
 ;;;
 (ext:file-comment
-  "$Header: /project/cmucl/cvsroot/src/code/numbers.lisp,v 1.67.10.1 2010-02-08 17:15:48 rtoy Exp $")
+  "$Header: /project/cmucl/cvsroot/src/code/numbers.lisp,v 1.67.10.2 2010-02-09 23:42:32 rtoy Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -48,13 +48,13 @@
 ;;;
 (defun parse-number-dispatch (vars result types var-types body)
   (cond ((null vars)
-	 (unless (null types) (error "More types than vars."))
+	 (unless (null types) (error _"More types than vars."))
 	 (when (cdr result)
-	   (error "Duplicate case: ~S." body))
+	   (error _"Duplicate case: ~S." body))
 	 (setf (cdr result)
 	       (sublis var-types body :test #'equal)))
 	((null types)
-	 (error "More vars than types."))
+	 (error _"More vars than types."))
 	(t
 	 (flet ((frob (var type)
 		  (parse-number-dispatch
@@ -119,7 +119,7 @@
 ;;; NUMBER-DISPATCH  --  Interface
 ;;;
 (defmacro number-dispatch (var-specs &body cases)
-  "NUMBER-DISPATCH ({(Var Type)}*) {((Type*) Form*) | (Symbol Arg*)}*
+  _N"NUMBER-DISPATCH ({(Var Type)}*) {((Type*) Form*) | (Symbol Arg*)}*
   A vaguely case-like macro that does number cross-product dispatches.  The
   Vars are the variables we are dispatching off of.  The Type paired with each
   Var is used in the error message when no case matches.  Each case specifies a
@@ -155,7 +155,7 @@
 		    (error 'simple-type-error :datum ,var
 			   :expected-type ',type
 			   :format-control
-			   "Argument ~A is not a ~S: ~S."
+			   _"Argument ~A is not a ~S: ~S."
 			   :format-arguments
 			   (list ',var ',type ,var))))))
       
@@ -285,7 +285,7 @@
 ;;;; Complexes:
 
 (defun upgraded-complex-part-type (spec &optional environment)
-  "Returns the element type of the most specialized COMPLEX number type that
+  _N"Returns the element type of the most specialized COMPLEX number type that
    can hold parts of type Spec."
   (declare (ignore environment))
   (cond ((subtypep spec 'single-float)
@@ -307,8 +307,8 @@
 	 'real)
 	((kernel::hairy-type-p (specifier-type spec))
 	 ;; Do we really want to produce this error here?
-	 (cerror "Assume this is a subtype of REAL anyway."
-		 "Cannot determine if ~S is a subtype of REAL."
+	 (cerror _"Assume this is a subtype of REAL anyway."
+		 _"Cannot determine if ~S is a subtype of REAL."
 		 spec)
 	'real)
 	(t
@@ -316,11 +316,11 @@
 	 (error 'type-error
 		:datum spec
 		:expected-type 'real
-		:format-control "Complex numbers cannot have components of type ~S."
+		:format-control _"Complex numbers cannot have components of type ~S."
 		:format-arguments (list spec)))))
 
 (defun complex (realpart &optional (imagpart 0))
-  "Builds a complex number from the specified components."
+  _N"Builds a complex number from the specified components."
   (flet ((%%make-complex (realpart imagpart)
 	   (cond #+long-float
 		 ((and (typep realpart 'long-float)
@@ -348,7 +348,7 @@
     (float-contagion %%make-complex realpart imagpart (rational)))))
 
 (defun realpart (number)
-  "Extracts the real part of a number."
+  _N"Extracts the real part of a number."
   (typecase number
     #+long-float
     ((complex long-float)
@@ -366,7 +366,7 @@
      number)))
 
 (defun imagpart (number)
-  "Extracts the imaginary part of a number."
+  _N"Extracts the imaginary part of a number."
   (typecase number
     #+long-float
     ((complex long-float)
@@ -386,14 +386,14 @@
      0)))
 
 (defun conjugate (number)
-  "Returns the complex conjugate of NUMBER.  For non-complex numbers, this is
+  _N"Returns the complex conjugate of NUMBER.  For non-complex numbers, this is
   an identity."
   (if (complexp number)
       (complex (realpart number) (- (imagpart number)))
       number))
 
 (defun signum (number)
-  "If NUMBER is zero, return NUMBER, else return (/ NUMBER (ABS NUMBER))."
+  _N"If NUMBER is zero, return NUMBER, else return (/ NUMBER (ABS NUMBER))."
   (if (zerop number)
       number
       (if (rationalp number)
@@ -404,11 +404,11 @@
 ;;;; Ratios.
 
 (defun numerator (number)
-  "Return the numerator of NUMBER, which must be rational."
+  _N"Return the numerator of NUMBER, which must be rational."
   (numerator number))
 
 (defun denominator (number)
-  "Return the denominator of NUMBER, which must be rational."
+  _N"Return the denominator of NUMBER, which must be rational."
   (denominator number))
 
 
@@ -425,12 +425,12 @@
 	     ((null args) res)))))
 
 (define-arith + 0
-  "Returns the sum of its arguments.  With no args, returns 0.")
+  _N"Returns the sum of its arguments.  With no args, returns 0.")
 (define-arith * 1
-  "Returns the product of its arguments.  With no args, returns 1.")
+  _N"Returns the product of its arguments.  With no args, returns 1.")
 
 (defun - (number &rest more-numbers)
-  "Subtracts the second and all subsequent arguments from the first.
+  _N"Subtracts the second and all subsequent arguments from the first.
   With one arg, negates it."
   (if more-numbers
       (do ((nlist more-numbers (cdr nlist))
@@ -441,7 +441,7 @@
       (- number)))
 
 (defun / (number &rest more-numbers)
-  "Divides the first arg by each of the following arguments, in turn.
+  _N"Divides the first arg by each of the following arguments, in turn.
   With one arg, returns reciprocal."
   (if more-numbers
       (do ((nlist more-numbers (cdr nlist))
@@ -452,11 +452,11 @@
       (/ number)))
 
 (defun 1+ (number)
-  "Returns NUMBER + 1."
+  _N"Returns NUMBER + 1."
   (1+ number))
 
 (defun 1- (number)
-  "Returns NUMBER - 1."
+  _N"Returns NUMBER - 1."
   (1- number))
 
 
@@ -677,7 +677,7 @@
 ;;;; Truncate & friends.
 
 (defun truncate (number &optional (divisor 1))
-  "Returns number (or number/divisor) as an integer, rounded toward 0.
+  _N"Returns number (or number/divisor) as an integer, rounded toward 0.
   The second returned value is the remainder."
   (macrolet ((truncate-float (rtype)
 	       `(let* ((float-div (coerce divisor ',rtype))
@@ -749,7 +749,7 @@
 ;;; the divisor.
 ;;;
 (defun floor (number &optional (divisor 1))
-  "Returns the greatest integer not greater than number, or number/divisor.
+  _N"Returns the greatest integer not greater than number, or number/divisor.
   The second returned value is (mod number divisor)."
   (multiple-value-bind (tru rem) (truncate number divisor)
     (if (and (not (zerop rem))
@@ -765,7 +765,7 @@
 ;;; the divisor.
 ;;;
 (defun ceiling (number &optional (divisor 1))
-  "Returns the smallest integer not less than number, or number/divisor.
+  _N"Returns the smallest integer not less than number, or number/divisor.
   The second returned value is the remainder."
   (multiple-value-bind (tru rem) (truncate number divisor)
     (if (and (not (zerop rem))
@@ -777,7 +777,7 @@
 
 
 (defun round (number &optional (divisor 1))
-  "Rounds number (or number/divisor) to nearest integer.
+  _N"Rounds number (or number/divisor) to nearest integer.
   The second returned value is the remainder."
   (if (eql divisor 1)
       (round number)
@@ -800,13 +800,13 @@
 
 
 (defun rem (number divisor)
-  "Returns second result of TRUNCATE."
+  _N"Returns second result of TRUNCATE."
   (multiple-value-bind (tru rem) (truncate number divisor)
     (declare (ignore tru))
     rem))
 
 (defun mod (number divisor)
-  "Returns second result of FLOOR."
+  _N"Returns second result of FLOOR."
   (let ((rem (rem number divisor)))
     (if (and (not (zerop rem))
 	     (if (minusp divisor)
@@ -817,7 +817,7 @@
 
 
 (defun ftruncate (number &optional (divisor 1))
-  "Same as TRUNCATE, but returns first value as a float."
+  _N"Same as TRUNCATE, but returns first value as a float."
   (macrolet ((truncate-float (rtype)
 	       `(let* ((float-div (coerce divisor ',rtype))
 		       (res (%unary-ftruncate (/ number float-div))))
@@ -852,7 +852,7 @@
 
 
 (defun ffloor (number &optional (divisor 1))
-  "Same as FLOOR, but returns first value as a float."
+  _N"Same as FLOOR, but returns first value as a float."
   (multiple-value-bind (tru rem) (ftruncate number divisor)
     (if (and (not (zerop rem))
 	     (if (minusp divisor)
@@ -862,7 +862,7 @@
 	(values tru rem))))
 
 (defun fceiling (number &optional (divisor 1))
-  "Same as CEILING, but returns first value as a float." 
+  _N"Same as CEILING, but returns first value as a float." 
   (multiple-value-bind (tru rem) (ftruncate number divisor)
     (if (and (not (zerop rem))
 	     (if (minusp divisor)
@@ -873,7 +873,7 @@
 
 
 (defun fround (number &optional (divisor 1))
-  "Same as ROUND, but returns first value as a float."
+  _N"Same as ROUND, but returns first value as a float."
   (multiple-value-bind (res rem)
       (round number divisor)
     (values (float res (if (floatp rem) rem 1.0)) rem)))
@@ -881,7 +881,7 @@
 ;;;; Comparisons:
 
 (defun = (number &rest more-numbers)
-  "Returns T if all of its arguments are numerically equal, NIL otherwise."
+  _N"Returns T if all of its arguments are numerically equal, NIL otherwise."
   (declare (optimize (safety 2)) (number number)
 	   (dynamic-extent more-numbers))
   (do ((nlist more-numbers (cdr nlist)))
@@ -890,7 +890,7 @@
      (if (not (= (car nlist) number)) (return nil))))
 
 (defun /= (number &rest more-numbers)
-  "Returns T if no two of its arguments are numerically equal, NIL otherwise."
+  _N"Returns T if no two of its arguments are numerically equal, NIL otherwise."
   (declare (optimize (safety 2)) (number number)
 	   (dynamic-extent more-numbers))
   (do* ((head number (car nlist))
@@ -904,7 +904,7 @@
        (return nil))))
 
 (defun < (number &rest more-numbers)
-  "Returns T if its arguments are in strictly increasing order, NIL otherwise."
+  _N"Returns T if its arguments are in strictly increasing order, NIL otherwise."
   (declare (optimize (safety 2)) (real number)
 	   (dynamic-extent more-numbers))
   (do* ((n number (car nlist))
@@ -914,7 +914,7 @@
      (if (not (< n (car nlist))) (return nil))))
 
 (defun > (number &rest more-numbers)
-  "Returns T if its arguments are in strictly decreasing order, NIL otherwise."
+  _N"Returns T if its arguments are in strictly decreasing order, NIL otherwise."
   (declare (optimize (safety 2)) (real number)
 	   (dynamic-extent more-numbers))
   (do* ((n number (car nlist))
@@ -924,7 +924,7 @@
      (if (not (> n (car nlist))) (return nil))))
 
 (defun <= (number &rest more-numbers)
-  "Returns T if arguments are in strictly non-decreasing order, NIL otherwise."
+  _N"Returns T if arguments are in strictly non-decreasing order, NIL otherwise."
   (declare (optimize (safety 2)) (real number)
 	   (dynamic-extent more-numbers))
   (do* ((n number (car nlist))
@@ -934,7 +934,7 @@
      (if (not (<= n (car nlist))) (return nil))))
 
 (defun >= (number &rest more-numbers)
-  "Returns T if arguments are in strictly non-increasing order, NIL otherwise."
+  _N"Returns T if arguments are in strictly non-increasing order, NIL otherwise."
   (declare (optimize (safety 2)) (real number)
 	   (dynamic-extent more-numbers))
   (do* ((n number (car nlist))
@@ -944,7 +944,7 @@
      (if (not (>= n (car nlist))) (return nil))))
 
 (defun max (number &rest more-numbers)
-  "Returns the greatest of its arguments."
+  _N"Returns the greatest of its arguments."
   (declare (optimize (safety 2)) (real number)
 	   (dynamic-extent more-numbers))
   (dolist (real more-numbers)
@@ -953,7 +953,7 @@
   (the real number))
 
 (defun min (number &rest more-numbers)
-  "Returns the least of its arguments."
+  _N"Returns the least of its arguments."
   (declare (optimize (safety 2)) (real number)
 	   (dynamic-extent more-numbers))
   (do ((nlist more-numbers (cdr nlist))
@@ -1066,7 +1066,7 @@
 ;;; EQL -- Public
 ;;;
 (defun eql (obj1 obj2)
-  "Return T if OBJ1 and OBJ2 represent the same object, otherwise NIL."
+  _N"Return T if OBJ1 and OBJ2 represent the same object, otherwise NIL."
   (or (eq obj1 obj2)
       (if (or (typep obj2 'fixnum)
 	      (not (typep obj2 'number)))
@@ -1103,7 +1103,7 @@
 ;;;; Logicals:
 
 (defun logior (&rest integers)
-  "Returns the bit-wise or of its arguments.  Args must be integers."
+  _N"Returns the bit-wise or of its arguments.  Args must be integers."
   (declare (list integers))
   (if integers
       (do ((result (the integer (pop integers))
@@ -1112,7 +1112,7 @@
       0))
 
 (defun logxor (&rest integers)
-  "Returns the bit-wise exclusive or of its arguments.  Args must be integers."
+  _N"Returns the bit-wise exclusive or of its arguments.  Args must be integers."
   (declare (list integers))
   (if integers
       (do ((result (the integer (pop integers))
@@ -1121,7 +1121,7 @@
       0))
 
 (defun logand (&rest integers)
-  "Returns the bit-wise and of its arguments.  Args must be integers."
+  _N"Returns the bit-wise and of its arguments.  Args must be integers."
   (declare (list integers))
   (if integers
       (do ((result (the integer (pop integers))
@@ -1130,7 +1130,7 @@
       -1))
 
 (defun logeqv (&rest integers)
-  "Returns the bit-wise equivalence of its arguments.  Args must be integers."
+  _N"Returns the bit-wise equivalence of its arguments.  Args must be integers."
   (declare (list integers))
   (if integers
       (do ((result (the integer (pop integers))
@@ -1141,32 +1141,32 @@
 #-modular-arith
 (progn
 (defun lognand (integer1 integer2)
-  "Returns the complement of the logical AND of integer1 and integer2."
+  _N"Returns the complement of the logical AND of integer1 and integer2."
   (lognand integer1 integer2))
 
 (defun lognor (integer1 integer2)
-  "Returns the complement of the logical OR of integer1 and integer2."
+  _N"Returns the complement of the logical OR of integer1 and integer2."
   (lognor integer1 integer2))
 
 (defun logandc1 (integer1 integer2)
-  "Returns the logical AND of (LOGNOT integer1) and integer2."
+  _N"Returns the logical AND of (LOGNOT integer1) and integer2."
   (logandc1 integer1 integer2))
 
 (defun logandc2 (integer1 integer2)
-  "Returns the logical AND of integer1 and (LOGNOT integer2)."
+  _N"Returns the logical AND of integer1 and (LOGNOT integer2)."
   (logandc2 integer1 integer2))
 
 (defun logorc1 (integer1 integer2)
-  "Returns the logical OR of (LOGNOT integer1) and integer2."
+  _N"Returns the logical OR of (LOGNOT integer1) and integer2."
   (logorc1 integer1 integer2))
 
 (defun logorc2 (integer1 integer2)
-  "Returns the logical OR of integer1 and (LOGNOT integer2)."
+  _N"Returns the logical OR of integer1 and (LOGNOT integer2)."
   (logorc2 integer1 integer2))
 )
 
 (defun lognot (number)
-  "Returns the bit-wise logical not of integer."
+  _N"Returns the bit-wise logical not of integer."
   (etypecase number
     (fixnum (lognot (truly-the fixnum number)))
     (bignum (bignum-logical-not number))))
@@ -1214,7 +1214,7 @@
 
 
 (defun logcount (integer)
-  "Count the number of 1 bits if INTEGER is positive, and the number of 0 bits
+  _N"Count the number of 1 bits if INTEGER is positive, and the number of 0 bits
   if INTEGER is negative."
   (etypecase integer
     (fixnum
@@ -1227,18 +1227,18 @@
      (bignum-logcount integer))))
 
 (defun logtest (integer1 integer2)
-  "Predicate which returns T if logand of integer1 and integer2 is not zero."
+  _N"Predicate which returns T if logand of integer1 and integer2 is not zero."
   (logtest integer1 integer2))
 
 (defun logbitp (index integer)
-  "Predicate returns T if bit index of integer is a 1.  The least
+  _N"Predicate returns T if bit index of integer is a 1.  The least
 significant bit of INTEGER is bit 0."
   (etypecase integer
     (fixnum (logbitp index integer))
     (bignum (bignum-logbitp index integer))))
 
 (defun ash (integer count)
-  "Shifts integer left by count places preserving sign.  - count shifts right."
+  _N"Shifts integer left by count places preserving sign.  - count shifts right."
   (declare (integer integer count))
   (etypecase integer
     (fixnum
@@ -1265,7 +1265,7 @@
 	 (bignum-ashift-right integer (- count))))))
 
 (defun integer-length (integer)
-  "Returns the number of significant bits in the absolute value of integer."
+  _N"Returns the number of significant bits in the absolute value of integer."
   (etypecase integer
     (fixnum
      (integer-length (truly-the fixnum integer)))
@@ -1276,35 +1276,35 @@
 ;;;; Byte operations:
 
 (defun byte (size position)
-  "Returns a byte specifier which may be used by other byte functions."
+  _N"Returns a byte specifier which may be used by other byte functions."
   (byte size position))
 
 (defun byte-size (bytespec)
-  "Returns the size part of the byte specifier bytespec."
+  _N"Returns the size part of the byte specifier bytespec."
   (byte-size bytespec))
 
 (defun byte-position (bytespec)
-  "Returns the position part of the byte specifier bytespec."
+  _N"Returns the position part of the byte specifier bytespec."
   (byte-position bytespec))
 
 (defun ldb (bytespec integer)
-  "Extract the specified byte from integer, and right justify result."
+  _N"Extract the specified byte from integer, and right justify result."
   (ldb bytespec integer))
 
 (defun ldb-test (bytespec integer)
-  "Returns T if any of the specified bits in integer are 1's."
+  _N"Returns T if any of the specified bits in integer are 1's."
   (ldb-test bytespec integer))
 
 (defun mask-field (bytespec integer)
-  "Extract the specified byte from integer,  but do not right justify result."
+  _N"Extract the specified byte from integer,  but do not right justify result."
   (mask-field bytespec integer))
 
 (defun dpb (newbyte bytespec integer)
-  "Returns new integer with newbyte in specified position, newbyte is right justified."
+  _N"Returns new integer with newbyte in specified position, newbyte is right justified."
   (dpb newbyte bytespec integer))
 
 (defun deposit-field (newbyte bytespec integer)
-  "Returns new integer with newbyte in specified position, newbyte is not right justified."
+  _N"Returns new integer with newbyte in specified position, newbyte is not right justified."
   (deposit-field newbyte bytespec integer))
 
 
@@ -1341,56 +1341,56 @@
 ;;;     using any of the constants declared below.
 
 (defconstant boole-clr 0
-  "Boole function op, makes BOOLE return 0.")
+  _N"Boole function op, makes BOOLE return 0.")
 
 (defconstant boole-set 1
-  "Boole function op, makes BOOLE return -1.")
+  _N"Boole function op, makes BOOLE return -1.")
 
 (defconstant boole-1   2
-  "Boole function op, makes BOOLE return integer1.")
+  _N"Boole function op, makes BOOLE return integer1.")
 
 (defconstant boole-2   3
-  "Boole function op, makes BOOLE return integer2.")
+  _N"Boole function op, makes BOOLE return integer2.")
 
 (defconstant boole-c1  4
-  "Boole function op, makes BOOLE return complement of integer1.")
+  _N"Boole function op, makes BOOLE return complement of integer1.")
 
 (defconstant boole-c2  5
-  "Boole function op, makes BOOLE return complement of integer2.")
+  _N"Boole function op, makes BOOLE return complement of integer2.")
 
 (defconstant boole-and 6
-  "Boole function op, makes BOOLE return logand of integer1 and integer2.")
+  _N"Boole function op, makes BOOLE return logand of integer1 and integer2.")
 
 (defconstant boole-ior 7
-  "Boole function op, makes BOOLE return logior of integer1 and integer2.")
+  _N"Boole function op, makes BOOLE return logior of integer1 and integer2.")
 
 (defconstant boole-xor 8
-  "Boole function op, makes BOOLE return logxor of integer1 and integer2.")
+  _N"Boole function op, makes BOOLE return logxor of integer1 and integer2.")
 
 (defconstant boole-eqv 9
-  "Boole function op, makes BOOLE return logeqv of integer1 and integer2.")
+  _N"Boole function op, makes BOOLE return logeqv of integer1 and integer2.")
 
 (defconstant boole-nand  10
-  "Boole function op, makes BOOLE return log nand of integer1 and integer2.")
+  _N"Boole function op, makes BOOLE return log nand of integer1 and integer2.")
 
 (defconstant boole-nor   11
-  "Boole function op, makes BOOLE return lognor of integer1 and integer2.")
+  _N"Boole function op, makes BOOLE return lognor of integer1 and integer2.")
 
 (defconstant boole-andc1 12
-  "Boole function op, makes BOOLE return logandc1 of integer1 and integer2.")
+  _N"Boole function op, makes BOOLE return logandc1 of integer1 and integer2.")
 
 (defconstant boole-andc2 13
-  "Boole function op, makes BOOLE return logandc2 of integer1 and integer2.")
+  _N"Boole function op, makes BOOLE return logandc2 of integer1 and integer2.")
 
 (defconstant boole-orc1  14
-  "Boole function op, makes BOOLE return logorc1 of integer1 and integer2.")
+  _N"Boole function op, makes BOOLE return logorc1 of integer1 and integer2.")
 
 (defconstant boole-orc2  15
-  "Boole function op, makes BOOLE return logorc2 of integer1 and integer2.")
+  _N"Boole function op, makes BOOLE return logorc2 of integer1 and integer2.")
 
 
 (defun boole (op integer1 integer2)
-  "Bit-wise boolean function on two integers.  Function chosen by OP:
+  _N"Bit-wise boolean function on two integers.  Function chosen by OP:
 	0	BOOLE-CLR
 	1	BOOLE-SET
 	2	BOOLE-1
@@ -1430,7 +1430,7 @@
 ;;;; GCD, LCM:
 
 (defun gcd (&rest numbers)
-  "Returns the greatest common divisor of the arguments, which must be
+  _N"Returns the greatest common divisor of the arguments, which must be
   integers.  Gcd with no arguments is defined to be 0."
   (cond ((null numbers) 0)
 	((null (cdr numbers)) (abs (the integer (car numbers))))
@@ -1443,7 +1443,7 @@
 		    (list rest))))))
 
 (defun lcm (&rest numbers)
-  "Returns the least common multiple of one or more integers.  LCM of no
+  _N"Returns the least common multiple of one or more integers.  LCM of no
   arguments is defined to be 1."
   (cond ((null numbers) 1)
 	((null (cdr numbers)) (abs (the integer (car numbers))))
@@ -1515,7 +1515,7 @@
 ;;; Primep  --  Public
 ;;;
 (defun primep (x)
-  "Returns T iff X is a positive prime integer."
+  _N"Returns T iff X is a positive prime integer."
   (declare (integer x))
   (if (<= x 5)
       (and (>= x 2) (/= x 4))
@@ -1534,7 +1534,7 @@
 ;;;    From discussion on comp.lang.lisp and Akira Kurihara.
 ;;;
 (defun isqrt (n)
-  "Returns the root of the nearest integer less than n which is a perfect
+  _N"Returns the root of the nearest integer less than n which is a perfect
    square."
   (declare (type unsigned-byte n) (values unsigned-byte))
   ;; theoretically (> n 7) ,i.e., n-len-quarter > 0
@@ -1560,11 +1560,11 @@
 
 (macrolet ((frob (name doc)
 	     `(defun ,name (number) ,doc (,name number))))
-  (frob zerop "Returns T if number = 0, NIL otherwise.")
-  (frob plusp "Returns T if number > 0, NIL otherwise.")
-  (frob minusp "Returns T if number < 0, NIL otherwise.")
-  (frob oddp "Returns T if number is odd, NIL otherwise.")
-  (frob evenp "Returns T if number is even, NIL otherwise."))
+  (frob zerop _N"Returns T if number = 0, NIL otherwise.")
+  (frob plusp _N"Returns T if number > 0, NIL otherwise.")
+  (frob minusp _N"Returns T if number < 0, NIL otherwise.")
+  (frob oddp _N"Returns T if number is odd, NIL otherwise.")
+  (frob evenp _N"Returns T if number is even, NIL otherwise."))
 
 
 ;;;; Modular arithmetic
Index: src/code/package.lisp
diff -u src/code/package.lisp:1.77.10.1 src/code/package.lisp:1.77.10.2
--- src/code/package.lisp:1.77.10.1	Mon Feb  8 12:15:48 2010
+++ src/code/package.lisp	Tue Feb  9 18:42:32 2010
@@ -5,7 +5,7 @@
 ;;; Carnegie Mellon University, and has been placed in the public domain.
 ;;;
 (ext:file-comment
-  "$Header: /project/cmucl/cvsroot/src/code/package.lisp,v 1.77.10.1 2010-02-08 17:15:48 rtoy Exp $")
+  "$Header: /project/cmucl/cvsroot/src/code/package.lisp,v 1.77.10.2 2010-02-09 23:42:32 rtoy Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -42,7 +42,7 @@
 (sys:register-lisp-feature :relative-package-names)
 
 (defvar *default-package-use-list* '("COMMON-LISP")
-  "The list of packages to use by default of no :USE argument is supplied
+  _N"The list of packages to use by default of no :USE argument is supplied
    to MAKE-PACKAGE or other package creation forms.")
 
 ;;; INTERNAL conditions
@@ -56,7 +56,7 @@
 	     (lambda (package)
 	       (values `(package-or-lose ',(package-name package))
 		       nil))))
-  "Standard structure for the description of a package.  Consists of 
+  _N"Standard structure for the description of a package.  Consists of 
    a list of all hash tables, the name of the package, the nicknames of
    the package, the use-list for the package, the used-by- list, hash-
    tables for the internal and external symbols, and a list of the
@@ -102,13 +102,13 @@
              (multiple-value-bind (iu it) (internal-symbol-count s)
                (multiple-value-bind (eu et) (external-symbol-count s)
                  (print-unreadable-object (s stream)
-                   (format stream "The ~A package, ~D/~D internal, ~D/~D external"
+                   (format stream _"The ~A package, ~D/~D internal, ~D/~D external"
                            (package-%name s) iu it eu et)))))
             (t
              (print-unreadable-object (s stream)
-               (format stream "The ~A package" (package-%name s)))))
+               (format stream _"The ~A package" (package-%name s)))))
       (print-unreadable-object (s stream :identity t)
-	(format stream "deleted package"))))
+	(format stream _"deleted package"))))
 
 ;;; Can get the name (NIL) of a deleted package.
 ;;;
@@ -122,7 +122,7 @@
   (frob package-used-by-list package-%used-by-list)
   (frob package-shadowing-symbols package-%shadowing-symbols))
 
-(defvar *package* () "The current package.")
+(defvar *package* () _N"The current package.")
 
 ;;; An equal hashtable from package names to packages.
 ;;;
@@ -142,7 +142,7 @@
 (define-condition package-locked-error (simple-package-error)
   ()
   (:report (lambda (condition stream)
-             (format stream "~&~@<Attempt to modify the locked package ~A, by ~3i~:_~?~:>"
+             (format stream _"~&~@<Attempt to modify the locked package ~A, by ~3i~:_~?~:>"
                      (package-name (package-error-package condition))
                      (simple-condition-format-control condition)
                      (simple-condition-format-arguments condition)))))
@@ -206,7 +206,7 @@
             (restart-case
                 (error 'package-locked-error
                        :package package
-                       :format-control "redefining function ~A"
+                       :format-control _"redefining function ~A"
                        :format-arguments (list function))
               (continue ()
                 :report "Ignore the lock and continue")
@@ -234,7 +234,7 @@
        (setf (schar res 0) name)
        res))
     (t
-     (error "Bogus ~A name: ~S" kind name))))
+     (error _"Bogus ~A name: ~S" kind name))))
 
 (defun stringify-names (names kind)
   (mapcar #'(lambda (name)
@@ -256,7 +256,7 @@
   (if (packagep thing)
       (let ((name (package-%name thing)))
 	(or name
-	    (error "Can't do anything to a deleted package: ~S" thing)))
+	    (error _"Can't do anything to a deleted package: ~S" thing)))
       (package-namify thing)))
 
 ;;; package-name-to-package  --  Internal
@@ -274,7 +274,7 @@
 ;;;
 #+relative-package-names
 (defun package-parent (package-specifier)
-  "Given PACKAGE-SPECIFIER, a package, symbol or string, return the
+  _N"Given PACKAGE-SPECIFIER, a package, symbol or string, return the
   parent package.  If there is not a parent, signal an error."
   (declare (optimize (speed 3)))
   (flet ((find-last-dot (name)
@@ -290,12 +290,12 @@
                (or (package-name-to-package parent)
 		   (error 'simple-package-error
                           :name child
-                          :format-control "The parent of ~a does not exist."
+                          :format-control _"The parent of ~a does not exist."
                           :format-arguments (list child)))))
             (t
 	     (error 'simple-package-error
                     :name child
-                    :format-control "There is no parent of ~a."
+                    :format-control _"There is no parent of ~a."
                     :format-arguments (list child)))))))
 
 
@@ -306,7 +306,7 @@
 ;;;
 #+relative-package-names
 (defun package-children (package-specifier &key (recurse t))
-  "Given PACKAGE-SPECIFIER, a package, symbol or string, return all the
+  _N"Given PACKAGE-SPECIFIER, a package, symbol or string, return all the
   packages which are in the hierarchy 'under' the given package.  If
   :recurse is nil, then only return the immediate children of the package."
   (declare (optimize (speed 3)))
@@ -360,7 +360,7 @@
 	       package
 	       (let ((parent-name (package-%name package)))
 		 (unless parent-name
-		   (error "Can't do anything to a deleted package: ~S"
+		   (error _"Can't do anything to a deleted package: ~S"
 			  package))
 		 (package-name-to-package
 		  (concatenate 'simple-string parent-name "." name)))))
@@ -388,7 +388,7 @@
                    (unless tmp
 		     (error 'simple-package-error
                             :name (string package)
-                            :format-control "The parent of ~a does not exist."
+                            :format-control _"The parent of ~a does not exist."
                             :format-arguments (list package)))
                    (setq package tmp))
                  (relative-to package name))))))))
@@ -397,7 +397,7 @@
 ;;;
 ;;;
 (defun find-package (name)
-  "Find the package having the specified name."
+  _N"Find the package having the specified name."
   (if (packagep name)
       name
       (let ((name (package-namify name)))
@@ -412,7 +412,7 @@
 (defun package-or-lose (thing)
   (cond ((packagep thing)
 	 (unless (package-%name thing)
-	   (error "Can't do anything to a deleted package: ~S" thing))
+	   (error _"Can't do anything to a deleted package: ~S" thing))
 	 thing)
 	(t
 	 (let ((thing (package-namify thing)))
@@ -422,7 +422,7 @@
 		  ;; but the resulting message is somewhat unclear.
 		  ;; May need a new condition type?
 		  (with-simple-restart
-		      (continue "Make this package.")
+		      (continue _"Make this package.")
 		    (error 'type-error
 			   :datum thing
 			   :expected-type 'package))
@@ -465,7 +465,7 @@
 	     (lambda (table stream d)
 	       (declare (ignore d) (stream stream))
 	       (format stream
-		       "#<Package-Hashtable: Size = ~D, Free = ~D, Deleted = ~D>"
+		       _"#<Package-Hashtable: Size = ~D, Free = ~D, Deleted = ~D>"
 		       (package-hashtable-size table)
 		       (package-hashtable-free table)
 		       (package-hashtable-deleted table)))))
@@ -659,7 +659,7 @@
 
 (defmacro do-symbols ((var &optional (package '*package*) result-form)
 		      &parse-body (body decls))
-  "DO-SYMBOLS (VAR [PACKAGE [RESULT-FORM]]) {DECLARATION}* {TAG | FORM}*
+  _N"DO-SYMBOLS (VAR [PACKAGE [RESULT-FORM]]) {DECLARATION}* {TAG | FORM}*
    Executes the FORMs at least once for each symbol accessible in the given
    PACKAGE with VAR bound to the current symbol."
   (let ((flet-name (gensym "DO-SYMBOLS-")))
@@ -693,7 +693,7 @@
 
 (defmacro do-external-symbols ((var &optional (package '*package*) result-form)
 			       &parse-body (body decls))
-  "DO-EXTERNAL-SYMBOLS (VAR [PACKAGE [RESULT-FORM]]) {DECL}* {TAG | FORM}*
+  _N"DO-EXTERNAL-SYMBOLS (VAR [PACKAGE [RESULT-FORM]]) {DECL}* {TAG | FORM}*
    Executes the FORMs once for each external symbol in the given PACKAGE with
    VAR bound to the current symbol."
   (let ((flet-name (gensym "DO-SYMBOLS-")))
@@ -717,7 +717,7 @@
 	 ,result-form))))
 
 (defmacro do-all-symbols ((var &optional result-form) &parse-body (body decls))
-  "DO-ALL-SYMBOLS (VAR [RESULT-FORM]) {DECLARATION}* {TAG | FORM}*
+  _N"DO-ALL-SYMBOLS (VAR [RESULT-FORM]) {DECLARATION}* {TAG | FORM}*
    Executes the FORMs once for each symbol in every package with VAR bound
    to the current symbol."
   (let ((flet-name (gensym "DO-SYMBOLS-")))
@@ -747,7 +747,7 @@
 
 (defmacro with-package-iterator ((mname package-list &rest symbol-types)
 				 &body body)
-  "Within the lexical scope of the body forms, MNAME is defined via macrolet
+  _N"Within the lexical scope of the body forms, MNAME is defined via macrolet
    such that successive invocations of (mname) will return the symbols,
    one by one, from the packages in PACKAGE-LIST. SYMBOL-TYPES may be
    any of :inherited :external :internal."
@@ -775,7 +775,7 @@
 					 (or (find-package package)
 					     (error 'simple-package-error
 						    :name (string package)
-						    :format-control "~@<~S does not name a package ~:>"
+						    :format-control _"~@<~S does not name a package ~:>"
 						    :format-arguments (list package)))))
 				 (if (consp ,these-packages)
 				     ,these-packages
@@ -825,11 +825,11 @@
 				  (,',init-macro ,(car ',ordered-types)))))))
 	 (when ,packages
 	   ,(when (null symbol-types)
-	      (simple-program-error "Must supply at least one of :internal, ~
+	      (simple-program-error _"Must supply at least one of :internal, ~
 	                             :external, or :inherited."))
 	   ,(dolist (symbol symbol-types)
 	      (unless (member symbol '(:internal :external :inherited))
-		(simple-program-error "~S is not one of :internal, :external, ~
+		(simple-program-error _"~S is not one of :internal, :external, ~
 		                       or :inherited."
 			              symbol)))
 	   (,init-macro ,(car ordered-types))
@@ -908,7 +908,7 @@
 ;;;; DEFPACKAGE:
 
 (defmacro defpackage (package &rest options)
-  "Defines a new package called PACKAGE.  Each of OPTIONS should be one of the
+  _N"Defines a new package called PACKAGE.  Each of OPTIONS should be one of the
    following:
      (:NICKNAMES {package-name}*)
      (:SIZE <integer>)
@@ -932,19 +932,19 @@
 	(doc nil))
     (dolist (option options)
       (unless (consp option)
-	(simple-program-error "Bogus DEFPACKAGE option: ~S" option))
+	(simple-program-error _"Bogus DEFPACKAGE option: ~S" option))
       (case (car option)
 	(:nicknames
 	 (setf nicknames (stringify-names (cdr option) "package")))
 	(:size
 	 (cond (size
-		(simple-program-error "Can't specify :SIZE twice."))
+		(simple-program-error _"Can't specify :SIZE twice."))
 	       ((and (consp (cdr option))
 		     (typep (second option) 'unsigned-byte))
 		(setf size (second option)))
 	       (t
 		(simple-program-error
-		 "Bogus :SIZE, must be a positive integer: ~S"
+		 _"Bogus :SIZE, must be a positive integer: ~S"
 		 (second option)))))
 	(:shadow
 	 (let ((new (stringify-names (cdr option) "symbol")))
@@ -978,10 +978,10 @@
 	   (setf exports (append exports new))))
 	(:documentation
 	 (when doc
-	   (simple-program-error "Can't specify :DOCUMENTATION twice."))
+	   (simple-program-error _"Can't specify :DOCUMENTATION twice."))
 	 (setf doc (coerce (second option) 'simple-string)))
 	(t
-	 (simple-program-error "Bogus DEFPACKAGE option: ~S" option))))
+	 (simple-program-error _"Bogus DEFPACKAGE option: ~S" option))))
     (check-disjoint `(:intern , at interns) `(:export  , at exports))
     (check-disjoint `(:intern , at interns)
 		    `(:import-from
@@ -1005,7 +1005,7 @@
 	                    (intersection set1 set2 :test #'string=))
 	      unless (null common)
 	      do
-	      (simple-program-error "Parameters ~S and ~S must be disjoint ~
+	      (simple-program-error _"Parameters ~S and ~S must be disjoint ~
 	                             but have common elements ~%   ~S"
 				    key1 key2 common))))
 
@@ -1027,7 +1027,7 @@
     (unless (string= (the string (package-name package)) name)
       (error 'simple-package-error
 	     :package name
-	     :format-control "~A is a nick-name for the package ~A"
+	     :format-control _"~A is a nick-name for the package ~A"
 	     :format-arguments (list name (package-name name))))
     (enter-new-nicknames package nicknames)
     ;; Shadows and Shadowing-imports.
@@ -1042,7 +1042,7 @@
 	      (shadowing-import sym package)
 	      (setf old-shadows (remove sym old-shadows))))))
       (when old-shadows
-	(warn "~A also shadows the following symbols:~%  ~S"
+	(warn _"~A also shadows the following symbols:~%  ~S"
 	      name old-shadows)))
     ;; Use
     (unless (eq use :default)
@@ -1052,7 +1052,7 @@
 	(let ((laterize (set-difference old-use-list new-use-list)))
 	  (when laterize
 	    (unuse-package laterize package)
-	    (warn "~A previously used the following packages:~%  ~S"
+	    (warn _"~A previously used the following packages:~%  ~S"
 		  name
 		  laterize)))))
     ;; Import and Intern.
@@ -1072,7 +1072,7 @@
       (export exports package)
       (let ((diff (set-difference old-exports exports)))
 	(when diff
-	  (warn "~A also exports the following symbols:~%  ~S"
+	  (warn _"~A also exports the following symbols:~%  ~S"
 		name diff))))
     ;; Documentation
     (setf (package-doc-string package) doc-string)
@@ -1088,7 +1088,7 @@
 	   (with-simple-restart (continue "INTERN it.")
 	     (error 'simple-package-error
 		    :package package
-		    :format-control "~A does not contain a symbol ~A"
+		    :format-control _"~A does not contain a symbol ~A"
 		    :format-arguments (list (package-name package) name)))
 	   (intern name package)))))
 
@@ -1109,17 +1109,17 @@
 	     (push n (package-%nicknames package)))
 	    ((eq found package))
 	    ((string= (the string (package-%name found)) n)
-	     (with-simple-restart (continue "Ignore this nickname.")
+	     (with-simple-restart (continue _"Ignore this nickname.")
 	       (error 'simple-package-error
 		      :package package
 		      :format-control
-		      "~S is a package name, so it cannot be a nickname for ~S."
+		      _"~S is a package name, so it cannot be a nickname for ~S."
 		      :format-arguments (list n (package-%name package)))))
 	    (t
-	     (with-simple-restart (continue  "Redefine this nickname.")
+	     (with-simple-restart (continue  _"Redefine this nickname.")
 	       (error 'simple-package-error
 		      :package package
-		      :format-control "~S is already a nickname for ~S."
+		      :format-control _"~S is already a nickname for ~S."
 		      :format-arguments (list n (package-%name found))))
 	     (setf (gethash n *package-names*) package)
 	     (push n (package-%nicknames package)))))))
@@ -1133,14 +1133,14 @@
 ;;;
 (defun make-package (name &key (use *default-package-use-list*) nicknames
 			  (internal-symbols 10) (external-symbols 10))
-  "Makes a new package having the specified Name and Nicknames.  The
+  _N"Makes a new package having the specified Name and Nicknames.  The
   package will inherit all external symbols from each package in
   the use list.  :Internal-Symbols and :External-Symbols are
   estimates for the number of internal and external symbols which
   will ultimately be present in the package."
   (when (find-package name)
-    (cerror "Leave existing package alone."
-	    "A package named ~S already exists" name))
+    (cerror _"Leave existing package alone."
+	    _"A package named ~S already exists" name))
   (let* ((name (package-namify name))
 	 (package (internal-make-package
 		   :%name name
@@ -1157,7 +1157,7 @@
 ;;;    Like Make-Package, only different.  Should go away someday.
 ;;;
 (defun old-in-package (name &rest keys &key nicknames use)
-  "Sets *PACKAGE* to package with given NAME, creating the package if
+  _N"Sets *PACKAGE* to package with given NAME, creating the package if
    it does not exist.  If the package already exists then it is modified
    to agree with the :USE and :NICKNAMES arguments.  Any new nicknames
    are added without removing any old ones not specified.  If any package
@@ -1179,7 +1179,7 @@
 (defmacro in-package (package &rest noise)
   (cond ((or noise
 	     (not (or (stringp package) (symbolp package))))
-	 (warn "Old-style IN-PACKAGE.")
+	 (warn _"Old-style IN-PACKAGE.")
 	 `(old-in-package ,package , at noise))
 	(t
 	 `(%in-package ',(stringify-name package "package")))))
@@ -1187,10 +1187,10 @@
 (defun %in-package (name)
   (let ((package (find-package name)))
     (unless package
-      (with-simple-restart (continue "Make this package.")
+      (with-simple-restart (continue _"Make this package.")
 	(error 'simple-package-error
 	       :package name
-	       :format-control "The package named ~S doesn't exist."
+	       :format-control _"The package named ~S doesn't exist."
 	       :format-arguments (list name)))
       (setq package (make-package name)))
     (setf *package* package)))
@@ -1201,14 +1201,14 @@
 ;;; add in any new ones.
 ;;;
 (defun rename-package (package name &optional (nicknames ()))
-  "Changes the name and nicknames for a package."
+  _N"Changes the name and nicknames for a package."
   (let* ((package (package-or-lose package))
 	 (name (string name))
 	 (found (find-package name)))
     (unless (or (not found) (eq found package))
       (error 'simple-package-error
              :package name
-             :format-control "A package named ~S already exists."
+             :format-control _"A package named ~S already exists."
              :format-arguments (list name)))
     (remhash (package-%name package) *package-names*)
     (dolist (n (package-%nicknames package))
@@ -1222,15 +1222,15 @@
 ;;; Delete-Package -- Public
 ;;;
 (defun delete-package (package-or-name)
-  "Delete the PACKAGE-OR-NAME from the package system data structures."
+  _N"Delete the PACKAGE-OR-NAME from the package system data structures."
   (let ((package (if (packagep package-or-name)
 		     package-or-name
 		     (find-package package-or-name))))
     (cond ((not package)
-	   (with-simple-restart (continue "Return NIL")
+	   (with-simple-restart (continue _"Return NIL")
 	     (error 'simple-package-error
 		    :package package-or-name
-		    :format-control "No package of name ~S."
+		    :format-control _"No package of name ~S."
 		    :format-arguments (list package-or-name)))
 	   nil)
 	  ((not (package-name package)) nil)
@@ -1238,7 +1238,7 @@
 	   (let ((use-list (package-used-by-list package)))
 	     (when use-list
 	       (with-simple-restart
-		   (continue "Remove dependency in other packages.")
+		   (continue _"Remove dependency in other packages.")
 		 (error 'simple-package-error
 			:package package
 			:format-control
@@ -1262,7 +1262,7 @@
 ;;;
 ;;;
 (defun list-all-packages ()
-  "Returns a list of all existing packages."
+  _N"Returns a list of all existing packages."
   (let ((res ()))
     (maphash #'(lambda (k v)
 		 (declare (ignore k))
@@ -1275,7 +1275,7 @@
 ;;;    Simple-stringify the name and call intern*.
 ;;;
 (defun intern (name &optional package)
-  "Returns a symbol having the specified name, creating it if necessary."
+  _N"Returns a symbol having the specified name, creating it if necessary."
   (let ((name (string-to-nfc name))
         (package (if package (package-or-lose package) *package*)))
     (declare (type simple-string name))
@@ -1286,7 +1286,7 @@
 ;;;    Ditto.
 ;;;
 (defun find-symbol (name &optional package)
-  "Returns the symbol NAME in PACKAGE.  If such a symbol is found
+  _N"Returns the symbol NAME in PACKAGE.  If such a symbol is found
   then the second value is :internal, :external or :inherited to indicate
   how the symbol is accessible.  If no symbol is found then both values
   are NIL."
@@ -1312,7 +1312,7 @@
               (restart-case
                   (error 'package-locked-error
                          :package package
-                         :format-control "interning symbol ~A"
+                         :format-control _"interning symbol ~A"
                          :format-arguments (list (subseq name 0 length)))
                 (continue ()
                   :report "Ignore the lock and continue")
@@ -1383,7 +1383,7 @@
 ;;; result, otherwise just nuke the symbol.
 ;;;
 (defun unintern (symbol &optional (package *package*))
-  "Makes SYMBOL no longer present in PACKAGE.  If SYMBOL was present
+  _N"Makes SYMBOL no longer present in PACKAGE.  If SYMBOL was present
   then T is returned, otherwise NIL.  If PACKAGE is SYMBOL's home
   package, then it is made uninterned."
   (let* ((package (package-or-lose package))
@@ -1395,7 +1395,7 @@
         (restart-case
             (error 'package-locked-error
                    :package package
-                   :format-control "uninterning symbol ~A"
+                   :format-control _"uninterning symbol ~A"
                    :format-arguments (list name))
           (continue ()
             :report "Ignore the lock and continue")
@@ -1416,19 +1416,19 @@
 	(when (cdr cset)
 	  (loop
 	   (cerror
-	    "prompt for a symbol to shadowing-import."
+	    _"prompt for a symbol to shadowing-import."
 	    'simple-package-error
 	    :package package
 	    :format-control
-	    "Uninterning symbol ~S causes name conflict among these symbols:~%~S"
+	    _"Uninterning symbol ~S causes name conflict among these symbols:~%~S"
 	    :format-arguments (list symbol cset))
-	   (write-string "Symbol to shadowing-import: " *query-io*)
+	   (write-string _"Symbol to shadowing-import: " *query-io*)
 	   (let ((sym (read *query-io*)))
 	     (cond
 	      ((not (symbolp sym))
-	       (format *query-io* "~S is not a symbol." sym))
+	       (format *query-io* _"~S is not a symbol." sym))
 	      ((not (member sym cset))
-	       (format *query-io* "~S is not one of the conflicting symbols."
+	       (format *query-io* _"~S is not one of the conflicting symbols."
 		       sym))
 	      (t
 	       (shadowing-import sym package)
@@ -1455,11 +1455,11 @@
 (defun symbol-listify (thing)
   (cond ((listp thing)
 	 (dolist (s thing)
-	   (unless (symbolp s) (error "~S is not a symbol." s)))
+	   (unless (symbolp s) (error _"~S is not a symbol." s)))
 	 thing)
 	((symbolp thing) (list thing))
 	(t
-	 (error "~S is neither a symbol nor a list of symbols." thing))))
+	 (error _"~S is neither a symbol nor a list of symbols." thing))))
 
 ;;; Moby-Unintern  --  Internal
 ;;;
@@ -1487,7 +1487,7 @@
 ;;;    Do more stuff.
 ;;;
 (defun export (symbols &optional (package *package*))
-  "Exports SYMBOLS from PACKAGE, checking that no name conflicts result."
+  _N"Exports SYMBOLS from PACKAGE, checking that no name conflicts result."
   (let ((package (package-or-lose package))
 	(syms ()))
     ;;
@@ -1516,7 +1516,7 @@
 	     'simple-package-error
 	     :package package
 	     :format-control
-	     "Exporting these symbols from the ~A package:~%~S~%~
+	     _"Exporting these symbols from the ~A package:~%~S~%~
 	      results in name conflicts with these packages:~%~{~A ~}"
 	     :format-arguments
 	     (list (package-%name package) cset
@@ -1539,12 +1539,12 @@
 		((eq w :inherited) (push sym imports)))))
       (when missing
 	(with-simple-restart
-	    (continue "Import these symbols into the ~A package."
+	    (continue _"Import these symbols into the ~A package."
 	      (package-%name package))
 	  (error 'simple-package-error
 		 :package package
 		 :format-control
-		 "These symbols are not accessible in the ~A package:~%~S"
+		 _"These symbols are not accessible in the ~A package:~%~S"
 		 :format-arguments
 		 (list (package-%name package) missing)))
 	(import missing package))
@@ -1564,7 +1564,7 @@
 ;;; internal.
 ;;;
 (defun unexport (symbols &optional (package *package*))
-  "Makes SYMBOLS no longer exported from PACKAGE."
+  _N"Makes SYMBOLS no longer exported from PACKAGE."
   (let ((package (package-or-lose package))
 	(syms ()))
     (when *enable-package-locked-errors*
@@ -1572,7 +1572,7 @@
         (restart-case
             (error 'package-locked-error
                    :package package
-                   :format-control "unexporting symbols ~A"
+                   :format-control _"unexporting symbols ~A"
                    :format-arguments (list symbols))
           (continue ()
             :report "Ignore the lock and continue")
@@ -1587,7 +1587,7 @@
 	(cond ((or (not w) (not (eq s sym)))
 	       (error 'simple-package-error
 		      :package package
-		      :format-control "~S is not accessible in the ~A package."
+		      :format-control _"~S is not accessible in the ~A package."
 		      :format-arguments (list sym (package-%name package))))
 	      ((eq w :external) (pushnew sym syms)))))
 
@@ -1604,7 +1604,7 @@
 ;;; shadowing-import if there is.
 ;;;
 (defun import (symbols &optional (package *package*))
-  "Make SYMBOLS accessible as internal symbols in PACKAGE.  If a symbol
+  _N"Make SYMBOLS accessible as internal symbols in PACKAGE.  If a symbol
   is already accessible then it has no effect.  If a name conflict
   would result from the importation, then a correctable error is signalled."
   (let ((package (package-or-lose package))
@@ -1623,11 +1623,11 @@
 	      ((eq w :inherited) (push sym syms)))))
     (when cset
       (with-simple-restart
-	  (continue "Import these symbols with Shadowing-Import.")
+	  (continue _"Import these symbols with Shadowing-Import.")
 	(error 'simple-package-error
 	       :package package
 	       :format-control
-	       "Importing these symbols into the ~A package ~
+	       _"Importing these symbols into the ~A package ~
 		causes a name conflict:~%~S"
 	       :format-arguments (list (package-%name package) cset))))
     ;;
@@ -1647,7 +1647,7 @@
 ;;; stick the symbol in.
 ;;;
 (defun shadowing-import (symbols &optional (package *package*))
-  "Import SYMBOLS into PACKAGE, disregarding any name conflict.  If
+  _N"Import SYMBOLS into PACKAGE, disregarding any name conflict.  If
   a symbol of the same name is present, then it is uninterned.
   The symbols are added to the Package-Shadowing-Symbols."
   (let* ((package (package-or-lose package))
@@ -1670,7 +1670,7 @@
 ;;;
 ;;;
 (defun shadow (symbols &optional (package *package*))
-  "Make an internal symbol in PACKAGE with the same name as each of the
+  _N"Make an internal symbol in PACKAGE with the same name as each of the
   specified SYMBOLS, adding the new symbols to the Package-Shadowing-Symbols.
   If a symbol with the given name is already present in PACKAGE, then
   the existing symbol is placed in the shadowing symbols list if it is
@@ -1695,7 +1695,7 @@
 ;;; checking.
 ;;;
 (defun use-package (packages-to-use &optional (package *package*))
-  "Add all the PACKAGES-TO-USE to the use list for PACKAGE so that
+  _N"Add all the PACKAGES-TO-USE to the use list for PACKAGE so that
   the external symbols of the used packages are accessible as internal
   symbols in PACKAGE."
   (let ((packages (package-listify packages-to-use))
@@ -1744,8 +1744,8 @@
 	  
 	  (when cset
 	    (cerror
-	     "Unintern the conflicting symbols in the ~2*~A package."
-	     "Use'ing package ~A results in name conflicts for these symbols:~%~S"
+	     _"Unintern the conflicting symbols in the ~2*~A package."
+	     _"Use'ing package ~A results in name conflicts for these symbols:~%~S"
 	     (package-%name pkg) cset (package-%name package))
 	    (dolist (s cset) (moby-unintern s package))))
 
@@ -1758,7 +1758,7 @@
 ;;;
 ;;;
 (defun unuse-package (packages-to-unuse &optional (package *package*))
-  "Remove PACKAGES-TO-UNUSE from the use list for PACKAGE."
+  _N"Remove PACKAGES-TO-UNUSE from the use list for PACKAGE."
   (let ((package (package-or-lose package)))
     (dolist (p (package-listify packages-to-unuse))
       (setf (package-%use-list package)
@@ -1774,7 +1774,7 @@
 ;;;
 ;;;
 (defun find-all-symbols (string-or-symbol)
-  "Return a list of all symbols in the system having the specified name."
+  _N"Return a list of all symbols in the system having the specified name."
   (let ((string (string string-or-symbol))
 	(res ()))
     (maphash #'(lambda (k v)
@@ -1806,13 +1806,13 @@
       (multiple-value-bind (kind recorded-p) (info variable kind symbol)
         (when (or (boundp symbol) recorded-p)
 	  (print-symbol (ecase kind
-                          (:special  "special variable")
-                          (:constant "constant")
-                          (:global   "undefined variable")
-                          (:macro    "symbol macro")
-                          (:alien    "alien variable")))
+                          (:special  _"special variable")
+                          (:constant _"constant")
+                          (:global   _"undefined variable")
+                          (:macro    _"symbol macro")
+                          (:alien    _"alien variable")))
           (when (boundp symbol)
-	    (write-string "value: ")
+	    (write-string _"value: ")
 	    (let ((*print-length*
 	             (or ext:*describe-print-length* *print-length*))
 	          (*print-level*
@@ -1823,15 +1823,15 @@
       (when (fboundp symbol)
         (cond
           ((macro-function symbol)
-           (print-symbol "macro")
+           (print-symbol _"macro")
            (let ((arglist (kernel:%function-arglist (macro-function symbol))))
              (when (stringp arglist) (write-string arglist))))
           ((special-operator-p symbol)
-           (print-symbol "special operator")
+           (print-symbol _"special operator")
            (let ((arglist (kernel:%function-arglist (symbol-function symbol))))
              (when (stringp arglist) (write-string arglist))))
           (t
-           (print-symbol "function")
+           (print-symbol _"function")
            ;; could do better than this with (kernel:type-specifier
            ;; (info function type symbol)) when it's a byte-compiled function
            (let ((arglist (kernel:%function-arglist (symbol-function symbol))))
@@ -1840,9 +1840,9 @@
       ;; Class and Type Namespace(s)
       (cond
         ((kernel::find-class symbol nil)
-         (print-symbol "class"))
+         (print-symbol _"class"))
         ((info type kind symbol)
-         (print-symbol "type")))
+         (print-symbol _"type")))
 
       ;; Make sure we at least print the symbol itself if we don't know
       ;; anything else about it:
@@ -1873,7 +1873,7 @@
 ;;; MAP-APROPOS -- public (extension).
 ;;;
 (defun map-apropos (fun string &optional package external-only)
-  "Call FUN with each symbol that contains STRING.
+  _N"Call FUN with each symbol that contains STRING.
   If PACKAGE is supplied then only use symbols present in
   that package.  If EXTERNAL-ONLY is true then only use
   symbols exported from the specified package."
@@ -1897,7 +1897,7 @@
 ;;; APROPOS -- public.
 ;;; 
 (defun apropos (string &optional package)
-  "Briefly describe all symbols which contain the specified STRING.
+  _N"Briefly describe all symbols which contain the specified STRING.
   If PACKAGE is supplied then only describe symbols present in
   that package.  If EXTERNAL-ONLY is non-NIL then only describe
   external symbols in the specified package."
@@ -1907,7 +1907,7 @@
 ;;; APROPOS-LIST -- public.
 ;;; 
 (defun apropos-list (string &optional package)
-  "Identical to APROPOS, except that it returns a list of the symbols
+  _N"Identical to APROPOS, except that it returns a list of the symbols
   found instead of describing them."
   (collect ((result))
     (map-apropos #'(lambda (symbol)
Index: src/i18n/locale/cmucl.pot
diff -u src/i18n/locale/cmucl.pot:1.1.2.9 src/i18n/locale/cmucl.pot:1.1.2.10
--- src/i18n/locale/cmucl.pot:1.1.2.9	Tue Feb  9 16:33:11 2010
+++ src/i18n/locale/cmucl.pot	Tue Feb  9 18:42:32 2010
@@ -180,6 +180,12 @@
 "  setf."
 msgstr ""
 
+#: target:code/format.lisp target:code/print.lisp target:code/irrat-dd.lisp
+#: target:code/irrat.lisp target:code/float.lisp target:code/numbers.lisp
+#: target:code/kernel.lisp
+msgid "Argument ~A is not a ~S: ~S."
+msgstr ""
+
 #: target:pcl/dfun.lisp target:code/interr.lisp target:code/lispinit.lisp
 msgid "Help! "
 msgstr ""
@@ -1952,6 +1958,449 @@
 msgid "Too large to be represented as a ~S:~%  ~S"
 msgstr ""
 
+#: target:code/numbers.lisp
+msgid "More types than vars."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Duplicate case: ~S."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "More vars than types."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"NUMBER-DISPATCH ({(Var Type)}*) {((Type*) Form*) | (Symbol Arg*)}*\n"
+"  A vaguely case-like macro that does number cross-product dispatches.  The\n"
+"  Vars are the variables we are dispatching off of.  The Type paired with "
+"each\n"
+"  Var is used in the error message when no case matches.  Each case specifie"
+"s a\n"
+"  Type for each var, and is executed when that signature holds.  A type may "
+"be\n"
+"  a list (FOREACH Each-Type*), causing that case to be repeatedly instantiat"
+"ed\n"
+"  for every Each-Type.  In the body of each case, any list of the form\n"
+"  (DISPATCH-TYPE Var-Name) is substituted with the type of that var in that\n"
+"  instance of the case.\n"
+"\n"
+"  As an alternate to a case spec, there may be a form whose CAR is a "
+"symbol.\n"
+"  In this case, we apply the CAR of the form to the CDR and treat the "
+"result of\n"
+"  the call as a list of cases.  This process is not applied recursively."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns the element type of the most specialized COMPLEX number type that\n"
+"   can hold parts of type Spec."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Assume this is a subtype of REAL anyway."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Cannot determine if ~S is a subtype of REAL."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Complex numbers cannot have components of type ~S."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Builds a complex number from the specified components."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Extracts the real part of a number."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Extracts the imaginary part of a number."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns the complex conjugate of NUMBER.  For non-complex numbers, this is\n"
+"  an identity."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "If NUMBER is zero, return NUMBER, else return (/ NUMBER (ABS NUMBER))."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Return the numerator of NUMBER, which must be rational."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Return the denominator of NUMBER, which must be rational."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns the sum of its arguments.  With no args, returns 0."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns the product of its arguments.  With no args, returns 1."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Subtracts the second and all subsequent arguments from the first.\n"
+"  With one arg, negates it."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Divides the first arg by each of the following arguments, in turn.\n"
+"  With one arg, returns reciprocal."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns NUMBER + 1."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns NUMBER - 1."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns number (or number/divisor) as an integer, rounded toward 0.\n"
+"  The second returned value is the remainder."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns the greatest integer not greater than number, or number/divisor.\n"
+"  The second returned value is (mod number divisor)."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns the smallest integer not less than number, or number/divisor.\n"
+"  The second returned value is the remainder."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Rounds number (or number/divisor) to nearest integer.\n"
+"  The second returned value is the remainder."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns second result of TRUNCATE."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns second result of FLOOR."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Same as TRUNCATE, but returns first value as a float."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Same as FLOOR, but returns first value as a float."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Same as CEILING, but returns first value as a float."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Same as ROUND, but returns first value as a float."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns T if all of its arguments are numerically equal, NIL otherwise."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns T if no two of its arguments are numerically equal, NIL otherwise."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns T if its arguments are in strictly increasing order, NIL otherwise."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns T if its arguments are in strictly decreasing order, NIL otherwise."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns T if arguments are in strictly non-decreasing order, NIL otherwise."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns T if arguments are in strictly non-increasing order, NIL otherwise."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns the greatest of its arguments."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns the least of its arguments."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Return T if OBJ1 and OBJ2 represent the same object, otherwise NIL."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns the bit-wise or of its arguments.  Args must be integers."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns the bit-wise exclusive or of its arguments.  Args must be integers."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns the bit-wise and of its arguments.  Args must be integers."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns the bit-wise equivalence of its arguments.  Args must be integers."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns the complement of the logical AND of integer1 and integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns the complement of the logical OR of integer1 and integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns the logical AND of (LOGNOT integer1) and integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns the logical AND of integer1 and (LOGNOT integer2)."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns the logical OR of (LOGNOT integer1) and integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns the logical OR of integer1 and (LOGNOT integer2)."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns the bit-wise logical not of integer."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Count the number of 1 bits if INTEGER is positive, and the number of 0 bits\n"
+"  if INTEGER is negative."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Predicate which returns T if logand of integer1 and integer2 is not zero."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Predicate returns T if bit index of integer is a 1.  The least\n"
+"significant bit of INTEGER is bit 0."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Shifts integer left by count places preserving sign.  - count shifts right."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns the number of significant bits in the absolute value of integer."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns a byte specifier which may be used by other byte functions."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns the size part of the byte specifier bytespec."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns the position part of the byte specifier bytespec."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Extract the specified byte from integer, and right justify result."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns T if any of the specified bits in integer are 1's."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Extract the specified byte from integer,  but do not right justify result."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns new integer with newbyte in specified position, newbyte is right "
+"justified."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns new integer with newbyte in specified position, newbyte is not "
+"right justified."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Boole function op, makes BOOLE return 0."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Boole function op, makes BOOLE return -1."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Boole function op, makes BOOLE return integer1."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Boole function op, makes BOOLE return integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Boole function op, makes BOOLE return complement of integer1."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Boole function op, makes BOOLE return complement of integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Boole function op, makes BOOLE return logand of integer1 and integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Boole function op, makes BOOLE return logior of integer1 and integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Boole function op, makes BOOLE return logxor of integer1 and integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Boole function op, makes BOOLE return logeqv of integer1 and integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Boole function op, makes BOOLE return log nand of integer1 and integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Boole function op, makes BOOLE return lognor of integer1 and integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Boole function op, makes BOOLE return logandc1 of integer1 and integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Boole function op, makes BOOLE return logandc2 of integer1 and integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Boole function op, makes BOOLE return logorc1 of integer1 and integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Boole function op, makes BOOLE return logorc2 of integer1 and integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Bit-wise boolean function on two integers.  Function chosen by OP:\n"
+"	0	BOOLE-CLR\n"
+"	1	BOOLE-SET\n"
+"	2	BOOLE-1\n"
+"  	3	BOOLE-2\n"
+"	4	BOOLE-C1\n"
+"	5	BOOLE-C2\n"
+"	6	BOOLE-AND\n"
+"	7	BOOLE-IOR\n"
+" 	8	BOOLE-XOR\n"
+"	9	BOOLE-EQV\n"
+"	10	BOOLE-NAND\n"
+"	11	BOOLE-NOR\n"
+"	12	BOOLE-ANDC1\n"
+"	13	BOOLE-ANDC2\n"
+"	14	BOOLE-ORC1\n"
+"	15	BOOLE-ORC2"
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns the greatest common divisor of the arguments, which must be\n"
+"  integers.  Gcd with no arguments is defined to be 0."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns the least common multiple of one or more integers.  LCM of no\n"
+"  arguments is defined to be 1."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns T iff X is a positive prime integer."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns the root of the nearest integer less than n which is a perfect\n"
+"   square."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns T if number = 0, NIL otherwise."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns T if number > 0, NIL otherwise."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns T if number < 0, NIL otherwise."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns T if number is odd, NIL otherwise."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns T if number is even, NIL otherwise."
+msgstr ""
+
 #: target:code/float-trap.lisp
 msgid "Unknown float trap kind: ~S."
 msgstr ""
@@ -3264,6 +3713,465 @@
 msgid "Table of ordinal tens-place digits in English"
 msgstr ""
 
+#: target:code/package.lisp
+msgid ""
+"The list of packages to use by default of no :USE argument is supplied\n"
+"   to MAKE-PACKAGE or other package creation forms."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Standard structure for the description of a package.  Consists of \n"
+"   a list of all hash tables, the name of the package, the nicknames of\n"
+"   the package, the use-list for the package, the used-by- list, hash-\n"
+"   tables for the internal and external symbols, and a list of the\n"
+"   shadowing symbols."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "The ~A package, ~D/~D internal, ~D/~D external"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "The ~A package"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "deleted package"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "The current package."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "~&~@<Attempt to modify the locked package ~A, by ~3i~:_~?~:>"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "redefining function ~A"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Bogus ~A name: ~S"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Can't do anything to a deleted package: ~S"
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Given PACKAGE-SPECIFIER, a package, symbol or string, return the\n"
+"  parent package.  If there is not a parent, signal an error."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "The parent of ~a does not exist."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "There is no parent of ~a."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Given PACKAGE-SPECIFIER, a package, symbol or string, return all the\n"
+"  packages which are in the hierarchy 'under' the given package.  If\n"
+"  :recurse is nil, then only return the immediate children of the package."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Find the package having the specified name."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Make this package."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "#<Package-Hashtable: Size = ~D, Free = ~D, Deleted = ~D>"
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"DO-SYMBOLS (VAR [PACKAGE [RESULT-FORM]]) {DECLARATION}* {TAG | FORM}*\n"
+"   Executes the FORMs at least once for each symbol accessible in the given\n"
+"   PACKAGE with VAR bound to the current symbol."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"DO-EXTERNAL-SYMBOLS (VAR [PACKAGE [RESULT-FORM]]) {DECL}* {TAG | FORM}*\n"
+"   Executes the FORMs once for each external symbol in the given PACKAGE "
+"with\n"
+"   VAR bound to the current symbol."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"DO-ALL-SYMBOLS (VAR [RESULT-FORM]) {DECLARATION}* {TAG | FORM}*\n"
+"   Executes the FORMs once for each symbol in every package with VAR bound\n"
+"   to the current symbol."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Within the lexical scope of the body forms, MNAME is defined via macrolet\n"
+"   such that successive invocations of (mname) will return the symbols,\n"
+"   one by one, from the packages in PACKAGE-LIST. SYMBOL-TYPES may be\n"
+"   any of :inherited :external :internal."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Must supply at least one of :internal, ~\n"
+"	                             :external, or :inherited."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"~S is not one of :internal, :external, ~\n"
+"		                       or :inherited."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Defines a new package called PACKAGE.  Each of OPTIONS should be one of the\n"
+"   following:\n"
+"     (:NICKNAMES {package-name}*)\n"
+"     (:SIZE <integer>)\n"
+"     (:SHADOW {symbol-name}*)\n"
+"     (:SHADOWING-IMPORT-FROM <package-name> {symbol-name}*)\n"
+"     (:USE {package-name}*)\n"
+"     (:IMPORT-FROM <package-name> {symbol-name}*)\n"
+"     (:INTERN {symbol-name}*)\n"
+"     (:EXPORT {symbol-name}*)\n"
+"     (:DOCUMENTATION doc-string)\n"
+"   All options except :SIZE and :DOCUMENTATION can be used multiple times."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Bogus DEFPACKAGE option: ~S"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Can't specify :SIZE twice."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Bogus :SIZE, must be a positive integer: ~S"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Can't specify :DOCUMENTATION twice."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Parameters ~S and ~S must be disjoint ~\n"
+"	                             but have common elements ~%   ~S"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "~A is a nick-name for the package ~A"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "~A also shadows the following symbols:~%  ~S"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "~A previously used the following packages:~%  ~S"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "~A also exports the following symbols:~%  ~S"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "~A does not contain a symbol ~A"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "~S is a package name, so it cannot be a nickname for ~S."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Ignore this nickname."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "~S is already a nickname for ~S."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Redefine this nickname."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Makes a new package having the specified Name and Nicknames.  The\n"
+"  package will inherit all external symbols from each package in\n"
+"  the use list.  :Internal-Symbols and :External-Symbols are\n"
+"  estimates for the number of internal and external symbols which\n"
+"  will ultimately be present in the package."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Leave existing package alone."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "A package named ~S already exists"
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Sets *PACKAGE* to package with given NAME, creating the package if\n"
+"   it does not exist.  If the package already exists then it is modified\n"
+"   to agree with the :USE and :NICKNAMES arguments.  Any new nicknames\n"
+"   are added without removing any old ones not specified.  If any package\n"
+"   in the :Use list is not currently used, then it is added to the use\n"
+"   list."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Old-style IN-PACKAGE."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "The package named ~S doesn't exist."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Changes the name and nicknames for a package."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "A package named ~S already exists."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Delete the PACKAGE-OR-NAME from the package system data structures."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "No package of name ~S."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Return NIL"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Remove dependency in other packages."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Returns a list of all existing packages."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Returns a symbol having the specified name, creating it if necessary."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Returns the symbol NAME in PACKAGE.  If such a symbol is found\n"
+"  then the second value is :internal, :external or :inherited to indicate\n"
+"  how the symbol is accessible.  If no symbol is found then both values\n"
+"  are NIL."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Makes SYMBOL no longer present in PACKAGE.  If SYMBOL was present\n"
+"  then T is returned, otherwise NIL.  If PACKAGE is SYMBOL's home\n"
+"  package, then it is made uninterned."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "uninterning symbol ~A"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "prompt for a symbol to shadowing-import."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Uninterning symbol ~S causes name conflict among these symbols:~%~S"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Symbol to shadowing-import: "
+msgstr ""
+
+#: target:code/package.lisp
+msgid "~S is not a symbol."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "~S is not one of the conflicting symbols."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "~S is neither a symbol nor a list of symbols."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Exports SYMBOLS from PACKAGE, checking that no name conflicts result."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Exporting these symbols from the ~A package:~%~S~%~\n"
+"	      results in name conflicts with these packages:~%~{~A ~}"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "These symbols are not accessible in the ~A package:~%~S"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Import these symbols into the ~A package."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Makes SYMBOLS no longer exported from PACKAGE."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "unexporting symbols ~A"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "~S is not accessible in the ~A package."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Make SYMBOLS accessible as internal symbols in PACKAGE.  If a symbol\n"
+"  is already accessible then it has no effect.  If a name conflict\n"
+"  would result from the importation, then a correctable error is signalled."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Importing these symbols into the ~A package ~\n"
+"		causes a name conflict:~%~S"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Import these symbols with Shadowing-Import."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Import SYMBOLS into PACKAGE, disregarding any name conflict.  If\n"
+"  a symbol of the same name is present, then it is uninterned.\n"
+"  The symbols are added to the Package-Shadowing-Symbols."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Make an internal symbol in PACKAGE with the same name as each of the\n"
+"  specified SYMBOLS, adding the new symbols to the Package-Shadowing-Symbols"
+".\n"
+"  If a symbol with the given name is already present in PACKAGE, then\n"
+"  the existing symbol is placed in the shadowing symbols list if it is\n"
+"  not already present."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Add all the PACKAGES-TO-USE to the use list for PACKAGE so that\n"
+"  the external symbols of the used packages are accessible as internal\n"
+"  symbols in PACKAGE."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Unintern the conflicting symbols in the ~2*~A package."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Use'ing package ~A results in name conflicts for these symbols:~%~S"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Remove PACKAGES-TO-UNUSE from the use list for PACKAGE."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Return a list of all symbols in the system having the specified name."
+msgstr ""
+
+#: target:code/describe.lisp target:code/package.lisp
+msgid "special variable"
+msgstr ""
+
+#: target:code/describe.lisp target:code/package.lisp
+msgid "constant"
+msgstr ""
+
+#: target:code/describe.lisp target:code/package.lisp
+msgid "undefined variable"
+msgstr ""
+
+#: target:code/describe.lisp target:code/package.lisp
+msgid "symbol macro"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "alien variable"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "value: "
+msgstr ""
+
+#: target:code/package.lisp
+msgid "macro"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "special operator"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "function"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "class"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "type"
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Call FUN with each symbol that contains STRING.\n"
+"  If PACKAGE is supplied then only use symbols present in\n"
+"  that package.  If EXTERNAL-ONLY is true then only use\n"
+"  symbols exported from the specified package."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Briefly describe all symbols which contain the specified STRING.\n"
+"  If PACKAGE is supplied then only describe symbols present in\n"
+"  that package.  If EXTERNAL-ONLY is non-NIL then only describe\n"
+"  external symbols in the specified package."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Identical to APROPOS, except that it returns a list of the symbols\n"
+"  found instead of describing them."
+msgstr ""
+
 #: target:code/backq.lisp
 msgid "How deep we are into backquotes"
 msgstr ""
@@ -4831,6 +5739,178 @@
 msgid "~S code location at ~D"
 msgstr ""
 
+#: target:code/ntrace.lisp
+msgid ""
+"This is bound to the returned values when evaluating :BREAK-AFTER and\n"
+"   :PRINT-AFTER forms."
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid ""
+"If the trace indentation exceeds this value, then indentation restarts at\n"
+"   0."
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid "The default value for the :ENCAPSULATE option to trace."
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid ""
+"List of package names.  Encapsulate functions from these packages\n"
+"   by default.  This should at least include the packages of functions\n"
+"   used by TRACE, directly or indirectly."
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid "Can't trace special form ~S."
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid "Breaking ~A traced call to ~S:"
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid "~S returned"
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid "Function ~S already TRACE'd, retracing it."
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid "~S name is not a defined global function: ~S"
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid "Can't use encapsulation to trace anonymous function ~S."
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid "Can't use encapsulation to trace local flet/labels function ~S."
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid "Tracing shared code for ~S:~%  ~S"
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid "Missing argument to ~S TRACE option."
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid "Unknown TRACE option: ~S"
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid ""
+"TRACE {Option Global-Value}* {Name {Option Value}*}*\n"
+"   TRACE is a debugging tool that prints information when specified function"
+"s\n"
+"   are called.  In its simplest form:\n"
+"       (trace Name-1 Name-2 ...)\n"
+"\n"
+"   CLOS methods can be traced by specifying a name of the form\n"
+"   (METHOD {Qualifier}* ({Specializer}*)).\n"
+"\n"
+"   Labels and Flet functions can be traced by specifying a name of the form\n"
+"   (LABELS <lfun> <fun>) or (FLET <lfun> <fun>) where <lfun> is the Labels/F"
+"let\n"
+"   function in <fun>.\n"
+"\n"
+"   TRACE causes a printout on *TRACE-OUTPUT* each time that one of the "
+"named\n"
+"   functions is entered or returns (the Names are not evaluated.)  The "
+"output\n"
+"   is indented according to the number of pending traced calls, and this "
+"trace\n"
+"   depth is printed at the beginning of each line of output.\n"
+"\n"
+"   Options allow modification of the default behavior.  Each option is a "
+"pair\n"
+"   of an option keyword and a value form.  Options may be interspersed with\n"
+"   function names.  Options only affect tracing of the function whose name "
+"they\n"
+"   appear immediately after.  Global options are specified before the first\n"
+"   name, and affect all functions traced by a given use of TRACE.\n"
+"\n"
+"   The following options are defined:\n"
+"\n"
+"   :CONDITION Form\n"
+"   :CONDITION-AFTER Form\n"
+"   :CONDITION-ALL Form\n"
+"       If :CONDITION is specified, then TRACE does nothing unless Form\n"
+"       evaluates to true at the time of the call.  :CONDITION-AFTER is\n"
+"       similar, but suppresses the initial printout, and is tested when the\n"
+"       function returns.  :CONDITION-ALL tries both before and after.\n"
+"\n"
+"   :WHEREIN Names\n"
+"       If specified, Names is a function name or list of names.  TRACE does\n"
+"       nothing unless a call to one of those functions encloses the call to\n"
+"       this function (i.e. it would appear in a backtrace.)  Anonymous\n"
+"       functions have string names like \"DEFUN FOO\".\n"
+"   :WHEREIN-ONLY Names\n"
+"       Like :WHEREIN, but only if the immediate caller is one of Names,\n"
+"       instead of being any where in a backtrace.\n"
+"\n"
+"   :BREAK Form\n"
+"   :BREAK-AFTER Form\n"
+"   :BREAK-ALL Form\n"
+"       If specified, and Form evaluates to true, then the debugger is "
+"invoked\n"
+"       at the start of the function, at the end of the function, or both,\n"
+"       according to the respective option.\n"
+"\n"
+"   :PRINT Form\n"
+"   :PRINT-AFTER Form\n"
+"   :PRINT-ALL Form\n"
+"       In addition to the usual printout, the result of evaluating FORM is\n"
+"       printed at the start of the function, at the end of the function, or\n"
+"       both, according to the respective option.  Multiple print options "
+"cause\n"
+"       multiple values to be printed.\n"
+"\n"
+"   :FUNCTION Function-Form\n"
+"       This is a not really an option, but rather another way of specifying\n"
+"       what function to trace.  The Function-Form is evaluated immediately,\n"
+"       and the resulting function is traced.\n"
+"\n"
+"   :METHODS Function-Form\n"
+"       This is a not really an option, but rather a way of specifying\n"
+"       that all methods of a generic functions should be traced.  The\n"
+"       Function-Form is evaluated immediately, and the methods of the "
+"resulting\n"
+"       generic function are traced.\n"
+"\n"
+"   :ENCAPSULATE {:DEFAULT | T | NIL}\n"
+"       If T, the tracing is done via encapsulation (redefining the function\n"
+"       name) rather than by modifying the function.  :DEFAULT is the "
+"default,\n"
+"       and means to use encapsulation for interpreted functions and funcalla"
+"ble\n"
+"       instances, breakpoints otherwise.  When encapsulation is used, forms "
+"are\n"
+"       *not* evaluated in the function's lexical environment, but DEBUG:ARG "
+"can\n"
+"       still be used.\n"
+"\n"
+"   :CONDITION, :BREAK and :PRINT forms are evaluated in the lexical environm"
+"ent\n"
+"   of the called function; DEBUG:VAR and DEBUG:ARG can be used.  The -AFTER "
+"and\n"
+"   -ALL forms are evaluated in the null environment."
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid "Function is not TRACE'd -- ~S."
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid ""
+"Removes tracing from the specified functions.  With no args, untraces all\n"
+"   functions."
+msgstr ""
+
 #: target:code/profile.lisp
 msgid "dfixnum became negative ~a/~a - ~a/~a(~a/~a)"
 msgstr ""
@@ -5095,22 +6175,6 @@
 msgstr ""
 
 #: target:code/describe.lisp
-msgid "special variable"
-msgstr ""
-
-#: target:code/describe.lisp
-msgid "constant"
-msgstr ""
-
-#: target:code/describe.lisp
-msgid "undefined variable"
-msgstr ""
-
-#: target:code/describe.lisp
-msgid "symbol macro"
-msgstr ""
-
-#: target:code/describe.lisp
 msgid "Special form"
 msgstr ""
 
Index: src/i18n/locale/ko/LC_MESSAGES/cmucl.po
diff -u src/i18n/locale/ko/LC_MESSAGES/cmucl.po:1.1.2.9 src/i18n/locale/ko/LC_MESSAGES/cmucl.po:1.1.2.10
--- src/i18n/locale/ko/LC_MESSAGES/cmucl.po:1.1.2.9	Tue Feb  9 16:33:11 2010
+++ src/i18n/locale/ko/LC_MESSAGES/cmucl.po	Tue Feb  9 18:42:32 2010
@@ -179,6 +179,12 @@
 "  setf."
 msgstr ""
 
+#: target:code/format.lisp target:code/print.lisp target:code/irrat-dd.lisp
+#: target:code/irrat.lisp target:code/float.lisp target:code/numbers.lisp
+#: target:code/kernel.lisp
+msgid "Argument ~A is not a ~S: ~S."
+msgstr ""
+
 #: target:pcl/dfun.lisp target:code/interr.lisp target:code/lispinit.lisp
 msgid "Help! "
 msgstr ""
@@ -1952,6 +1958,446 @@
 msgid "Too large to be represented as a ~S:~%  ~S"
 msgstr ""
 
+#: target:code/numbers.lisp
+msgid "More types than vars."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Duplicate case: ~S."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "More vars than types."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"NUMBER-DISPATCH ({(Var Type)}*) {((Type*) Form*) | (Symbol Arg*)}*\n"
+"  A vaguely case-like macro that does number cross-product dispatches.  The\n"
+"  Vars are the variables we are dispatching off of.  The Type paired with "
+"each\n"
+"  Var is used in the error message when no case matches.  Each case "
+"specifies a\n"
+"  Type for each var, and is executed when that signature holds.  A type may "
+"be\n"
+"  a list (FOREACH Each-Type*), causing that case to be repeatedly "
+"instantiated\n"
+"  for every Each-Type.  In the body of each case, any list of the form\n"
+"  (DISPATCH-TYPE Var-Name) is substituted with the type of that var in that\n"
+"  instance of the case.\n"
+"\n"
+"  As an alternate to a case spec, there may be a form whose CAR is a "
+"symbol.\n"
+"  In this case, we apply the CAR of the form to the CDR and treat the result "
+"of\n"
+"  the call as a list of cases.  This process is not applied recursively."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns the element type of the most specialized COMPLEX number type that\n"
+"   can hold parts of type Spec."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Assume this is a subtype of REAL anyway."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Cannot determine if ~S is a subtype of REAL."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Complex numbers cannot have components of type ~S."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Builds a complex number from the specified components."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Extracts the real part of a number."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Extracts the imaginary part of a number."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns the complex conjugate of NUMBER.  For non-complex numbers, this is\n"
+"  an identity."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "If NUMBER is zero, return NUMBER, else return (/ NUMBER (ABS NUMBER))."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Return the numerator of NUMBER, which must be rational."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Return the denominator of NUMBER, which must be rational."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns the sum of its arguments.  With no args, returns 0."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns the product of its arguments.  With no args, returns 1."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Subtracts the second and all subsequent arguments from the first.\n"
+"  With one arg, negates it."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Divides the first arg by each of the following arguments, in turn.\n"
+"  With one arg, returns reciprocal."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns NUMBER + 1."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns NUMBER - 1."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns number (or number/divisor) as an integer, rounded toward 0.\n"
+"  The second returned value is the remainder."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns the greatest integer not greater than number, or number/divisor.\n"
+"  The second returned value is (mod number divisor)."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns the smallest integer not less than number, or number/divisor.\n"
+"  The second returned value is the remainder."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Rounds number (or number/divisor) to nearest integer.\n"
+"  The second returned value is the remainder."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns second result of TRUNCATE."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns second result of FLOOR."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Same as TRUNCATE, but returns first value as a float."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Same as FLOOR, but returns first value as a float."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Same as CEILING, but returns first value as a float."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Same as ROUND, but returns first value as a float."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns T if all of its arguments are numerically equal, NIL otherwise."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns T if no two of its arguments are numerically equal, NIL otherwise."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns T if its arguments are in strictly increasing order, NIL otherwise."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns T if its arguments are in strictly decreasing order, NIL otherwise."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns T if arguments are in strictly non-decreasing order, NIL otherwise."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns T if arguments are in strictly non-increasing order, NIL otherwise."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns the greatest of its arguments."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns the least of its arguments."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Return T if OBJ1 and OBJ2 represent the same object, otherwise NIL."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns the bit-wise or of its arguments.  Args must be integers."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns the bit-wise exclusive or of its arguments.  Args must be integers."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns the bit-wise and of its arguments.  Args must be integers."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns the bit-wise equivalence of its arguments.  Args must be integers."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns the complement of the logical AND of integer1 and integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns the complement of the logical OR of integer1 and integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns the logical AND of (LOGNOT integer1) and integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns the logical AND of integer1 and (LOGNOT integer2)."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns the logical OR of (LOGNOT integer1) and integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns the logical OR of integer1 and (LOGNOT integer2)."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns the bit-wise logical not of integer."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Count the number of 1 bits if INTEGER is positive, and the number of 0 bits\n"
+"  if INTEGER is negative."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Predicate which returns T if logand of integer1 and integer2 is not zero."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Predicate returns T if bit index of integer is a 1.  The least\n"
+"significant bit of INTEGER is bit 0."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Shifts integer left by count places preserving sign.  - count shifts right."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns the number of significant bits in the absolute value of integer."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns a byte specifier which may be used by other byte functions."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns the size part of the byte specifier bytespec."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns the position part of the byte specifier bytespec."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Extract the specified byte from integer, and right justify result."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns T if any of the specified bits in integer are 1's."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Extract the specified byte from integer,  but do not right justify result."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns new integer with newbyte in specified position, newbyte is right "
+"justified."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns new integer with newbyte in specified position, newbyte is not right "
+"justified."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Boole function op, makes BOOLE return 0."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Boole function op, makes BOOLE return -1."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Boole function op, makes BOOLE return integer1."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Boole function op, makes BOOLE return integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Boole function op, makes BOOLE return complement of integer1."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Boole function op, makes BOOLE return complement of integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Boole function op, makes BOOLE return logand of integer1 and integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Boole function op, makes BOOLE return logior of integer1 and integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Boole function op, makes BOOLE return logxor of integer1 and integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Boole function op, makes BOOLE return logeqv of integer1 and integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Boole function op, makes BOOLE return log nand of integer1 and integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Boole function op, makes BOOLE return lognor of integer1 and integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Boole function op, makes BOOLE return logandc1 of integer1 and integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Boole function op, makes BOOLE return logandc2 of integer1 and integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Boole function op, makes BOOLE return logorc1 of integer1 and integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Boole function op, makes BOOLE return logorc2 of integer1 and integer2."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Bit-wise boolean function on two integers.  Function chosen by OP:\n"
+"\t0\tBOOLE-CLR\n"
+"\t1\tBOOLE-SET\n"
+"\t2\tBOOLE-1\n"
+"  \t3\tBOOLE-2\n"
+"\t4\tBOOLE-C1\n"
+"\t5\tBOOLE-C2\n"
+"\t6\tBOOLE-AND\n"
+"\t7\tBOOLE-IOR\n"
+" \t8\tBOOLE-XOR\n"
+"\t9\tBOOLE-EQV\n"
+"\t10\tBOOLE-NAND\n"
+"\t11\tBOOLE-NOR\n"
+"\t12\tBOOLE-ANDC1\n"
+"\t13\tBOOLE-ANDC2\n"
+"\t14\tBOOLE-ORC1\n"
+"\t15\tBOOLE-ORC2"
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns the greatest common divisor of the arguments, which must be\n"
+"  integers.  Gcd with no arguments is defined to be 0."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns the least common multiple of one or more integers.  LCM of no\n"
+"  arguments is defined to be 1."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns T iff X is a positive prime integer."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid ""
+"Returns the root of the nearest integer less than n which is a perfect\n"
+"   square."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns T if number = 0, NIL otherwise."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns T if number > 0, NIL otherwise."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns T if number < 0, NIL otherwise."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns T if number is odd, NIL otherwise."
+msgstr ""
+
+#: target:code/numbers.lisp
+msgid "Returns T if number is even, NIL otherwise."
+msgstr ""
+
 #: target:code/float-trap.lisp
 msgid "Unknown float trap kind: ~S."
 msgstr ""
@@ -3278,6 +3724,466 @@
 msgid "Table of ordinal tens-place digits in English"
 msgstr ""
 
+#: target:code/package.lisp
+msgid ""
+"The list of packages to use by default of no :USE argument is supplied\n"
+"   to MAKE-PACKAGE or other package creation forms."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Standard structure for the description of a package.  Consists of \n"
+"   a list of all hash tables, the name of the package, the nicknames of\n"
+"   the package, the use-list for the package, the used-by- list, hash-\n"
+"   tables for the internal and external symbols, and a list of the\n"
+"   shadowing symbols."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "The ~A package, ~D/~D internal, ~D/~D external"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "The ~A package"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "deleted package"
+msgstr ""
+
+#: target:code/package.lisp
+#, fuzzy
+msgid "The current package."
+msgstr "현재의 역동적인 공간은 ~D입니다.~%"
+
+#: target:code/package.lisp
+msgid "~&~@<Attempt to modify the locked package ~A, by ~3i~:_~?~:>"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "redefining function ~A"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Bogus ~A name: ~S"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Can't do anything to a deleted package: ~S"
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Given PACKAGE-SPECIFIER, a package, symbol or string, return the\n"
+"  parent package.  If there is not a parent, signal an error."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "The parent of ~a does not exist."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "There is no parent of ~a."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Given PACKAGE-SPECIFIER, a package, symbol or string, return all the\n"
+"  packages which are in the hierarchy 'under' the given package.  If\n"
+"  :recurse is nil, then only return the immediate children of the package."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Find the package having the specified name."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Make this package."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "#<Package-Hashtable: Size = ~D, Free = ~D, Deleted = ~D>"
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"DO-SYMBOLS (VAR [PACKAGE [RESULT-FORM]]) {DECLARATION}* {TAG | FORM}*\n"
+"   Executes the FORMs at least once for each symbol accessible in the given\n"
+"   PACKAGE with VAR bound to the current symbol."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"DO-EXTERNAL-SYMBOLS (VAR [PACKAGE [RESULT-FORM]]) {DECL}* {TAG | FORM}*\n"
+"   Executes the FORMs once for each external symbol in the given PACKAGE "
+"with\n"
+"   VAR bound to the current symbol."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"DO-ALL-SYMBOLS (VAR [RESULT-FORM]) {DECLARATION}* {TAG | FORM}*\n"
+"   Executes the FORMs once for each symbol in every package with VAR bound\n"
+"   to the current symbol."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Within the lexical scope of the body forms, MNAME is defined via macrolet\n"
+"   such that successive invocations of (mname) will return the symbols,\n"
+"   one by one, from the packages in PACKAGE-LIST. SYMBOL-TYPES may be\n"
+"   any of :inherited :external :internal."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Must supply at least one of :internal, ~\n"
+"\t                             :external, or :inherited."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"~S is not one of :internal, :external, ~\n"
+"\t\t                       or :inherited."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Defines a new package called PACKAGE.  Each of OPTIONS should be one of the\n"
+"   following:\n"
+"     (:NICKNAMES {package-name}*)\n"
+"     (:SIZE <integer>)\n"
+"     (:SHADOW {symbol-name}*)\n"
+"     (:SHADOWING-IMPORT-FROM <package-name> {symbol-name}*)\n"
+"     (:USE {package-name}*)\n"
+"     (:IMPORT-FROM <package-name> {symbol-name}*)\n"
+"     (:INTERN {symbol-name}*)\n"
+"     (:EXPORT {symbol-name}*)\n"
+"     (:DOCUMENTATION doc-string)\n"
+"   All options except :SIZE and :DOCUMENTATION can be used multiple times."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Bogus DEFPACKAGE option: ~S"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Can't specify :SIZE twice."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Bogus :SIZE, must be a positive integer: ~S"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Can't specify :DOCUMENTATION twice."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Parameters ~S and ~S must be disjoint ~\n"
+"\t                             but have common elements ~%   ~S"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "~A is a nick-name for the package ~A"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "~A also shadows the following symbols:~%  ~S"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "~A previously used the following packages:~%  ~S"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "~A also exports the following symbols:~%  ~S"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "~A does not contain a symbol ~A"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "~S is a package name, so it cannot be a nickname for ~S."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Ignore this nickname."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "~S is already a nickname for ~S."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Redefine this nickname."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Makes a new package having the specified Name and Nicknames.  The\n"
+"  package will inherit all external symbols from each package in\n"
+"  the use list.  :Internal-Symbols and :External-Symbols are\n"
+"  estimates for the number of internal and external symbols which\n"
+"  will ultimately be present in the package."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Leave existing package alone."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "A package named ~S already exists"
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Sets *PACKAGE* to package with given NAME, creating the package if\n"
+"   it does not exist.  If the package already exists then it is modified\n"
+"   to agree with the :USE and :NICKNAMES arguments.  Any new nicknames\n"
+"   are added without removing any old ones not specified.  If any package\n"
+"   in the :Use list is not currently used, then it is added to the use\n"
+"   list."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Old-style IN-PACKAGE."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "The package named ~S doesn't exist."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Changes the name and nicknames for a package."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "A package named ~S already exists."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Delete the PACKAGE-OR-NAME from the package system data structures."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "No package of name ~S."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Return NIL"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Remove dependency in other packages."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Returns a list of all existing packages."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Returns a symbol having the specified name, creating it if necessary."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Returns the symbol NAME in PACKAGE.  If such a symbol is found\n"
+"  then the second value is :internal, :external or :inherited to indicate\n"
+"  how the symbol is accessible.  If no symbol is found then both values\n"
+"  are NIL."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Makes SYMBOL no longer present in PACKAGE.  If SYMBOL was present\n"
+"  then T is returned, otherwise NIL.  If PACKAGE is SYMBOL's home\n"
+"  package, then it is made uninterned."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "uninterning symbol ~A"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "prompt for a symbol to shadowing-import."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Uninterning symbol ~S causes name conflict among these symbols:~%~S"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Symbol to shadowing-import: "
+msgstr ""
+
+#: target:code/package.lisp
+msgid "~S is not a symbol."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "~S is not one of the conflicting symbols."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "~S is neither a symbol nor a list of symbols."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Exports SYMBOLS from PACKAGE, checking that no name conflicts result."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Exporting these symbols from the ~A package:~%~S~%~\n"
+"\t      results in name conflicts with these packages:~%~{~A ~}"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "These symbols are not accessible in the ~A package:~%~S"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Import these symbols into the ~A package."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Makes SYMBOLS no longer exported from PACKAGE."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "unexporting symbols ~A"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "~S is not accessible in the ~A package."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Make SYMBOLS accessible as internal symbols in PACKAGE.  If a symbol\n"
+"  is already accessible then it has no effect.  If a name conflict\n"
+"  would result from the importation, then a correctable error is signalled."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Importing these symbols into the ~A package ~\n"
+"\t\tcauses a name conflict:~%~S"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Import these symbols with Shadowing-Import."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Import SYMBOLS into PACKAGE, disregarding any name conflict.  If\n"
+"  a symbol of the same name is present, then it is uninterned.\n"
+"  The symbols are added to the Package-Shadowing-Symbols."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Make an internal symbol in PACKAGE with the same name as each of the\n"
+"  specified SYMBOLS, adding the new symbols to the Package-Shadowing-"
+"Symbols.\n"
+"  If a symbol with the given name is already present in PACKAGE, then\n"
+"  the existing symbol is placed in the shadowing symbols list if it is\n"
+"  not already present."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Add all the PACKAGES-TO-USE to the use list for PACKAGE so that\n"
+"  the external symbols of the used packages are accessible as internal\n"
+"  symbols in PACKAGE."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Unintern the conflicting symbols in the ~2*~A package."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Use'ing package ~A results in name conflicts for these symbols:~%~S"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Remove PACKAGES-TO-UNUSE from the use list for PACKAGE."
+msgstr ""
+
+#: target:code/package.lisp
+msgid "Return a list of all symbols in the system having the specified name."
+msgstr ""
+
+#: target:code/describe.lisp target:code/package.lisp
+msgid "special variable"
+msgstr ""
+
+#: target:code/describe.lisp target:code/package.lisp
+msgid "constant"
+msgstr ""
+
+#: target:code/describe.lisp target:code/package.lisp
+msgid "undefined variable"
+msgstr ""
+
+#: target:code/describe.lisp target:code/package.lisp
+msgid "symbol macro"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "alien variable"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "value: "
+msgstr ""
+
+#: target:code/package.lisp
+msgid "macro"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "special operator"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "function"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "class"
+msgstr ""
+
+#: target:code/package.lisp
+msgid "type"
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Call FUN with each symbol that contains STRING.\n"
+"  If PACKAGE is supplied then only use symbols present in\n"
+"  that package.  If EXTERNAL-ONLY is true then only use\n"
+"  symbols exported from the specified package."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Briefly describe all symbols which contain the specified STRING.\n"
+"  If PACKAGE is supplied then only describe symbols present in\n"
+"  that package.  If EXTERNAL-ONLY is non-NIL then only describe\n"
+"  external symbols in the specified package."
+msgstr ""
+
+#: target:code/package.lisp
+msgid ""
+"Identical to APROPOS, except that it returns a list of the symbols\n"
+"  found instead of describing them."
+msgstr ""
+
 #: target:code/backq.lisp
 msgid "How deep we are into backquotes"
 msgstr ""
@@ -4844,6 +5750,178 @@
 msgid "~S code location at ~D"
 msgstr ""
 
+#: target:code/ntrace.lisp
+msgid ""
+"This is bound to the returned values when evaluating :BREAK-AFTER and\n"
+"   :PRINT-AFTER forms."
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid ""
+"If the trace indentation exceeds this value, then indentation restarts at\n"
+"   0."
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid "The default value for the :ENCAPSULATE option to trace."
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid ""
+"List of package names.  Encapsulate functions from these packages\n"
+"   by default.  This should at least include the packages of functions\n"
+"   used by TRACE, directly or indirectly."
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid "Can't trace special form ~S."
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid "Breaking ~A traced call to ~S:"
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid "~S returned"
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid "Function ~S already TRACE'd, retracing it."
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid "~S name is not a defined global function: ~S"
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid "Can't use encapsulation to trace anonymous function ~S."
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid "Can't use encapsulation to trace local flet/labels function ~S."
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid "Tracing shared code for ~S:~%  ~S"
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid "Missing argument to ~S TRACE option."
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid "Unknown TRACE option: ~S"
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid ""
+"TRACE {Option Global-Value}* {Name {Option Value}*}*\n"
+"   TRACE is a debugging tool that prints information when specified "
+"functions\n"
+"   are called.  In its simplest form:\n"
+"       (trace Name-1 Name-2 ...)\n"
+"\n"
+"   CLOS methods can be traced by specifying a name of the form\n"
+"   (METHOD {Qualifier}* ({Specializer}*)).\n"
+"\n"
+"   Labels and Flet functions can be traced by specifying a name of the form\n"
+"   (LABELS <lfun> <fun>) or (FLET <lfun> <fun>) where <lfun> is the Labels/"
+"Flet\n"
+"   function in <fun>.\n"
+"\n"
+"   TRACE causes a printout on *TRACE-OUTPUT* each time that one of the "
+"named\n"
+"   functions is entered or returns (the Names are not evaluated.)  The "
+"output\n"
+"   is indented according to the number of pending traced calls, and this "
+"trace\n"
+"   depth is printed at the beginning of each line of output.\n"
+"\n"
+"   Options allow modification of the default behavior.  Each option is a "
+"pair\n"
+"   of an option keyword and a value form.  Options may be interspersed with\n"
+"   function names.  Options only affect tracing of the function whose name "
+"they\n"
+"   appear immediately after.  Global options are specified before the first\n"
+"   name, and affect all functions traced by a given use of TRACE.\n"
+"\n"
+"   The following options are defined:\n"
+"\n"
+"   :CONDITION Form\n"
+"   :CONDITION-AFTER Form\n"
+"   :CONDITION-ALL Form\n"
+"       If :CONDITION is specified, then TRACE does nothing unless Form\n"
+"       evaluates to true at the time of the call.  :CONDITION-AFTER is\n"
+"       similar, but suppresses the initial printout, and is tested when the\n"
+"       function returns.  :CONDITION-ALL tries both before and after.\n"
+"\n"
+"   :WHEREIN Names\n"
+"       If specified, Names is a function name or list of names.  TRACE does\n"
+"       nothing unless a call to one of those functions encloses the call to\n"
+"       this function (i.e. it would appear in a backtrace.)  Anonymous\n"
+"       functions have string names like \"DEFUN FOO\".\n"
+"   :WHEREIN-ONLY Names\n"
+"       Like :WHEREIN, but only if the immediate caller is one of Names,\n"
+"       instead of being any where in a backtrace.\n"
+"\n"
+"   :BREAK Form\n"
+"   :BREAK-AFTER Form\n"
+"   :BREAK-ALL Form\n"
+"       If specified, and Form evaluates to true, then the debugger is "
+"invoked\n"
+"       at the start of the function, at the end of the function, or both,\n"
+"       according to the respective option.\n"
+"\n"
+"   :PRINT Form\n"
+"   :PRINT-AFTER Form\n"
+"   :PRINT-ALL Form\n"
+"       In addition to the usual printout, the result of evaluating FORM is\n"
+"       printed at the start of the function, at the end of the function, or\n"
+"       both, according to the respective option.  Multiple print options "
+"cause\n"
+"       multiple values to be printed.\n"
+"\n"
+"   :FUNCTION Function-Form\n"
+"       This is a not really an option, but rather another way of specifying\n"
+"       what function to trace.  The Function-Form is evaluated immediately,\n"
+"       and the resulting function is traced.\n"
+"\n"
+"   :METHODS Function-Form\n"
+"       This is a not really an option, but rather a way of specifying\n"
+"       that all methods of a generic functions should be traced.  The\n"
+"       Function-Form is evaluated immediately, and the methods of the "
+"resulting\n"
+"       generic function are traced.\n"
+"\n"
+"   :ENCAPSULATE {:DEFAULT | T | NIL}\n"
+"       If T, the tracing is done via encapsulation (redefining the function\n"
+"       name) rather than by modifying the function.  :DEFAULT is the "
+"default,\n"
+"       and means to use encapsulation for interpreted functions and "
+"funcallable\n"
+"       instances, breakpoints otherwise.  When encapsulation is used, forms "
+"are\n"
+"       *not* evaluated in the function's lexical environment, but DEBUG:ARG "
+"can\n"
+"       still be used.\n"
+"\n"
+"   :CONDITION, :BREAK and :PRINT forms are evaluated in the lexical "
+"environment\n"
+"   of the called function; DEBUG:VAR and DEBUG:ARG can be used.  The -AFTER "
+"and\n"
+"   -ALL forms are evaluated in the null environment."
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid "Function is not TRACE'd -- ~S."
+msgstr ""
+
+#: target:code/ntrace.lisp
+msgid ""
+"Removes tracing from the specified functions.  With no args, untraces all\n"
+"   functions."
+msgstr ""
+
 #: target:code/profile.lisp
 msgid "dfixnum became negative ~a/~a - ~a/~a(~a/~a)"
 msgstr ""
@@ -5108,22 +6186,6 @@
 msgstr ""
 
 #: target:code/describe.lisp
-msgid "special variable"
-msgstr ""
-
-#: target:code/describe.lisp
-msgid "constant"
-msgstr ""
-
-#: target:code/describe.lisp
-msgid "undefined variable"
-msgstr ""
-
-#: target:code/describe.lisp
-msgid "symbol macro"
-msgstr ""
-
-#: target:code/describe.lisp
 msgid "Special form"
 msgstr ""
 



More information about the cmucl-commit mailing list