Commit graph

4449 commits

Author SHA1 Message Date
Juan Jose Garcia Ripoll
0fc50d64dd More efficient expansion of TYPE with interval types 2011-12-17 01:13:20 +01:00
Juan Jose Garcia Ripoll
65c1b636fa In TYPEP, optimization of OR and AND types was disabled due to a missing assignment in the compiler macro code. 2011-12-17 00:13:39 +01:00
Juan Jose Garcia Ripoll
2c92c946a3 The built-in classes vector is now a constant 2011-12-16 23:38:00 +01: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
0423bd23a3 Fixed a typo in ecl_remf_setf_definition. Type-check also the SETF arguments to FBOUNDP. 2011-12-16 22:12:28 +01:00
Juan Jose Garcia Ripoll
d21ba1d9aa Some inline forms must distinguish whether they have to output multiple values or not 2011-12-15 18:34:03 +01:00
Juan Jose Garcia Ripoll
781cd4a0da Further declarations in optimized slot accessors. 2011-12-15 11:14:29 +01:00
Juan Jose Garcia Ripoll
c0f1d43b60 Improve inliners for SI:INSTANCE-CLASS and SI:INSTANCE-REF 2011-12-15 11:14:13 +01:00
Juan Jose Garcia Ripoll
afdb75f15b Remove type checks from slot accessors and optimize all slot accessors to standard classes. 2011-12-15 10:27:17 +01:00
Juan Jose Garcia Ripoll
4b565e6955 Better explanation of why the keys get duplicated in _ecl_standard_dispatch(). 2011-12-15 00:07:45 +01:00
Juan Jose Garcia Ripoll
198ecd50c2 Split the CLOS cache code into a separate file, with some cleanup in the process. 2011-12-15 00:05:15 +01:00
Juan Jose Garcia Ripoll
17ab9cecf0 Keep a SETF location object in the compiled code, to speed up the lookup of #'(SETF fname) functions. Also, store a closure in that object for the cases in which we fmakunbound it. 2011-12-14 00:24:09 +01:00
Juan Jose Garcia Ripoll
755d9c3f96 Fixed indentation of CALL-UNKNOWN-GLOBAL-LOC. 2011-12-13 20:58:04 +01:00
Juan Jose Garcia Ripoll
b72823aeab SETF functions are now stored in a separate hash table. 2011-12-13 20:53:44 +01:00
Juan Jose Garcia Ripoll
b8b93a4a07 Removed unused files 2011-12-13 14:50:50 +01:00
Juan Jose Garcia Ripoll
bc15b1fc6b A new function do-setf-method-expansion, does the job of expanding setf-methods based on the different closures. 2011-12-13 14:13:21 +01:00
Juan Jose Garcia Ripoll
6564c6f10e DEFSTRUCT now defines SETF-METHODs for its fields. 2011-12-13 11:52:25 +01:00
Juan Jose Garcia Ripoll
42a9abf551 Eliminated SETF-LAMBDA functions, replacing them with a wrapper that transforms them into SETF-METHODs. 2011-12-13 00:32:34 +01:00
Juan Jose Garcia Ripoll
3679e2620b The short form of DEFSETF does no longer use special cases. Instead SETF detects cases in which the variables do not need to be created. 2011-12-12 23:25:54 +01:00
Juan Jose Garcia Ripoll
a38f16f1fa In the interpreter, avoid creating a closure when the lexical environment is empty. 2011-12-11 22:04:43 +01:00
Juan Jose Garcia Ripoll
56ba22d877 In DEFTYPE forms with constant output, simplify the expansion so that no new function is created. 2011-12-11 21:41:42 +01:00
Juan Jose Garcia Ripoll
216408a298 Output a comment with the name of the function/macro besides ecl_cmp_def{un,macro} 2011-12-11 21:41:20 +01:00
Juan Jose Garcia Ripoll
010509f01a Newline in a warning for readability 2011-12-11 18:43:35 +01:00
Juan Jose Garcia Ripoll
b213762774 Remove some redundant proclamations from sysfun.lsp 2011-12-11 18:43:02 +01:00
Juan Jose Garcia Ripoll
6d3302ccab When a compiler macro aborts with an error, ECL just recovers, issues a warning and continues. 2011-12-11 18:20:29 +01:00
Juan Jose Garcia Ripoll
fdd58146e3 DEFCLASS produces more compact argument lists when all :INITFORMs are constant 2011-12-11 16:57:18 +01:00
Juan Jose Garcia Ripoll
eb0082fd83 DEFCLASS now expands in terms of LOAD-DEFCLASS, saving some bytes. 2011-12-11 16:00:11 +01:00
Juan Jose Garcia Ripoll
f46be1d990 Compile the DEFINE-CONDITION forms instead of interpreting them. 2011-12-11 01:07:26 +01:00
Juan Jose Garcia Ripoll
6121a6d510 Add more keywords which are used in CLOS macroexpansions. 2011-12-11 01:06:52 +01:00
Juan Jose Garcia Ripoll
a480e845c0 New 'make recheck' operation 2011-12-11 00:17:16 +01:00
Juan Jose Garcia Ripoll
3f8e05ce29 Set *print-escape* to nil in the debugger 2011-12-11 00:16:57 +01:00
Juan Jose Garcia Ripoll
5ca1a03c86 Instead of defining a PRINT-OBJECT method for each condition, store the function in a slot with :CLASS allocation 2011-12-11 00:16:42 +01:00
Juan Jose Garcia Ripoll
7a39f8eac6 The documentation of a condition is now stored in the class 2011-12-10 22:41:36 +01:00
Juan Jose Garcia Ripoll
5537d0c661 Remove an unused function from defclass.lsp 2011-12-10 22:24:20 +01:00
Juan Jose Garcia Ripoll
ae42fed2be SI:INSTANCEP now returns the class length. 2011-12-10 22:24:10 +01:00
Juan Jose Garcia Ripoll
4b2eca745a Replace more uses of DEFVAR with DEFPARAMETER 2011-12-10 20:12:14 +01:00
Juan Jose Garcia Ripoll
164a297ab5 Space optimizations in predlib.lsp 2011-12-10 19:35:17 +01:00
Juan Jose Garcia Ripoll
df7de09d0b find-built-in-tag now uses a hash table instead of an association list. 2011-12-10 19:31:04 +01:00
Juan Jose Garcia Ripoll
efc7413d28 Load-form for hash tables is now based on EXT:HASH-TABLE-FILL 2011-12-10 19:00:46 +01:00
Juan Jose Garcia Ripoll
05a46aca0b Print readably hash tables using the EXT:HASH-TABLE-FILL 2011-12-10 19:00:09 +01:00
Juan Jose Garcia Ripoll
75c332b452 New functions EXT:HASH-TABLE-CONTENT and EXT:HASH-TABLE-FILL 2011-12-10 18:59:45 +01:00
Juan Jose Garcia Ripoll
7e1d1e5767 Slight reorganization of _ecl_write_symbol. 2011-12-10 00:14:53 +01:00
Juan Jose Garcia Ripoll
9ffc5b1f6e Remove unused files from src/util/emacs.el 2011-12-10 00:00:47 +01:00
Juan Jose Garcia Ripoll
2959b35ce3 Added some more keywords used by CLOS to the core. 2011-12-08 23:02:09 +01:00
Juan Jose Garcia Ripoll
2c0bead95f Eliminate the dependency on quicklisp for unpacking/unzipping files, including quicklisp's minitar and Pierre Mai's deflate. 2011-12-08 11:29:12 +01:00
Juan Jose Garcia Ripoll
979edcc6f3 Cleanup the download code and ensure cleaning of unused directories. 2011-12-08 11:02:11 +01:00
Juan Jose Garcia Ripoll
769296844e Missin argument in quicklisp-test-template 2011-12-08 00:10:58 +01:00
Juan Jose Garcia Ripoll
60577f43c9 SBCL needs a QUIT statement because it will not exit even when the input stream is empty. 2011-12-08 00:07:59 +01:00
Juan Jose Garcia Ripoll
9b3594e460 Remove ECL specific code from the quicklisp tests. 2011-12-08 00:02:43 +01:00
Juan Jose Garcia Ripoll
460287c948 Added testing of quicklisp libraries 2011-12-07 23:59:53 +01:00