Commit graph

39 commits

Author SHA1 Message Date
jjgarcia
f9954f8e11 Redefine DOCUMENTATION as a generic function which can also handle
packages, structures, classes, etc.
2003-04-30 20:10:21 +00:00
jjgarcia
b9f17d926b In DEF{CLASS,CONDITION}, arguments to the :INITFORM option, or to the :DEFAULT-INITARGS option, are now properly evaluated in the lexical environment corresponding to the DEF{CLASS,CONDITION} form. 2003-04-30 07:48:13 +00:00
jjgarcia
78f5db3d16 Add option :DEFAULT-INITARGS to DEFINE-CONDITION. 2003-04-29 15:56:36 +00:00
jjgarcia
5040c5050a Signal an error when a slot option is missing an argument, but not when
the :TYPE option has argument NIL.
2003-04-29 15:29:20 +00:00
jjgarcia
f20a08a15a In DEFINE-CONDITION, when the list of parent conditions should default to
'(CONDITION).
2003-04-29 09:36:29 +00:00
jjgarcia
de2176ff11 In destructuring lambda lists, &WHOLE may be accompanied by a
destructuring form.
2003-04-28 17:50:53 +00:00
jjgarcia
c2aa136143 Various minor fixes, and an important set of changes to teach the compiler
and the interpreter to understand (SETF fname) function names, and to handle
them without creating auxiliary symbols.
2003-04-28 15:55:22 +00:00
jjgarcia
f20736084b Add more symbols to src/c/symbols_list.h, and resolve associated conflicts. 2003-04-28 09:25:58 +00:00
jjgarcia
757572ca7f STANDARD-OBJECT must be a STRUCTURE-CLASS. 2003-04-28 09:07:07 +00:00
jjgarcia
05fa67ad17 Define and use UNBOUND-SLOT condition. 2003-04-10 19:47:56 +00:00
jjgarcia
1af46c7c39 Use the READER-ERROR condition to signal errors in the reader. 2003-04-10 17:40:34 +00:00
jjgarcia
02622043bc New implementation of SUBTYPEP. 2003-04-10 14:32:02 +00:00
jjgarcia
1111281642 STRUCTURE is not the name of a type; use STRUCTURE-CLASS instead. 2003-04-08 14:35:50 +00:00
jjgarcia
6b76d155ee Create new functions SI::{GET,PUT,REM}-SYSPROP to handle vital information
about functions, SETF forms, DEFTYPEs, etc. Property lists are no longer
used for this task.
2003-03-21 14:18:56 +00:00
jjgarcia
8bb27d3094 Remove public function putprop(); use si_putprop() instead.
Removed public functions FEtype_error_plist().
Low level function getf() and get() renamed as ecl_get[f]().
Simplified the loops which deal with property lists.
Assertions ASSERT and CHECK-TYPE moved from conditions.lisp to assert.lisp; old definitions removed.
2003-03-21 09:24:37 +00:00
jjgarcia
41c0868469 Bunch of fixes. See CHANGELOG. 2003-03-17 10:39:08 +00:00
jjgarcia
5f6f65b407 Bunch of fixes inspired by the ANSI test suite of GCL. 2003-03-10 09:10:13 +00:00
jjgarcia
9771e91572 + New implementation of DESTRUCTURING-BIND
+ The bytecodes compiler now alloes a lambda list with &key and no keywords
+ WITH-HASHTABLE-ITERATOR implemented
+ QUIT is now silent
+ In MAKE-PATHNAME, values supplied with a value of NIL would be overwritten
  by the content of :DEFAULTS.
