Abdulaziz Ghuloum
1c37a4ee54
* changing representation for all non-fixnum numbers.
2007-01-21 19:20:37 -05:00
Abdulaziz Ghuloum
783beb990b
* exact->inexact is now implemnted.
...
* +, -, and * now handles flonums by converting exact arguments to
inexact if the other argument is a flonum.
2007-01-20 19:26:17 -05:00
Abdulaziz Ghuloum
96ad8a04a4
* flonum->string now always returns a string with a decimal point.
...
* number?, exact?, inexact?, ... now know about flonums.
* number->string also handles flonums, and so is the writer
(automatically).
2007-01-20 18:12:12 -05:00
Abdulaziz Ghuloum
de910a3544
* added flonum?, string->flonum, and flonum->string.
2007-01-20 17:49:25 -05:00
Abdulaziz Ghuloum
c6bc77bc9d
* Many numeric predicates are added (exact?, inexact?, real?,
...
complex?, etc.).
* min and max are added.
2007-01-20 16:52:22 -05:00
Abdulaziz Ghuloum
679af26761
* Added benchmarks from the larceny source distribution.
2007-01-20 14:32:30 -05:00
Abdulaziz Ghuloum
c8111df150
* fixed bug in handling tcbuckets.
...
Summary of the bug:
if ik_alloc is called during gc, and if it causes a heap
overflow, then the pages are deallocated before returning to
scheme.
2007-01-19 18:13:44 -05:00
Abdulaziz Ghuloum
13e8f76f13
* intermediate step:
...
gc has tcbucket_size=16
compile allocates tcbucket_size=24
2007-01-17 14:34:25 -05:00
Abdulaziz Ghuloum
872a5e2e9e
* Added even? and odd? primitives.
2007-01-13 22:32:54 -05:00
Abdulaziz Ghuloum
212224b4cf
* Added the primitive (environ):
...
returns an alist of (string x string) as obtained from the
system environ.
* Added the primitive env:
(env "key") retrieves the env value associated with key
(env "key" "val") sets the env value assocuated with key to val
(env "key" "val" overwrite?) same as above but it does not
overwrite an existing value of overwrite? is #f.
2007-01-13 00:42:37 -05:00
Abdulaziz Ghuloum
63575db860
* makefile.ss is updated to use fork and waitpid in order to make
...
use of the dual-core capability of my macbook :-)
Compile-time is now 1.5secs real-time.
2007-01-01 02:48:17 +03:00
Abdulaziz Ghuloum
a5618ef877
* Fork, posix-fork, and waitpid are implemented.
2007-01-01 02:02:41 +03:00
Abdulaziz Ghuloum
eb24d17049
Fixed bug that caused mvcalls to lose their live masks.
2007-01-01 01:46:47 +03:00
Abdulaziz Ghuloum
a8e1b860bb
Live-masks are busted again.
...
Some closures that are live are not traced by the GC.
2006-12-30 22:52:37 +03:00
Abdulaziz Ghuloum
2ea03e0417
* Fixed bug in collecting bignums.
...
* time-it now displays the number of collections and bytes
allocated.
2006-12-29 13:45:30 +03:00
Abdulaziz Ghuloum
b507118f5d
Added libtimers.ss:
...
(time-it proc) runs proc and reports the time.
(time-it proc message) runs proc and reports the time, with message.
(time <expr>) evaluates expr and prints the running time.
2006-12-29 10:53:47 +03:00
Abdulaziz Ghuloum
0b38b1ff30
ikarus-fasl.c plays along with the rtd-symbol game by setting and
...
referencing rtd symbols.
2006-12-26 11:46:23 +03:00
Abdulaziz Ghuloum
158980aeea
The fasl-loader interns gensyms by default now.
2006-12-25 10:35:18 +03:00
Abdulaziz Ghuloum
b9a369197a
gensym->unique-string now interns gensyms in the gensym table.
2006-12-25 10:25:40 +03:00
Abdulaziz Ghuloum
b3a6744691
renamed oblist to symbol_table in pcb
2006-12-25 09:28:53 +03:00
Abdulaziz Ghuloum
599f68aa84
* Ikarus now handles interrupts (e.g. ^C) by signalling an error
...
when an interrupt occurs.
2006-12-24 11:24:53 +03:00
Abdulaziz Ghuloum
7fed78fa9d
An alt-stack and interrupt-handler are added to ikarus-main.c. When
...
an interrupt occurs, the engine_ticks is set to 1 and the
interrupted field is set to 1 in the pcb.
2006-12-24 09:43:20 +03:00
Abdulaziz Ghuloum
3aa22ea200
* Added 'add imm, mem' instruction format.
2006-12-21 17:16:33 +03:00
Abdulaziz Ghuloum
5ccca042a6
* Implementation of Guardian is complete.
...
* Implementation not fully tested. May have corner cases.
2006-12-19 20:14:31 +03:00
Abdulaziz Ghuloum
8dac92a512
added guardians primitives, not tested
2006-12-19 19:41:13 +03:00
Abdulaziz Ghuloum
3d2d52fe58
Added a guardians field to the pcb.
...
Added a guardians_loop procedure to the collector. In this
revision, this procedure does nothing.
2006-12-18 23:08:33 +03:00
Abdulaziz Ghuloum
e6c5c97b34
fixed simple bug in r126 for missing return(y);
2006-12-17 03:07:21 +03:00
Abdulaziz Ghuloum
b7410520cb
renamed all if (accounting) {...} to
...
#if accounting
...
#endif
2006-12-17 03:00:34 +03:00
Abdulaziz Ghuloum
1d2a277063
not done with fx-/fx+/fx*
2006-12-07 15:42:25 -05:00
Abdulaziz Ghuloum
d7565580bf
added intel docs
2006-12-07 01:38:04 -05:00
Abdulaziz Ghuloum
2a2a3ab7fb
* Added quotient.
...
* Added remainder.
* Added quotient+remainder :-)
2006-12-06 20:53:54 -05:00
Abdulaziz Ghuloum
4143501988
* Added ~% to the format metas.
...
* Exported string->list.
2006-12-06 18:26:37 -05:00
Abdulaziz Ghuloum
0f2bcdb2a0
added an mmap cache to avoid repeated mmaps/munmaps
2006-12-06 11:07:27 -05:00
Abdulaziz Ghuloum
5f051d3122
fixed memory extension bug in the collector
2006-12-06 10:08:34 -05:00
Abdulaziz Ghuloum
d006951ed7
symbol-table now puts an "unbound" in the symbol-value cell of the symbols it creates
2006-12-05 19:42:09 -05:00
Abdulaziz Ghuloum
ff9439d3c1
* Simple thunks do not allocate now.
2006-12-04 11:46:52 -05:00
Abdulaziz Ghuloum
3ba89a0638
* the fasl-reader in the binary handles 'Q' tags (thunks) now.
2006-12-04 10:34:50 -05:00
Abdulaziz Ghuloum
30a3ce94ef
* I don't know if the bug is fixed.
2006-12-04 09:11:56 -05:00
Abdulaziz Ghuloum
4a813dd5f8
segfaulting state
2006-12-03 18:42:52 -05:00
Abdulaziz Ghuloum
bdcfd8beb0
* Added a T tag in the fasl file format denoting a thunk.
...
* T is followed by a code object.
2006-12-03 15:13:36 -05:00
Abdulaziz Ghuloum
b09f5ba142
rebuilt
2006-12-01 11:18:23 -05:00
Abdulaziz Ghuloum
d04eb83cf3
Added PATH search.
...
* If argv[0] contains a '/', then we look for argv[0]++".boot"
* Otherwise, search the path[i] for where argv[0] came from and
append ".boot" to that.
2006-12-01 11:18:01 -05:00
Abdulaziz Ghuloum
5bb14cad6e
renamed:
...
runtime => bin
src => lib
2006-12-01 10:40:21 -05:00