Abdulaziz Ghuloum
cc500489b7
* file-exists? now uses bytevectors for filenames.
2007-05-18 22:18:51 -04:00
Abdulaziz Ghuloum
b54cc9a762
* system now passes a bytevector to ik_system.
2007-05-18 22:15:52 -04:00
Abdulaziz Ghuloum
862871a787
* bignum->string now uses bytevectors as intermediate rep.
2007-05-18 22:08:45 -04:00
Abdulaziz Ghuloum
691a42fe4e
* string->flonum now uses bytevectors as intermediate rep.
2007-05-18 22:01:04 -04:00
Abdulaziz Ghuloum
7ca0ddfa81
* flonum->string now uses a bytevector as the intermediate buffer.
2007-05-18 21:52:04 -04:00
Abdulaziz Ghuloum
179063c117
* open-output-file now uses a bytevector instead of a string to
...
represent the filename during ffi.
2007-05-18 21:06:25 -04:00
Abdulaziz Ghuloum
1586986dbe
* open-input-file now uses a bytevector representing the filename
...
during ffi.
2007-05-18 21:03:14 -04:00
Abdulaziz Ghuloum
498084a6e8
* date-string now uses bytevectors instead of strings during ffi.
2007-05-18 20:59:10 -04:00
Abdulaziz Ghuloum
85944a2cff
* Added utf8-bytevector->string decoder
2007-05-18 20:18:55 -04:00
Abdulaziz Ghuloum
10f5e53338
* foreign procedures are now represented as bytevectors instead of
...
strings.
2007-05-18 18:55:20 -04:00
Abdulaziz Ghuloum
dfe8e0e1c1
* ikarus-fasl.c now recognizes the "v" marker for bytevectors
2007-05-18 18:16:52 -04:00
Abdulaziz Ghuloum
35fa003558
* Added $write-byte to ikarus.io-primitives.unsafe.ss
2007-05-18 08:15:51 -04:00
Abdulaziz Ghuloum
52a28f8332
* input ports now use bytevectors fully.
2007-05-17 06:44:51 -04:00
Abdulaziz Ghuloum
49dc13d5ee
* make string operations safe in all io layers.
2007-05-17 05:41:00 -04:00
Abdulaziz Ghuloum
5249a8ec31
* The gc now knows about bytevectors
2007-05-17 04:34:52 -04:00
Abdulaziz Ghuloum
97f59ad1ee
* transition of symbols to secondary type done.
2007-05-15 11:37:43 -04:00
Abdulaziz Ghuloum
6bdb50004a
* incremental step towards loading a fresh compiler for
...
bootstrapping.
2007-05-15 08:56:22 -04:00
Abdulaziz Ghuloum
7dc4f7617b
* ikarus-runtime no longer assigns the value of $base-rtd to the
...
base-rtd object. The reader now accesses the base-rtd from the
pcb directly.
2007-05-09 19:45:41 -04:00
Abdulaziz Ghuloum
8226619438
* install-library now takes an extra visibility flag.
...
* installed-libraries now takes an optional "all?" flag:
- if all? is true, it returns all libraries.
- if all? is false, it returns only the visible libraries
- all? defaults to #t.
2007-05-07 04:52:22 -04:00
Abdulaziz Ghuloum
48e062dfc4
* base-rtd is now placed in the pcb.
...
* renamed:
src/library-manager.ss => src/ikarus.library-manager.ss
2007-05-05 22:42:26 -04:00
Abdulaziz Ghuloum
5bb666bf7f
* last commit on alt-cogen and beginning of alt-alt-cogen :-)
2007-03-09 14:01:17 -05:00
Abdulaziz Ghuloum
893a2decc8
* added bignum? primitive and removed ikrt_isbignum from the runtime
...
system.
2007-03-04 13:02:39 -05:00
Abdulaziz Ghuloum
c6861f41d5
* added flonum? and removed ikrt_is_flonum from the runtime system.
2007-03-04 12:59:28 -05:00
Abdulaziz Ghuloum
b326fbc07a
* completed the move to new specify-representation pass infrastructure.
2007-03-03 23:17:04 -05:00
Abdulaziz Ghuloum
cf65729971
more more more
2007-03-02 02:47:36 -05:00
Abdulaziz Ghuloum
de7c43a16b
* optimized symbol calls using the symbol-function field.
...
* added error checks for applying nonprocedures.
2007-02-25 21:29:28 -05:00
Abdulaziz Ghuloum
819a3ca1c1
* bug in collector causing dirty bits for code objects with younger reloc
...
vectors to be unset incorrectly. The bug was in using || instead
of | when computing the dirty pattern.
2007-02-22 21:58:38 -05:00
Abdulaziz Ghuloum
8294a8dee9
* fixed an assembler bug in "addl reg -> mem"
2007-02-13 17:24:00 -05:00
Abdulaziz Ghuloum
297e47db32
* adding some asm tests in asm-tests.ss
2007-02-13 05:08:48 -05:00
Abdulaziz Ghuloum
d6c2d5dd66
* representation (tags) of bignums/flonums changed successfully.
2007-01-21 20:36:22 -05:00
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