2003-03-04 16:35:03 +00:00
jjgarcia
8209fc021e Write FTYPE declarations correctly. 2002-12-17 09:53:52 +00:00
jjgarcia
22280e7f6c Fix macroexpander for define-condition. 2002-12-14 16:57:11 +00:00
jjgarcia
912a7fb03c The declaration specifier for functions is FTYPE, not FUNCTION. 2002-12-14 15:37:29 +00:00
jjgarcia
bf8a3c21a9 Replaced LET -> LET* to make C code smaller, wherever it is possible. 2002-12-04 15:40:42 +00:00
jjgarcia
b0ce08d0ea Changes towards 0.7b comprise naming and calling conventions. See CHANGELOG. 2002-11-04 14:08:24 +00:00
jjgarcia
a5aaa3edf3 Use abs_{srcdir,builddir,top_srcdir}, to avoid problems with latest autoconf. 2002-10-13 16:02:23 +00:00
jjgarcia
29734ae79b New functions SI:SAFE-EVAL and cl_safe_eval() allow the user to evaluate
code with errors without jumping into the debugger. Useful when embedding
ECL in other programs.
2002-10-08 17:40:22 +00:00
jjgarcia
e6922fb76c Function SI:NANI has been removed. Its purpose was to provide an
object which could not be printed or readed so that it could be
used to mark unbound slots in classes. Now the function SI:UNBOUND
performs the same task
2002-05-22 13:40:38 +00:00
jjgarcia
7e5cacd38e * Variable *EVAL-WHEN-COMPILE* is no longer used.
* FIND-CLASS belongs to the C library -- it can now be directly called.
* Class BUILT-IN renamed to BUILT-IN-CLASS
* Macro PROG1 slightly optimized
2002-05-17 16:37:21 +00:00
jjgarcia
f9cf423040 DEFCLASS does not need an extra call to FIND-CLASS, since ENSURE-CLASS already
outputs the right value.
2002-05-17 16:35:13 +00:00
jjgarcia
b1ca5addcb CLASS-NAME, CLASS-SLOTS, etc, are now functions. 2002-05-13 07:16:52 +00:00
jjgarcia
69f92bea35 clos/{builtin,kernel}.lsp: Added classes for STREAM, *-STREAM, HASHTABLE,
PACKAGE, LOGICAL-PATHNAME, REAL, READTABLE, RANDOM-STATE.
2002-05-13 07:16:19 +00:00
jjgarcia
71181cf70d Missing newline character prevented AIX from producing the right load.lsp 2001-12-11 07:23:15 +00:00
jjgarcia
851cd03941 The project name goes back to ECL. Therefore feature #+ECL returns and the
program and libraries are named ecl*. Finally the routine sys::build-ecls
has been renamed sys::build-program.
2001-11-21 08:07:30 +00:00
jjgarcia
b2dd8e9e3a Documentation strings are stored in hash tables, not in property lists.
These hash tables can be dumped to help files which are understood by ECLS.
Most documentation strings have been moved back to the lisp source files
from which "SYS:help.doc" is built.
2001-10-15 16:44:04 +00:00
jjgarcia
b979ad8b0b Changes in the names of macros related to fixnums, characters and arrays. 2001-10-11 17:44:57 +00:00
jjgarcia
c479d71051 Reader macro #, is now unsupported. Instead we have implemented
LOAD-TIME-VALUE both in the interpreter and in the compiler. Type error
messages from the compiler have been also improved.
2001-10-07 20:01:50 +00:00
jjgarcia
983975dbd9 Rewrite the compiler, tests and auxiliary files using the new binary loader. 2001-07-23 09:08:02 +00:00
jjgarcia
8563a1fc1c Fix the compiler so that when it finds LOCALLY, MACROLET or SYMBOL-MACROLET
at the top level, it processes their bodies as top level forms as well. For
instance, (LOCALLY (EVAL-WHEN (:COMPILE-TOPLEVEL) (PRINT "HELLO"))), now works.
2001-07-19 15:33:46 +00:00
jjgarcia
0dc4df6002 Add a name mangler to "dpp" so that it translates symbol names as
@'si:symbol-name' @'other-symbol*' into the appropiate C name. All
symbol names and function names have been rewritten using this convention.
2001-07-02 17:11:28 +00:00
jjgarcia
2d8d0cd44b Initial revision 2001-06-26 17:14:44 +00:00