jjgarcia
2d5bb45946
Replaced the code walker with some hooks in the bytecodes compiler and use this for the analysis of method functions. The optimizations of SLOT-VALUE references are removed, since they are buggy.
2005-09-19 09:31:01 +00:00
jjgarcia
7b762a99c4
New functions for performing type inference.
...
Arithmetic operators *,+,/,- now have simple optimizers.
Fixed several "bugs" in the C code to let ECL compile with GCC 4.0
2005-08-12 15:23:10 +00:00
jjgarcia
3d1e56e0ec
Evaluation of the constant in EQL specializers now takes place in the lexical environment in which DEFMETHOD is enclosed.
2005-08-09 08:08:46 +00:00
jjgarcia
9052752e65
Reorganized the list of inliners and inline information, storing it in more detailed structures
2005-08-08 08:09:25 +00:00
jjgarcia
55d0dcd075
Fixed the optimizer for slot access. All classes have DOCUMENTATION slot. CLASS-PROTOTYPE is now a reader, not an accessor.
2005-04-11 10:08:33 +00:00
jjgarcia
39d35ffa38
Implemented SLOT-DEFINITION objects together with the associated protocols (Field position still missing).
2005-02-25 16:16:57 +00:00
jjgarcia
dd39b19a32
Fixes in various reader macros (#*, #(,#C)). Stream mode smm_closed disappears and closing of files preserves the original type of stream. Implemented METHOD-COMBINATION-ERROR, INVALID-METHOD-ERROR, option :ARGUMENT-PRECEDENCE-ORDER. In loop, iteration statements can now only appear before body statements, otherwise an error is signaled. A DEFTYPE form optional arguments have default value *
2005-01-10 09:41:06 +00:00
jjgarcia
ea7b544af3
Xmas fixes. See CHANGELOG for list of changes.
2005-01-07 11:51:23 +00:00
jjgarcia
32d681daf8
PARSE-DEFMETHOD failed on empty lambda lists
2004-12-06 09:40:51 +00:00
jjgarcia
72dc89f61b
Fixed generation of function prototypes, and other glitches so that the lisp code can be compiled with a C++ compiler. The core library is still compiled with a C compiler.
2004-03-03 09:18:20 +00:00
jjgarcia
b8d27be483
Dummy implementation of MAKE-LOAD-FORM and MAKE-LOAD-FORM-SAVING-SLOTS. Supports for normal lisp objects and structures is missing.
2004-01-20 08:53:24 +00:00
jjgarcia
90a0382ae8
+ Fixes in the routines that deal with pathnames: it is now possible to
...
use *DEFAULT-PATHNAME-DEFAULTS* as current working directory, because it
is set to the initial directory and because it can be updated with SI::CHDIR.
+ Pathname versions are now properly handled and printed. At least for logical
pathnames, because physical namestrings cannot have version numbers.
+ An error is signaled when one tries to print _readably_ a pathname that does
not have a namestring such that parsing this namestring produces the same
pathname. This happens, for instance, with pathnames that do not have hosts,
or that have version numbers and are not logical.
+ Fixes in the CLOS subsystem: ADD-METHOD and REMOVE-METHOD now update the
GENERIC-FUNCTION slot of method objects, and output the right values.
It is now possible to use two nested SYMBOL-MACROLET that define the same
symbols.
2004-01-08 11:03:05 +00:00
jjgarcia
0290efd01c
Implemented the class redefinition protocol, and forward referenced classes.
2003-12-15 08:54:10 +00:00
jjgarcia
630bfdf4f4
Clean up the package CL from non-standard symbols and move them into the EXT package, which is a nickname for SYSTEM.
2003-12-11 17:16:48 +00:00
jjgarcia
e5072a82d9
Use user-supplied DPP to build the C files. machines.h is no longer required.
2003-07-23 13:09:37 +00:00
jjgarcia
47fdf3eebe
Method combinations implemented. Bug involving EQL specializers not being compared with EQL solved.
2003-07-16 17:30:18 +00:00
jjgarcia
5e56be36a8
ECL ported to Solaris/SPARC-32
2003-07-01 12:28:44 +00:00
jjgarcia
737571a68a
Rename several accessors according to AMOP
2003-06-27 10:23:06 +00:00
jjgarcia
eb0e98c2e3
Changes on the CLOS bootstrapping sequence (which is now done entirely in
...
LISP), and minor bugfixes.
2003-06-25 14:46:42 +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
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
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
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
2d8d0cd44b
Initial revision
2001-06-26 17:14:44 +00:00