Commit graph

83 commits

Author SHA1 Message Date
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
5d4f6efc52 Make some FFI structures and function public. They are needed by compiled code 2008-05-14 09:09:46 +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
f3b1febf4e Merged in changes from sealed_slot branch 2008-05-09 09:48:29 +00:00
jgarcia
f10cae5563 GCC does not have "inline" extension when invoked in ANSI or STRICT mode. 2008-05-09 07:47:43 +00:00
jgarcia
8800b254f5 Committed the changes to implement small conses 2008-04-30 14:24:20 +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
5ef5d32e74 Enforce indent and mode conditions on files 2008-01-26 10:30:41 +00:00
jgarcia
cbc227deca For I/O streams, when changing from read to write operations we have to use flush and fseek, as stated by the C manual. 2007-12-25 22:29:03 +00:00
jgarcia
200fff4707 Implemented condition variables and recursive locks (Dan Corkill) 2007-12-01 15:53:13 +00:00
jgarcia
63620c2b05 Now using the Mersenne-Twister RNG 2007-05-21 03:15:26 +00:00
jgarcia
14fc59dec5 PARSE-INTEGER works with Unicode strings. For that, changed the signature of parse_number/integer, which now operate on strings. 2006-11-11 17:35:57 +00:00
jgarcia
ffa984809d New functions for type errors with error recovery (ecl_type_error, si:wrong-type-argument). Incorporated this facility to all functions in num_sfun.d and num_co.d, as well as to make_complex() 2006-10-29 10:34:32 +00:00
jgarcia
75fb4cd6b6 Minimize number of headers included by ecl/ecl.h 2006-10-23 21:24:04 +00:00
jgarcia
a8ba6f5c01 Initital support for long double and immediate short floats. 2006-10-13 17:28:51 +00:00
jgarcia
12799c7305 Move from short/long-float to single/double-float (by L. Brinkhoff) 2006-09-01 15:15:57 +00:00
jgarcia
53dfd6fdb2 New function SI:COPY-TO-SIMPLE-BASE-STRING supersedes other redundant coercion functions. BASE_CHAR_P was wrong. Symbols can be made out of extended strings. 2006-05-29 08:51:33 +00:00
jgarcia
fa937337f8 Some lisp functions with non-standard names (base-char-p, base-string) are renamed and moved to the SYS package. socket.lsp fixed to understand base strings. limited support for arbitrary strings in string streams. 2006-05-29 08:51:28 +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
49fb08f443 Allow user defined dispatch functions in funcallable objects (Inspired from B. Spilsbury) 2006-05-20 22:12:36 +00:00
jgarcia
4fcdcc9910 Ability to set buffering mode of streams 2006-04-26 10:01:44 +00:00
jjgarcia
6055075b78 Separate temporary and permanent data in a compiled file 2006-02-16 11:04:55 +00:00
jjgarcia
770f071318 New implementation of SAFE-EVAL, cooperates better with the current condition system and can call TOP-LEVEL. 2006-02-06 10:07:16 +00:00
jjgarcia
0ee18977e0 Implementation of dynamically created callbacks. FASL files and DLLs are now garbage collected unless a symbol has been referenced with si::find-foreign-symbol. 2005-10-17 10:29:33 +00:00
japhie
51136f3ef4 - Added possibility of configuring --without-gmp when cross-compiling
to reduce memory usage when true bignums aren't needed (doesn't work
  for native compilation because compiler needs bignums).
2005-09-19 21:52:46 +00:00
jjgarcia
7cc625e136 Minimized consing in VECTOR-PUSH-EXTEND and simplified sequence routines with two new abstractions ecl_copy/reverse_subarray(). 2005-06-27 08:14:04 +00:00
jjgarcia
9ecbe76d8b Support for _unsigned_ specialized arrays of type CL-INDEX (i.e. the smallest unsigned word that fits a fixnum) 2005-06-02 13:44:34 +00:00
jjgarcia
e6632b5ab5 Reorder the fields in the symbol structure, so that cons.cdr overlaps with symbol.gfdef, and now we are allowed to set property lists of NIL. 2005-05-12 15:45:22 +00:00
jjgarcia
b8ab417619 Minor cast errors 2005-03-15 14:26:32 +00:00
goffioul
2624a02fc2 - Update to new extensions handling in compilation process
- smm_output_wsock is defined twice
2005-02-21 12:42:50 +00:00
jjgarcia
9a5ab7eb9e New stream mode smm_io_wsock. 2005-02-17 12:40:26 +00:00
jjgarcia
8a4afd0424 Thread support for Mingw32 2005-01-31 17:59:46 +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
2866ea5e64 Complete the support for binary streams modifying FILE-POSITION and FILE-LENGTH. Preliminary, deactivated support for binary streams of strange sizes. 2004-12-20 08:58:06 +00:00
jjgarcia
615200a550 First steps towards support of binary streams 2004-12-16 11:21:20 +00:00
jjgarcia
4bfc19b3c3 Fixed printer of bignums and implemented readtable case. 2004-12-13 11:19:08 +00:00
jjgarcia
6b219625b5 Port to Microsoft VC++ by Goffioul Michael <goffioul@imec.be> 2004-10-25 16:34:20 +00:00
jjgarcia
d584df2e43 Use smaller int types for padding 2004-10-15 14:45:55 +00:00
jjgarcia
a0417f0a88 Summer fixes 2004-10-04 08:02:39 +00:00
jjgarcia
ce41ff78fd Support for DLL in Windows 2004-06-18 07:51:14 +00:00
jjgarcia
daa8064584 + Streams in ECL can now have element types CHARACTER, (UNSIGNED-BYTE 8)
and (SIGNED-BYTE 8). LISTEN and PEEK-CHAR had to be modified so that
they work with CONCATENATED-STREAMS. OPEN now signals errors of type
FILE-ERROR when a file cannot be opened.
+ Several special functions (ASIN, ACOS, ASINH, ...) have been reimplemented
using more stable formulas found in CMUCL, plus the functions from the C
mathematical library. They also serve as examples of how to use FFI:C-INLINE.
+ Several errors regarding packages have been rewritten as correctable errors,
and now the carry clearer messages.
+ In functions dealing with sequences, :COUNT can now be a bignum.
+ In the bytecodes compiler, MULTIPLE-VALUE-PROG1 did not save the values.
2004-04-05 07:21:54 +00:00
jjgarcia
62d43f4892 Preliminary implementation of the UFFI. 2004-03-29 11:13:17 +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
860dbd69ec Fixes due to type sizes, updates of the old garbage collector and the terrible bug with hash tables merged into main trunk 2004-02-29 15:47:01 +00:00
jjgarcia
0290efd01c Implemented the class redefinition protocol, and forward referenced classes. 2003-12-15 08:54:10 +00:00
jjgarcia
6d1ec50d38 Fixed GCD. Implemented several stream functions. Fixed LCM. Fixed the inline expansions for ZEROP, PLUSP, MINUSP, ODDP and EVENP. Fixed the meaning and allowed values of REHASH-THRESHOLD. SXHASH now produces hash keys which are equal for EQUAL bitvectors. Implemented ARITHMETIC-ERROR-OPERANDS. Fixed a bug in hash table which duplicated the number of entries whenever the hash grew. 2003-12-12 08:26:29 +00:00