Commit graph

87 commits

Author SHA1 Message Date
Daniel Kochmański
ae7cae404d indent: d-f 2016-05-05 15:24:58 +02:00
Matthew Mondor
8f07cd58d8 The ECL code no longer uses tabulator characters, they were replaced
by spaces.

A custom script was used to insert/replace Emacs and ViM per-file editor
settings according to their type and the new ECL coding style.
2015-09-03 07:35:47 -04:00
Daniel Kochmański
7a29be4337 CLOS: remove dead code and conditionals for non-clos builds
Builds without CLOS weren't possible for long time, yet a lot of dead
code for non-clos builds was spread across sources. This commit
removes all ifdefs and dead blocks from codebase.

Signed-off-by: Daniel Kochmański <dkochmanski@turtle-solutions.eu>
2015-07-01 16:56:17 +02:00
Daniel Kochmański
4d19a27424 cosmetic: untabify
Signed-off-by: Daniel Kochmański <dkochmanski@turtle-solutions.eu>
2015-06-21 14:38:20 +02:00
Juanjo Garcia-Ripoll
1c363e4dc3 CONSTANT-FORM-VALUE did not work with NIL 2013-05-21 10:48:35 +02:00
Juan Jose Garcia Ripoll
f6a1292b13 Minor optimization in CONSTANT-FORM-VALUE 2013-01-11 23:51:35 +01:00
Juan Jose Garcia Ripoll
271df28de1 CONSTANT-VALUE-FORM and CONSTANTP-INNER's environment value is now optional 2013-01-11 22:53:53 +01:00
Juan Jose Garcia Ripoll
5f6b88d609 Split CONSTANTP into two functions CONSTANTP-INNER + CONSTANT-FORM-VALUE that can be overwritten by the compiler 2013-01-10 23:59:34 +01:00
Juan Jose Garcia Ripoll
309af6dbe2 CONSTANTP now performs a bit more work, macroexpanding forms. 2013-01-10 10:03:33 +01:00
Juan Jose Garcia Ripoll
e54d9a6173 Rename type_of -> ecl_t_of 2012-07-05 23:07:34 +02:00
Juan Jose Garcia Ripoll
3281047165 Renamed CLASS_* and moved to legacy.h 2012-06-30 23:21:06 +02:00
Juan Jose Garcia Ripoll
825fc8cbd3 Cnil and Ct are now part of legacy 2012-06-30 23:01:40 +02:00
Juanjo Garcia-Ripoll
5f02f412c9 Fixed typos propagated by query-replace-ecl 2012-06-27 10:06:14 +02:00
Juan Jose Garcia-Ripoll
05a16801ca Rename cl_va_* macros to ecl_va_* 2012-06-24 20:46:55 +02:00
Juan Jose Garcia Ripoll
a2fe30393f Prefix the function argument limits 2012-06-22 23:47:45 +02:00
Juan Jose Garcia Ripoll
52512c15a4 Rename the stp_* and aet_* enumeration names with the ecl_ prefix 2012-06-08 00:12:48 +02:00
Juanjo Garcia-Ripoll
d8547c5531 When computing the generic function dispatch, we eliminate the case in which the generic function takes too many required arguments. Slight optimizations in STD-COMPUTE-EFFECTIVE-METHOD. 2012-04-27 16:09:17 +02:00
Juanjo Garcia-Ripoll
2cc751eef8 STD-COMPUTE-EFFECTIVE-METHOD and friends are called directly 2012-04-27 14:00:03 +02:00
Juan Jose Garcia Ripoll
5e9b643f57 ECL's discriminating function protocol now relies on COMPUTE-APPLICABLE-METHODS-USING-CLASSES 2012-04-24 23:23:05 +02:00
Juan Jose Garcia Ripoll
9d557937b1 Added new dispatch functions for slot accessors. 2011-12-16 22:12:56 +01:00
Juan Jose Garcia Ripoll
337819233d Replace use of __builtin_expect() with two macros, ecl_{likely,unlikely} 2010-02-04 16:54:05 +01:00
Juan Jose Garcia Ripoll
7d9fb8bbc7 Mark FEprogram_error as noreturn. 2010-02-04 00:31:03 +01:00
Juan Jose Garcia Ripoll
a2337a4d93 FEinvalid_function and FEundefined_function marked as __attribute((noreturn)). 2010-02-04 00:05:01 +01:00
Juan Jose Garcia Ripoll
2d967e5e31 missing "break" statement in ecl_apply_from_stack_frame (src/c/eval.d) 2009-11-28 14:03:03 +01:00
Juan Jose Garcia Ripoll
77cde5c2f8 Several fixes for various compiler warnings. 2009-06-07 00:02:49 +02:00
Juan Jose Garcia Ripoll
529e12a1ed Replaced some stack frame functions by internal and faster macros. 2009-02-28 13:14:41 +01:00
Juan Jose Garcia Ripoll
d71a16daac Remove an unused argument from ecl_interpret() 2009-02-26 00:14:07 +01:00
Juan Jose Garcia Ripoll
69bdd4f3ff Slight simplification of the ecl_stack_frame structure, with changes associated to interpreter, gfun and apply 2009-02-19 00:04:31 +01:00
Juan Jose Garcia Ripoll
44d23d1cdf Factor the code for creating stack frames from varargs. Removed some arguments from ecl_apply_from_stack_frame and _ecl_standard_dispatch. 2009-02-17 23:40:27 +01:00
Juan Jose Garcia Ripoll
a1bc92b05c Changed the way closures are invoked, to make them similar to generic functions and bytecodes 2009-02-15 12:05:56 +01:00
Juan Jose Garcia Ripoll
e4870189d2 All function objects now have function pointers. 2009-02-14 21:44:16 +01:00
Juan Jose Garcia Ripoll
9f42309fbd Finished the new dispatch code. 2009-02-14 00:01:57 +01:00
Juan Jose Garcia Ripoll
f096fdac51 Initial changes for a common dispatch function 2009-02-13 17:05:21 +01:00
Juan Jose Garcia Ripoll
0126a558fb Eliminate more uses of fake variable cl_env 2008-10-11 23:09:45 +02:00
Juan Jose Garcia Ripoll
7c5ab4f1fb Some functions now take a cl_env_ptr argument, becoming better isolated. 2008-10-11 22:32:54 +02:00
Juan Jose Garcia Ripoll
1d06b7a46c Replace ecl_apply_{lambda|bclosure} with calls to ecl_interpret. 2008-06-17 20:49:58 +02:00
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
21fafd42dc Introduce bytecode closure objects to save space in FLET/LABELS forms 2008-06-11 23:49:38 +02:00
jgarcia
ad6f1f7f10 In cl_va_start(), factor the code for the worst case (narg > 64) in a separate function, so that the default case does not reference cl_env 2008-05-12 08:13:53 +00:00
jgarcia
bd09f93e3c Modify call frames to keep pointers and let cl_funcall() share frames among calls 2008-05-12 08:11:37 +00:00
jgarcia
60485cbbe3 Inline the code for handling cl_va_list 2008-05-12 08:10:27 +00:00
jgarcia
aed7dd61b1 _ecl_link_call would not restore the stack after invoking a generic function 2008-05-08 08:56:22 +00:00
jgarcia
8800b254f5 Committed the changes to implement small conses 2008-04-30 14:24:20 +00:00
jgarcia
52f4df1901 Merged the new function call code 2008-02-16 10:28:32 +00:00
jgarcia
5ef5d32e74 Enforce indent and mode conditions on files 2008-01-26 10:30:41 +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
8724c18d3c Function cl_va_end() is now a macro. 2006-10-27 22:20:32 +00:00
jgarcia
aee133c4b5 Remove ad-hoc limit in the number of strings SI:BASE-STRING-CONCATENATE can handle. New macros for copying and finishing arguments lists. 2006-10-27 22:16:45 +00:00
jgarcia
49fb08f443 Allow user defined dispatch functions in funcallable objects (Inspired from B. Spilsbury) 2006-05-20 22:12:36 +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