gcl-devel
[Top][All Lists]
Advanced

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

Re: [Gcl-devel] conditions/clos/gcl unified build patch and instruct


From: John Jorgensen
Subject: Re: [Gcl-devel] conditions/clos/gcl unified build patch and instructions.
Date: Fri, 7 Jun 2002 19:34:09 -0400 (EDT)

With a modified version of Vadim's script (attached), I got the packages
to work with no problems. The only major (relatively) thing I had to do
was add the nicknames cl (for common-lisp) and cl-user (for
common-lisp-user). I tried to add the nicknames in gcl/o/package.d in
the make_package calls but then I got an error compiling
gcl/lsp/defpackage.lsp. It looks like defpackage.lsp tries to do some
package renaming and nicknaming...

Of course, there is the matter of user::quit... I just import that into
common-lisp-user.

Wow, playing with GCL is a nice way to learn about lisp...

J*
--------------------------------
On 7 Jun 2002, Camm Maguire wrote:

> Greetings!  OK, Vadim, could you please check out the latest?  All I
> did was setup common-lisp and common-lisp user in C as their old
> analogs were, without changing the default symbol creation code
> (i.e. make_ordinary still adds to the lisp package, etc.)
> 
> Here is my startup gcl session.  Could you propose a cleaned/corrected
> version of something like the following?  (I don't know what it means
> for one package to "use" another exactly -- I thought common-lisp-user
> would inherit the changes to common-lisp, but apparently not).
> 
> Take care,
> =============================================================================
> 
> intech19:~/gcl/tmp/foo$ unixport/saved_gcl
> GCL (GNU Common Lisp)  Version(2.5.0) Fri Jun  7 13:22:58 EDT 2002
> Licensed under GNU Library General Public License
> Contains Enhancements by W. Schelter
> 
> >      (let ((lst ()))
>         (do-symbols (s (find-package 'common-lisp)) (push s lst))
>         lst)
> 
> 
> (NIL T)
> 
> >      (let ((lst ()))
>         (do-symbols (s (find-package 'common-lisp-user)) (push s lst))
>         lst)
> 
> 
> NIL
> 
> >(setq lisp_unexport
>  '(LISP::LAMBDA-BLOCK-CLOSURE
>    LISP::BYE
>    LISP::QUIT
>    LISP::EXIT
>    LISP::IEEE-FLOATING-POINT
>    LISP::DEFENTRY
>    LISP::VOID
>    LISP::ALLOCATE-CONTIGUOUS-PAGES
>    LISP::UNSIGNED-SHORT
>    LISP::DOUBLE
>    LISP::BY
>    LISP::GBC
>    LISP::DEFCFUN
>    LISP::SAVE
>    LISP::MAXIMUM-CONTIGUOUS-PAGES
>    LISP::SPICE
>    LISP::DEFLA
>    LISP::ALLOCATED-PAGES
>    LISP::SUN
>    LISP::INT
>    LISP::USE-FAST-LINKS
>    LISP::CFUN
>    LISP::UNSIGNED-CHAR
>    LISP::HELP
>    LISP::HELP*
>    LISP::MACRO
>    LISP::*BREAK-ENABLE*
>    LISP::CLINES
>    LISP::LAMBDA-CLOSURE
>    LISP::OBJECT
>    LISP::FAT-STRING
>    LISP::SIGNED-SHORT
>    LISP::MC68020
>    LISP::LAMBDA-BLOCK
>    LISP::TAG
>    LISP::PROCLAMATION
>    LISP::ALLOCATED-CONTIGUOUS-PAGES
>    LISP::*EVAL-WHEN-COMPILE*
>    LISP::SIGNED-CHAR
>    LISP::*IGNORE-MAXIMUM-PAGES*
>    LISP::*LINK-ARRAY*
>    LISP::KCL
>    LISP::BSD
>    LISP::ALLOCATE-RELOCATABLE-PAGES
>    LISP::ALLOCATE
>    LISP::UNIX
>    LISP::MAXIMUM-ALLOCATABLE-PAGES
>    LISP::ALLOCATED-RELOCATABLE-PAGES
>    LISP::SYSTEM
>    LISP::KYOTO
>    LISP::CCLOSURE))
> 
> 
> (LAMBDA-BLOCK-CLOSURE BYE QUIT EXIT IEEE-FLOATING-POINT DEFENTRY
>   VOID
>   LISP::ALLOCATE-CONTIGUOUS-PAGES
>   UNSIGNED-SHORT
>   DOUBLE
>   BY
>   GBC
>   DEFCFUN
>   SAVE
>   LISP::MAXIMUM-CONTIGUOUS-PAGES
>   SPICE
>   DEFLA
>   LISP::ALLOCATED-PAGES
>   LISP::SUN
>   INT
>   LISP::USE-FAST-LINKS
>   CFUN
>   UNSIGNED-CHAR
>   HELP
>   HELP*
>   MACRO
>   *BREAK-ENABLE*
>   CLINES
>   LAMBDA-CLOSURE
>   OBJECT
>   LISP::FAT-STRING
>   SIGNED-SHORT
>   MC68020
>   LAMBDA-BLOCK
>   TAG
>   PROCLAMATION
>   LISP::ALLOCATED-CONTIGUOUS-PAGES
>   *EVAL-WHEN-COMPILE*
>   SIGNED-CHAR
>   LISP::*IGNORE-MAXIMUM-PAGES*
>   *LINK-ARRAY*
>   KCL
>   BSD
>   LISP::ALLOCATE-RELOCATABLE-PAGES
>   ALLOCATE
>   UNIX
>   LISP::MAXIMUM-ALLOCATABLE-PAGES
>   LISP::ALLOCATED-RELOCATABLE-PAGES
>   SYSTEM
>   KYOTO
>   CCLOSURE)
> 
> >(do-external-symbols (s "LISP")
>   (if (not(member s lisp_unexport))
>       (import s "COMMON-LISP")))
> 
> 
> NIL
> 
> >(do-symbols (s "COMMON-LISP")
>   (export s "COMMON-LISP"))
> 
> 
> NIL
> 
> >      (let ((lst ()))
>         (do-symbols (s (find-package 'common-lisp)) (push s lst))
>         lst)
> 
> 
> (PATHNAMEP INTERN STEP COERCE WARN WITH-OUTPUT-TO-STRING
>     STRING-NOT-LESSP MAKE-STRING-INPUT-STREAM MAKE-STRING-OUTPUT-STREAM
>     BOOLE-ORC1 BOOLE-ORC2 STRING-LEFT-TRIM FLOAT-PRECISION PLUSP BOOLE
>     NSUBSTITUTE-IF-NOT PROG1 SVREF INTERNAL-TIME-UNITS-PER-SECOND
>     PATHNAME-DEVICE HASH-TABLE-TEST COSH SIGNUM REM APPEND
>     FILE-NAMESTRING SPEED WRITE-CHAR SUBTYPEP FROUND DECODE-FLOAT
>     COMPILATION-SPEED ABS MULTIPLE-VALUE-BIND LCM LOGTEST
>     *PRINT-ESCAPE* *PRINT-BASE* *PRINT-CASE* LONG-FLOAT SIMPLE-STRING-P
>     CHAR= LOGNOT GET-SETF-METHOD-MULTIPLE-VALUE RANDOM CDDAR CADR
>     SIMPLE-STRING REPLACE IMPORT PROVIDE CLRHASH USER-HOMEDIR-PATHNAME
>     GENTEMP VECTOR FCEILING BOOLE-C2 DECLAIM DESCRIBE DELETE-FILE TYPEP
>     UNEXPORT REAL SET-MACRO-CHARACTER GET-MACRO-CHARACTER SETQ
>     RENAME-FILE NINTERSECTION BYTE-SIZE SYMBOLP ROTATEF CHAR-NAME
>     READ-LINE *** ARRAY-ELEMENT-TYPE Y-OR-N-P FMAKUNBOUND BIGNUM
>     MAKE-HASH-TABLE LOCALLY ADJOIN CONCATENATE SET-SYNTAX-FROM-CHAR
>     DENOMINATOR BIT-ORC2 REMPROP STANDARD-CHAR-P EQ CDADDR PI SUBSETP
>     SYMBOL-PLIST FORMAT GO *PRINT-GENSYM* COPY-TREE LOGANDC1 LOAD
>     LIST-ALL-PACKAGES CLEAR-OUTPUT CAADDR DO BYTE-POSITION
>     DEPOSIT-FIELD SET-EXCLUSIVE-OR DIRECTORY VECTOR-PUSH-EXTEND
>     FILE-POSITION CHAR-INT MACRO-FUNCTION SHORT-SITE-NAME
>     NSTRING-UPCASE READ &ENVIRONMENT BLOCK CALL-ARGUMENTS-LIMIT THROW
>     PHASE PROBE-FILE CHAR< STRING-RIGHT-TRIM RATIONALP *DEBUG-IO*
>     DOUBLE-FLOAT-EPSILON DOUBLE-FLOAT-NEGATIVE-EPSILON
>     SET-DISPATCH-MACRO-CHARACTER GET-DISPATCH-MACRO-CHARACTER
>     STRING-UPCASE STRING-DOWNCASE LOGXOR IN-PACKAGE SQRT SUBST-IF-NOT
>     COPY-READTABLE SORT ALPHA-CHAR-P SXHASH CADDR EXPT REVAPPEND CATCH
>     TRUENAME RANDOM-STATE-P >= DEFINE-MODIFY-MACRO DEFMACRO <= BIT-NOT
>     CONSTANTP SIMPLE-BIT-VECTOR LOGNOR POSITION NUNION FFLOOR
>     DO-SYMBOLS HASH-TABLE-COUNT DEFCONSTANT DEFTYPE IMAGPART VARIABLE
>     SYMBOL-NAME MACROEXPAND /= TRACE WITH-OPEN-FILE RPLACA BOOLE-IOR
>     MACHINE-VERSION DOCUMENTATION FLOAT-SIGN PACKAGE SPACE SFUN
>     SYMBOL-FUNCTION *STANDARD-INPUT* SHADOW LET* TRUNCATE_USE_C EXP
>     DELETE BOOLE-ANDC1 *READ-SUPPRESS* GFUN NTHCDR SAFETY
>     LAMBDA-LIST-KEYWORDS // ELT 1- DECODE-UNIVERSAL-TIME GENSYM 1+ SIN
>     REMOVE-IF-NOT CDDDAR EQUAL COMMON DEFSETF NTH CADDAR PPRINT LOGEQV
>     FIND-IF STREAM BIT-ANDC2 BOOLE-AND OPEN &OPTIONAL SHORT-FLOAT MIN
>     ++ ISQRT CODE-CHAR LENGTH LOGNAND WHEN DELETE-IF-NOT TAN ROUND
>     PROGN MEMBER-IF-NOT RASSOC BOOLE-NAND INTEGERP SEVENTH
>     MOST-NEGATIVE-FIXNUM CHAR-UPCASE ZEROP ASSOC-IF-NOT STRING-EQUAL
>     READ-CHAR PEEK-CHAR CAR EQUALP EXPORT NRECONC ATAN NSUBST MAKE-CHAR
>     NAME-CHAR GET-UNIVERSAL-TIME BIT-NOR COMPLEXP LIST-LENGTH
>     SIMPLE-VECTOR MAKE-SYMBOL SUBSTITUTE-IF-NOT SIGNED-BYTE *READTABLE*
>     STRING<= STRING>= STRING/= DEFPARAMETER PATHNAME-DIRECTORY
>     REMOVE-DUPLICATES LOGCOUNT COND COMPILE PRINT &WHOLE AND IGNORE
>     UNLESS CDAAR MAPLIST THIRD CAAR MOST-NEGATIVE-SHORT-FLOAT
>     MOST-NEGATIVE-SINGLE-FLOAT MOST-NEGATIVE-DOUBLE-FLOAT
>     MOST-NEGATIVE-LONG-FLOAT GETHASH PSETQ LISP-IMPLEMENTATION-TYPE
>     FIND STANDARD-CHAR UNREAD-CHAR DELETE-DUPLICATES FILE-LENGTH
>     ARRAY-TOTAL-SIZE AREF LDB-TEST LABELS CONS PACKAGE-NICKNAMES EVERY
>     SHIFTF IDENTITY DIGIT-CHAR-P ROOM COMPILE-FILE TAGBODY
>     SIMPLE-BIT-VECTOR-P TERPRI BIT-XOR PSETF YES-OR-NO-P NUMERATOR
>     *PRINT-LENGTH* NSTRING-CAPITALIZE TREE-EQUAL *READ-BASE*
>     WRITE-STRING ARRAY-IN-BOUNDS-P SUBST-IF DECF FINISH-OUTPUT PAIRLIS
>     DEFVAR RETURN READ-PRESERVING-WHITESPACE CDADAR CHAR-EQUAL
>     COPY-SYMBOL NSET-EXCLUSIVE-OR CAADAR KEYWORD DECLARATION COPY-SEQ
>     NSUBST-IF-NOT CHAR-FONT NSUBST-IF FIND-PACKAGE SOFTWARE-VERSION
>     LOGBITP *EVALHOOK* LEAST-NEGATIVE-SHORT-FLOAT
>     LEAST-NEGATIVE-SINGLE-FLOAT LEAST-NEGATIVE-DOUBLE-FLOAT
>     LEAST-NEGATIVE-LONG-FLOAT LEAST-NEGATIVE-NORMALIZED-SHORT-FLOAT
>     LEAST-NEGATIVE-NORMALIZED-SINGLE-FLOAT
>     LEAST-NEGATIVE-NORMALIZED-DOUBLE-FLOAT
>     LEAST-NEGATIVE-NORMALIZED-LONG-FLOAT MERGE *PRINT-PRETTY*
>     DIRECTORY-NAMESTRING FTYPE COMPILED-FUNCTION &KEY STRING-NOT-EQUAL
>     FIRST ALPHANUMERICP NINTH TENTH CTYPECASE ETYPECASE STRING
>     GET-DECODED-TIME NAMESTRING NREVERSE PUSHNEW SUBST DO* FIXNUM
>     DO-ALL-SYMBOLS DOUBLE-FLOAT CAADR COPY-ALIST COMMONP NSUBSTITUTE
>     FBOUNDP PACKAGEP LIST REST SHORT-FLOAT-EPSILON
>     SHORT-FLOAT-NEGATIVE-EPSILON STREAM-ELEMENT-TYPE VECTORP WRITE-LINE
>     ARRAYP FIND-IF-NOT STREAMP INT-CHAR EVALHOOK CASE INLINE
>     READ-FROM-STRING ASSERT FOURTH ACONS SYMBOL-PACKAGE SUBSTITUTE LAST
>     STRING-TRIM NOTINLINE FIFTH FLOAT-DIGITS *BREAK-ON-WARNINGS*
>     GET-PROPERTIES LIST* SHADOWING-IMPORT NSTRING-DOWNCASE
>     WITH-INPUT-FROM-STRING SIMPLE-VECTOR-P CDDADR DECLARE BIT-VECTOR-P
>     STRING-GREATERP INTEGER-LENGTH CADADR SBIT WITH-HASH-TABLE-ITERATOR
>     NSET-DIFFERENCE CHAR-HYPER-BIT COS COMPILER-LET RASSOC-IF-NOT
>     SIMPLE-ARRAY TAILP CHAR>= *QUERY-IO* &AUX *PRINT-LEVEL* DIGIT-CHAR
>     SOFTWARE-TYPE FLET MOST-POSITIVE-FIXNUM FUNCTION CHAR-SUPER-BIT
>     ATANH SCHAR RPLACD CHAR-NOT-LESSP FTRUNCATE MULTIPLE-VALUES-LIMIT
>     CIS ARRAY-DIMENSIONS UNUSE-PACKAGE ARRAY-RANK-LIMIT RASSOC-IF
>     UNTRACE SINGLE-FLOAT-EPSILON SINGLE-FLOAT-NEGATIVE-EPSILON
>     CHAR-BITS DRIBBLE LOGORC2 ADJUSTABLE-ARRAY-P CLEAR-INPUT PROGV
>     *FEATURES* *PACKAGE* SETF BUTLAST CHECK-TYPE REALP
>     ARRAY-HAS-FILL-POINTER-P BSD386 DO-EXTERNAL-SYMBOLS
>     LONG-FLOAT-EPSILON LONG-FLOAT-NEGATIVE-EPSILON LOG PARSE-INTEGER
>     NOTEVERY APROPOS-LIST POSITION-IF-NOT *PRINT-ARRAY* FLOAT
>     RATIONALIZE BIT-VECTOR LOGANDC2 MOST-POSITIVE-SHORT-FLOAT
>     MOST-POSITIVE-SINGLE-FLOAT MOST-POSITIVE-DOUBLE-FLOAT
>     MOST-POSITIVE-LONG-FLOAT INTEGER THE COUNT-IF-NOT EVAL GETF MAPCON
>     *TERMINAL-IO* CDDR STABLE-SORT CHAR-META-BIT VALUES *PRINT-RADIX*
>     SGC CADAR BOOLE-EQV PARSE-NAMESTRING SEQUENCE READTABLE READTABLEP
>     VALUES-LIST TYPE-OF AKCL OR HASH-TABLE-SIZE CLX-LITTLE-ENDIAN
>     INSPECT NSUBSTITUTE-IF LOGORC1 CHARACTER CHARACTERP FILE-WRITE-DATE
>     VECTOR-PUSH CLOSE FILE-AUTHOR SCALE-FLOAT
>     LISP-IMPLEMENTATION-VERSION MEMBER-IF MAP-INTO PATHNAME-NAME
>     CEILING STRING-NOT-GREATERP ERROR ARRAY-ROW-MAJOR-INDEX MAPCAR
>     STRINGP ARRAY-DIMENSION-LIMIT DESTRUCTURING-BIND CERROR
>     MACROEXPAND-1 CHAR-GREATERP CDAADR DEFINE-SETF-METHOD TYPE SUBSEQ
>     SPECIAL-OPERATOR-P PRIN1 CAAADR PACKAGE-NAME HOST-NAMESTRING
>     DEFSTRUCT SUBLIS TYPECASE ACOS ARRAY-DISPLACEMENT IF
>     GET-INTERNAL-REAL-TIME GET-INTERNAL-RUN-TIME BYTE PROG BOOLE-C1
>     HASH-TABLE-P MAKE-RANDOM-STATE NUMBERP LAMBDA MAKE-PATHNAME ED
>     MULTIPLE-VALUE-CALL OUTPUT-STREAM-P CHAR-LESSP RANDOM-STATE
>     MAKE-ECHO-STREAM STRING-CAPITALIZE SPECIAL ARRAY-DIMENSION CDDDR
>     BIT-ORC1 MAKE-SEQUENCE REVERSE PACKAGE-USE-LIST
>     PACKAGE-USED-BY-LIST MERGE-PATHNAMES PROG* ECASE GET-SETF-METHOD
>     CCASE UNINTERN CHAR-CODE-LIMIT CHAR-FONT-LIMIT
>     ENCODE-UNIVERSAL-TIME BOOLE-2 MAKE-ARRAY CHAR<= COPY-LIST KEYWORDP
>     COMPILED-FUNCTION-P RATIO APROPOS REALPART RATIONAL CHAR-BITS-LIMIT
>     LOGIOR BOUNDP MAKE-BROADCAST-STREAM LAMBDA-PARAMETERS-LIMIT
>     MISMATCH COUNT-IF POSITION-IF MAKE-LIST *MODULES* NOT
>     RENAME-PACKAGE EVENP STRING-CHAR-P MINUSP UPPER-CASE-P
>     *MACROEXPAND-HOOK* POP LONG-SITE-NAME NULL BOOLE-NOR RETURN-FROM
>     STRING> ASSOC-IF LOGAND SET LDIFF MAX FLOATP BOOLE-1 CONJUGATE
>     UNION LET EVAL-WHEN REMOVE GMP &REST BIT
>     *READ-DEFAULT-FLOAT-FORMAT* CDDAAR NUMBER PATHNAME GET
>     GET-OUTPUT-STREAM-STRING UNWIND-PROTECT ASIN &BODY EQL CADAAR
>     GRAPHIC-CHAR-P *LOAD-VERBOSE* LEAST-POSITIVE-SHORT-FLOAT
>     LEAST-POSITIVE-SINGLE-FLOAT LEAST-POSITIVE-DOUBLE-FLOAT
>     LEAST-POSITIVE-LONG-FLOAT LEAST-POSITIVE-NORMALIZED-SHORT-FLOAT
>     LEAST-POSITIVE-NORMALIZED-SINGLE-FLOAT
>     LEAST-POSITIVE-NORMALIZED-DOUBLE-FLOAT
>     LEAST-POSITIVE-NORMALIZED-LONG-FLOAT PATHNAME-HOST ASSOC BIT-EQV **
>     NIL SPECIAL-FORM-P BIT-IOR SINH MAPL INTEGER-DECODE-FLOAT MAP
>     FUNCALL CHAR-BIT ENDP CDR FILL MACHINE-INSTANCE PROCLAIM ASH SECOND
>     DEFUN /// MAKE-DISPATCH-MACRO-CHARACTER ODDP CHAR-DOWNCASE
>     WITH-OPEN-STREAM MOD BOOLE-XOR DISASSEMBLE LOWER-CASE-P BOTH-CASE-P
>     ARRAY SYMBOL-VALUE TRUNCATE SINGLE-FLOAT COUNT TANH CONSP COMPLEX
>     STRING= CHAR ADJUST-ARRAY GCL SEARCH FIND-SYMBOL REMF DOLIST
>     ENOUGH-NAMESTRING T MULTIPLE-VALUE-PROG1 CDAR USE-PACKAGE
>     *RANDOM-STATE* DPB *ERROR-OUTPUT* CHAR-CONTROL-BIT PATHNAME-VERSION
>     MAKUNBOUND +++ NOTANY CAAAR SET-CHAR-BIT BIT-ANDC1 SATISFIES
>     VECTOR-POP INTERSECTION FUNCTIONP LDB ACOSH GCD ARRAY-RANK MAPHASH
>     EIGHTH INCF STRUCTURE APPLYHOOK CHAR-CODE OPTIMIZE > = MEMBER
>     BOOLE-ANDC2 < LISTEN MAKE-CONCATENATED-STREAM FIND-ALL-SYMBOLS
>     SIXTH APPLY REMOVE-IF STRING< NSUBLIS ATOM OTHERWISE
>     *DEFAULT-PATHNAME-DEFAULTS* DELETE-IF MAPCAN MULTIPLE-VALUE-LIST
>     PACKAGE-SHADOWING-SYMBOLS STRING-LESSP WRITE-TO-STRING / FLOOR
>     PRIN1-TO-STRING PRINC-TO-STRING - BIT-NAND SYMBOL SUBSTITUTE-IF +
>     LISTP CDAAAR * MACROLET DOTIMES CAAAAR MASK-FIELD QUOTE
>     MAKE-PACKAGE *APPLYHOOK* BOOLE-CLR *TRACE-OUTPUT* CHAR-NOT-GREATERP
>     BOOLE-SET READ-CHAR-NO-HANG HASH-TABLE SOME SLEEP *PRINT-CIRCLE*
>     CHAR/= FORCE-OUTPUT REQUIRE PROG2 PRINC PATHNAME-TYPE BREAK CDADR
>     TIME REDUCE WRITE CHAR-NOT-EQUAL NBUTLAST UNSIGNED-BYTE
>     FILL-POINTER ARRAY-TOTAL-SIZE-LIMIT FRESH-LINE READ-BYTE NCONC
>     MAKE-TWO-WAY-STREAM MACHINE-TYPE MAKE-SYNONYM-STREAM STRING-CHAR
>     MULTIPLE-VALUE-SETQ CHAR> *STANDARD-OUTPUT* SET-DIFFERENCE
>     WRITE-BYTE MAPC INPUT-STREAM-P REMHASH LOOP CDDDDR
>     READ-DELIMITED-LIST FLOAT-RADIX MAKE-STRING ASINH PUSH BIT-AND
>     CADDDR &ALLOW-OTHER-KEYS)
> 
> >      (let ((lst ()))
>         (do-symbols (s (find-package 'common-lisp-user)) (push s lst))
>         lst)
> 
> 
> NIL
> 
> >(bye)
> 
> 
> =============================================================================
> 
> 
> > 
> > So I suggest the following scheme:
> > 
> > 1. Let LISP remains as it is without any modification for the sake of
> > compatibility.
> > 
> 
> > 2. We create new package COMMON-LISP (CL) and populate it
> > with all required by ANSI CL symbols importing them from LISP,
> > PCL, CONDITIONS etc.
> > 
> 
> > 3. We rename USER to COMMON-LISP-USER with aliases CL-USER
> > and USER.
> > 
> > The only thing which is not clear to me is the contents of CL-USER.
> > As standard requires we must import in it all symbols from COMMON-LISP.
> > But probably we want to see here some other useful implementation dependent
> > symbols like BYE, QUIT.  On the other hand it is not wise to expose here
> > all GCL specific symbols like this notorious INT.
> > 
> > >
> > > Also in main.c, there is an example of how to use the C functions import
> > > and export to import nil (Cnil) and t (Ct) into a package. This should
> > > solve the NIL problem that you mentioned (There's nothing like working
> > > around a bug instead of fixing it. ;).
> > >
> > 
> > Yes but we certainly want that all functions import, export, use-package
> > work correctly on the lisp level.
> > 
> > >
> > > Once nil (and possibly t) are imported into the packages, the rest of cl
> > > and cl-user could either be populated the lisp way, or the same way that
> > > GCL does a lot of it (in C files).
> > >
> > > J*
> > >
> > > _______________________________________________
> > > Gcl-devel mailing list
> > > address@hidden
> > > http://mail.gnu.org/mailman/listinfo/gcl-devel
> > 
> > --
> >      Vadim V. Zhytnikov
> > 
> >       <address@hidden>
> >     <address@hidden>
> >      <address@hidden>
> > 
> > 
> > 
> > 
> > 
> 
> 

Attachment: cl-import.lisp
Description: Text document


reply via email to

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