jgarcia
b23b09e67a
RENAME-FILE now has a keyword argument that defines the behavior when a file with the new name exists.
2008-01-02 22:07:02 +00:00
jgarcia
200fff4707
Implemented condition variables and recursive locks (Dan Corkill)
2007-12-01 15:53:13 +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
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
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
ba033f6bbd
ECL's own garbage collector working again by updating to new codeblock structure and porting to 64-bits
2006-04-11 16:31:12 +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
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
jjgarcia
ef8fbc903d
Fixes for the old garbage collector
2005-10-08 14:46:09 +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
0f08472bc2
When failed to load a binary file, a codeblock structure might be incomplete and cause a SIGSEGV
2005-08-10 16:51:31 +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
6f3bb037dd
Fixed typo
2004-10-21 14:17:23 +00:00
jjgarcia
62d43f4892
Preliminary implementation of the UFFI.
2004-03-29 11:13:17 +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
cdff225681
Implemented locking on hash tables and packages. Fixed several floating point contagion bugs in +, -, /, *, and ROUND.
2003-11-24 11:27:28 +00:00
jjgarcia
01c6e8abff
Use more lispy names for the thread objects, and add locks.
2003-11-19 15:07:18 +00:00
jjgarcia
4eac79774e
Preliminary support for POSIX threads.
2003-11-18 11:23:07 +00:00
jjgarcia
dfe6fb3213
Most structure and enumeration types are renamed to avoid clashes with other libraries (most notably C++).
2003-10-22 07:56:36 +00:00
jjgarcia
e3473825d2
Bunch of fixes to allow loaded files to be garbage collected. New file naming conventions.
2003-10-06 09:40:32 +00:00
jjgarcia
91c95f41cf
No token should appear after an #endif
2003-09-20 08:35:17 +00:00
jjgarcia
ee391629b6
New bytecodes compiler and interpreter, which use 8-bits large bytecodes and
...
16-bits large arguments.
Macros are implemented as two-argument functions, leaving argument checking
to funcall() and apply() and thus saving space.
AND, WHEN and OR are plain macros. No optimizer is required in the bytecodes
compiler.
2003-08-05 10:01:57 +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
a381a7ee09
Merge NEW_COMPILER 25.05.03
2003-05-26 09:49:50 +00:00
jjgarcia
41c0868469
Bunch of fixes. See CHANGELOG.
2003-03-17 10:39:08 +00:00
jjgarcia
62141f9f5d
Replace int -> cl_fixnum, cl_index, to avoid problems with 64-bit archit.
...
Make sure that structure/instance slots may be indexed with a simple integer.
2002-12-09 12:10:33 +00:00
jjgarcia
aefdb1995b
Introduce ecl_register_static_root() to register C static variables as containing pointers for garbage collection. Make ecl_register_static_root() do nothing in the Boehm-Weiser GC, because it already scans the whole data segment.
2002-11-18 12:48:58 +00:00
jjgarcia
b55a0130bc
Replace coerce_to_string_designator with cl_string
2002-11-18 11:24:30 +00:00
jjgarcia
b0ce08d0ea
Changes towards 0.7b comprise naming and calling conventions. See CHANGELOG.
2002-11-04 14:08:24 +00:00
jjgarcia
9e8180d8ef
Fix interplay between old garbage collector and new method for allocating
...
symbols. The old GC still has a leak, so disable it.
2002-09-16 16:40:27 +00:00
jjgarcia
d5531d7a3f
Add support for Mac OSX, which means
...
- Enable simple allocator to use mmap()
- Rewrite cmpwt.lsp so that it produces files with short lines and ANSI strings
- Fix mkdir so that it accepts a parameter for the mode
2001-12-25 16:13:18 +00:00
jjgarcia
c9b91f9618
Minimal patches for C++ compatibility
2001-12-20 09:17:51 +00:00
jjgarcia
851cd03941
The project name goes back to ECL. Therefore feature #+ECL returns and the
...
program and libraries are named ecl*. Finally the routine sys::build-ecls
has been renamed sys::build-program.
2001-11-21 08:07:30 +00:00
jjgarcia
b979ad8b0b
Changes in the names of macros related to fixnums, characters and arrays.
2001-10-11 17:44:57 +00:00
jjgarcia
8ab16a1af9
Commit port to Cygwin.
2001-09-08 17:06:38 +00:00
jjgarcia
528810f1f0
Allow realloc(NULL,size).
2001-08-22 22:42:19 +00:00
jjgarcia
e090dfbc86
Avoid passing files throug the preprocessor, as it corrupts paths. For
...
instance, when cross-compiling from FreeBSD to Linux, /compat/linux
gets converted into "/compat/ 1 " which is obviously bogus.
2001-08-18 10:55:10 +00:00
jjgarcia
f6858838f4
Refer allocation, not to a fixed DATA_START, which could change any time,
...
but to the dynamically determined "heap_start".
Define pointer types and macros to handle pointer arithmetic properly.
Replace calls to clLfuncall in interpreted code with OP_FCALL/OP_PFCALL.
Fix OP_PFCALL/OP_FCALL so that it looks for symbols in the global environment.
Take care of stack growth direction in mark_stack_conservative().
2001-08-12 14:49:14 +00:00
jjgarcia
35a9b11d37
Rewrite the binary code loader to work with dlopen() instead of dld()
2001-07-23 08:49:01 +00:00
jjgarcia
0dc4df6002
Add a name mangler to "dpp" so that it translates symbol names as
...
@'si:symbol-name' @'other-symbol*' into the appropiate C name. All
symbol names and function names have been rewritten using this convention.
2001-07-02 17:11:28 +00:00
jjgarcia
2d8d0cd44b
Initial revision
2001-06-26 17:14:44 +00:00