Juan Jose Garcia Ripoll
|
cb9939d6c0
|
Separate lisp objects for functions with fixed and variable # arguments
|
2008-06-16 23:09:21 +02:00 |
|
Juan Jose Garcia Ripoll
|
0dbab7db8f
|
Fixed typo.
|
2008-06-15 23:10:57 +02:00 |
|
Juan Jose Garcia Ripoll
|
9e210529e8
|
Split OP_MSETQ into OP_VSETQ and OP_VSETQS.
|
2008-06-15 10:50:32 +02:00 |
|
Juan Jose Garcia Ripoll
|
846d79dce3
|
Implement bytecodes for calling functions with 1 and 2 arguments.
|
2008-06-15 00:35:21 +02:00 |
|
Juan Jose Garcia Ripoll
|
2020fe6966
|
Optimize some common lisp functions
|
2008-06-14 22:07:20 +02:00 |
|
Juan Jose Garcia Ripoll
|
3c3a2699be
|
OP_MSETQ does not use the VALUES register
|
2008-06-13 00:41:03 +02:00 |
|
Juan Jose Garcia Ripoll
|
d4c36ab18f
|
Inline funcalls and fix problem with multiple-value-prog1 and macrolet + declarations
|
2008-06-12 20:00:30 +02:00 |
|
Juan Jose Garcia Ripoll
|
21fafd42dc
|
Introduce bytecode closure objects to save space in FLET/LABELS forms
|
2008-06-11 23:49:38 +02:00 |
|
Juan Jose Garcia Ripoll
|
b208e43f34
|
Revert to the old code for multiple-value-setq
|
2008-06-11 20:15:14 +02:00 |
|
Juan Jose Garcia Ripoll
|
3453e6d56c
|
More compact format for bytecodes OP_FLET/LABELS
|
2008-06-10 19:50:21 +02:00 |
|
Juan Jose Garcia Ripoll
|
33861197f3
|
Split operator MSETQ into VSETQ and VSETQS.
|
2008-06-09 19:19:25 +02:00 |
|
Juan Jose Garcia Ripoll
|
93586f613c
|
Only use OP_VBIND[S] for values other than 0-th
|
2008-06-09 18:40:23 +02:00 |
|
Juan Jose Garcia Ripoll
|
7bdc8ce4cd
|
ecl_interpret returns the first value
|
2008-06-09 18:30:58 +02:00 |
|
Juan Jose Garcia Ripoll
|
5c82dc7e80
|
COND and PROG1 now operate using only REG0 and the stack
|
2008-06-09 14:28:26 +02:00 |
|
Juan Jose Garcia Ripoll
|
bbf7c9dea6
|
Allow COND forms to use REG0 to store computations, instead of forcing use of VALUES.
|
2008-06-09 11:54:52 +02:00 |
|
Juan Jose Garcia Ripoll
|
ee88cc241e
|
Since OP_JT/JNIL check reg0, we can simplify the bytecodes for WHILE
|
2008-06-09 11:38:34 +02:00 |
|
Juan Jose Garcia Ripoll
|
e400b3fb46
|
Simplify bytecodes compiler by rewriting IF as a COND.
|
2008-06-09 11:27:34 +02:00 |
|
Juan Jose Garcia Ripoll
|
6d1f4e8c15
|
Inline OP_PROGV.
|
2008-06-08 23:10:41 +02:00 |
|
Juan Jose Garcia Ripoll
|
2ac39d71bb
|
Removed global environment field cl_env.lex_env
|
2008-06-08 20:30:35 +02:00 |
|
Juan Jose Garcia Ripoll
|
2d77670383
|
ecl_interpret() now takes an explicit lexical environment argument.
|
2008-06-08 18:38:38 +02:00 |
|
jgarcia
|
e418eeb8e7
|
Improved presentation of interpreted forms in the backtraces. These forms can now be inspected.
|
2008-05-22 11:15:58 +00:00 |
|
jgarcia
|
8f28327ddf
|
Simplifed MAKE-ARRAY. Deactivated the old garbage collector. New optimizers for MAKE-ARRAY and VECTOR-PUSH*. Declarations are now held in *cmp-env* instead of in global variables.
|
2008-05-18 20:08:39 +00:00 |
|
jgarcia
|
8800b254f5
|
Committed the changes to implement small conses
|
2008-04-30 14:24:20 +00:00 |
|
jgarcia
|
504fe5df73
|
LOAD-TIME-VALUE is no longer a macro
|
2008-04-24 11:15:34 +00:00 |
|
jgarcia
|
7e8f73c990
|
The forms evaluated with EVAL also know their origin if they come from a file.
|
2008-04-24 07:44:18 +00:00 |
|
jgarcia
|
5243018392
|
The debugger outputs the file information of interpreted functions, which now contains load-truename instead of load-pathname
|
2008-04-22 13:02:45 +00:00 |
|
jgarcia
|
b4e1916be1
|
Let interpreted forms remember the file they come from
|
2008-04-22 12:29:44 +00:00 |
|
jgarcia
|
52f4df1901
|
Merged the new function call code
|
2008-02-16 10:28:32 +00:00 |
|
jgarcia
|
cd07aee2f4
|
Remove unused blocks
|
2008-01-26 13:29:41 +00:00 |
|
jgarcia
|
5ef5d32e74
|
Enforce indent and mode conditions on files
|
2008-01-26 10:30:41 +00:00 |
|
jgarcia
|
3f9a080eea
|
Show offending form when syntax error happens.
|
2007-07-12 09:09:53 +00:00 |
|
jgarcia
|
aa3dfe4058
|
Prefix most functions with 'ecl_' to avoid name collisions when embedding ECL in other libraries
|
2007-01-18 11:46:07 +00:00 |
|
jgarcia
|
6b5f1fd969
|
Implemented generic type checker based on ecl type tags and used it to replace multiple assertions.
|
2006-10-30 10:50:58 +00:00 |
|
jgarcia
|
363d11b287
|
ecl_output_stream_p now works with smm_probe
|
2006-10-27 22:31:04 +00:00 |
|
jgarcia
|
ccd014fef3
|
Make MACROLET safer by blocking all references to local variables and functions.
|
2006-06-17 16:04:40 +00:00 |
|
jgarcia
|
a2fdf244f7
|
Make MACROLET a bit safer -- a least in the C compiler.
|
2006-06-17 16:01:04 +00:00 |
|
jgarcia
|
fd3aeae14a
|
MACROLET functions are created in an environment that contains enclosing MACROLET and SYMBOL-MACRO DEFINITIONS.
|
2006-06-17 16:00:08 +00:00 |
|
jgarcia
|
f36f53a933
|
Remove redundant function.
|
2006-06-12 08:51:47 +00:00 |
|
jgarcia
|
1666ae1468
|
Allow users to provide a compiler environment when building interpreted code.
|
2006-06-12 08:51:43 +00:00 |
|
jgarcia
|
ab2da5b861
|
EXPAND-DEFMACRO now outputs a lambda block.
|
2006-06-12 08:51:38 +00:00 |
|
jgarcia
|
ff0be77070
|
Support for unicode strings as data structure (no clever handling of characters yet) contributed by Brian Spilsbury.
|
2006-05-29 08:51:21 +00:00 |
|
jgarcia
|
6ecb05deb9
|
Reduced the number of functions dealing with macros. The second value of MACROEXPAND-1 is T whenever the macro function was called. MACROEXPAND detects some infinite loops.
|
2006-05-20 22:17:03 +00:00 |
|
jgarcia
|
a952b2c796
|
Simplifed the implementation of DEFMETHOD
|
2006-04-18 19:25:58 +00:00 |
|
jjgarcia
|
936b7fb6f6
|
Header files are now kept in a directory named 'ecl', so as to avoid name clashes with other headers.
|
2006-02-28 14:05:47 +00:00 |
|
jjgarcia
|
54b542b97c
|
Control whether it is allowed to assign a value to undefined variables.
|
2005-11-23 11:05:59 +00:00 |
|
jjgarcia
|
c91a860688
|
The block name of a function does not include the lambda list.
|
2005-10-24 08:37:26 +00:00 |
|
jjgarcia
|
bfceb89a55
|
MULTIPLE-VALUE-SETQ must output _only_ the primary value.
|
2005-10-24 08:33:52 +00:00 |
|
jjgarcia
|
5643e40059
|
Implemented DOLIST/DOTIMES as macros, without magic in the interpreter.
|
2005-10-24 08:33:32 +00:00 |
|
jjgarcia
|
ef8fbc903d
|
Fixes for the old garbage collector
|
2005-10-08 14:46:09 +00:00 |
|
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 |
|