Abdulaziz Ghuloum
f71cb36e11
* SL_apply_label is removed from the compiler.
2007-05-04 04:12:56 -04:00
Abdulaziz Ghuloum
416f49caf5
* make the "current-primitive-locations" a procedure that returns a
...
location instead of an alist.
2007-05-04 03:53:39 -04:00
Abdulaziz Ghuloum
54c48777d7
* The compiler now recognizes the (current-primitive-locations)
...
and generates appropriate code for symbols in the alist.
2007-05-04 03:48:49 -04:00
Abdulaziz Ghuloum
890c322adb
* made the compiler initialization (compiling the error handlers)
...
a procedure that's called explicitly at the bottom of the compiler
library.
2007-05-04 03:46:38 -04:00
Abdulaziz Ghuloum
e3398504b8
* primitive-ref is removed from the compiler.
2007-05-04 03:33:26 -04:00
Abdulaziz Ghuloum
14a947e7f9
* removed the "primitive?" and "primitive-ref" primitives.
2007-05-04 03:31:57 -04:00
Abdulaziz Ghuloum
b74108f21c
* added a "current-primitive-locations" primitive that returns an
...
alist mapping primitives to their locations (gensyms).
2007-05-04 03:29:27 -04:00
Abdulaziz Ghuloum
a3aef19781
* exports from the compiler to the next runtime (system) library
...
now works.
2007-05-04 03:00:16 -04:00
Abdulaziz Ghuloum
e568cc87d9
* the compiler can now import values defined in other libraries
...
in the compiler.
2007-05-04 02:39:50 -04:00
Abdulaziz Ghuloum
8d19b91270
* unified the two library-expanders into one procedure
...
* made boot-library-expander install the library in the
current-library-collection.
2007-05-04 02:33:58 -04:00
Abdulaziz Ghuloum
6922733809
* added a "current-library-collection" primitive.
...
Calling (current-library-collection) returns a procedure that:
- when called with no arguments, it returns a list of the set of
libraries in the collection.
- when called with a single argument, it adds that library to
the set of libraries in the collection.
Calling (current-library-collection f) sets the current library
collection to be the procedure f which must follow the protocol
above.
2007-05-04 02:23:19 -04:00
Abdulaziz Ghuloum
34fa59f9d4
* (export (rename (internal-name external-name) ...)) now works.
2007-05-04 01:32:52 -04:00
Abdulaziz Ghuloum
bf3e5711a9
* fixed a pretty-printer bug that caused gensym count to be assigned
...
out of order. It now uses map1ltr instead of map for list
processing.
2007-05-03 04:38:48 -04:00
Abdulaziz Ghuloum
b6734896e2
* working on cleaning up the makefile
2007-05-03 03:58:43 -04:00
Abdulaziz Ghuloum
2c25051855
* auto-invoke completely gone.
2007-05-03 01:59:57 -04:00
Abdulaziz Ghuloum
4eca8e3915
* auto-invoke is gone. top-level must explicitly invoke a library.
2007-05-03 01:49:16 -04:00
Abdulaziz Ghuloum
cc17420db8
* added an (invoke libspec* ...) form to the top-level.
2007-05-03 01:47:43 -04:00
Abdulaziz Ghuloum
7595e45326
* the primitive chi-top-library is gone.
2007-05-03 01:25:09 -04:00
Abdulaziz Ghuloum
bee47205bf
* initializer of "expand" is also gone.
2007-05-03 01:23:54 -04:00
Abdulaziz Ghuloum
11e6d6518f
* the "expand" primitive is gone.
2007-05-03 01:22:33 -04:00
Abdulaziz Ghuloum
4f8d8fa212
* new-cafe and load use eval-top-level now.
2007-05-03 01:19:50 -04:00
Abdulaziz Ghuloum
2632c786ec
* added an "eval-top-level" procedure.
2007-05-03 01:18:59 -04:00
Abdulaziz Ghuloum
86a75e8d54
* added an "imported-loc->library" procedure to the library manager
2007-05-03 01:07:10 -04:00
Abdulaziz Ghuloum
d0c92ae99e
things are looking better, lotsa cleanup in libcompile.
2007-05-03 00:54:32 -04:00
Abdulaziz Ghuloum
5db96309b6
* load-handler is gone.
2007-05-03 00:41:40 -04:00
Abdulaziz Ghuloum
f6cafc8f40
* added a default-cafe-eval procedure that new-cafe calls by default.
...
* defailt-cafe-eval calls chi-library-top.
2007-05-03 00:38:42 -04:00
Abdulaziz Ghuloum
35600203f9
* added an load-handler procedure that defaults to calling
...
chi-library-top.
* changed definition of load to use load-handler
2007-05-03 00:33:18 -04:00
Abdulaziz Ghuloum
cc2f391a6f
* sc-expand is gone
2007-05-03 00:19:06 -04:00
Abdulaziz Ghuloum
097e430912
* current-expand is gone
2007-05-03 00:17:53 -04:00
Abdulaziz Ghuloum
260487b393
* libsyntax now uses eval-core to evaluate its run-time expressions.
2007-05-03 00:12:43 -04:00
Abdulaziz Ghuloum
f14ac302f4
* added eval-core procedure.
2007-05-03 00:10:13 -04:00
Abdulaziz Ghuloum
c780c192a1
* compile-time-core-eval is gone
2007-05-03 00:00:50 -04:00
Abdulaziz Ghuloum
96b15b3d74
* current-eval is gone.
2007-05-02 23:59:55 -04:00
Abdulaziz Ghuloum
d6958c99a0
* making more changes
2007-05-02 23:56:46 -04:00
Abdulaziz Ghuloum
d83bff5f5e
* expand-mode is gone
2007-05-02 20:36:23 -04:00
Abdulaziz Ghuloum
9a80586934
* run-library-expander now installs and invokes the library
...
automatically.
2007-05-02 20:29:32 -04:00
Abdulaziz Ghuloum
c3767da70e
* Added an invoke-library primitive to the library manager.
2007-05-02 20:05:19 -04:00
Abdulaziz Ghuloum
362d9f3b38
* removes library-name/ver/id and added library-spec primitive
2007-05-02 19:22:54 -04:00
Abdulaziz Ghuloum
63d35807c1
* library manager exports library-name/id/version prims
2007-05-02 19:19:37 -04:00
Abdulaziz Ghuloum
eb0d58f2aa
* still working on the run-library-expander
2007-05-02 19:07:48 -04:00
Abdulaziz Ghuloum
1fdce919d7
* split the library expander into a core-library-expander
...
and two expanders: one for boot and one for runtime
2007-05-02 18:44:25 -04:00
Abdulaziz Ghuloum
4c4af70ffc
* expander now uses imported-label->binding to resolve imported
...
bindings.
2007-05-02 18:16:25 -04:00
Abdulaziz Ghuloum
7aa29c5a00
* Added an imported-binding->label primitive to the library manager
2007-05-02 18:13:31 -04:00
Abdulaziz Ghuloum
402f6e48ed
* The main subst used for expanding a library is now obtained
...
from the library manager.
2007-05-02 18:02:17 -04:00
Abdulaziz Ghuloum
86dc98afa1
* the scheme env is moved to the library manager
2007-05-02 17:13:16 -04:00
Abdulaziz Ghuloum
ef4bb0951e
* Added installed-libraries prim.
2007-05-02 16:55:54 -04:00
Abdulaziz Ghuloum
4df202261b
* install-library now can install simple libraries.
2007-05-02 06:24:37 -04:00
Abdulaziz Ghuloum
896a4408fd
* added initial code for a library manager
2007-05-02 04:48:41 -04:00
Abdulaziz Ghuloum
8383fd79d6
* added a primitive-location parameter.
2007-05-02 02:16:56 -04:00
Abdulaziz Ghuloum
efded22ebc
* boot-library-expand now returns an environment along with the
...
expanded code.
2007-05-02 01:52:11 -04:00
Abdulaziz Ghuloum
671e2f475c
* Added a "boot-library-expand" to separate the top-library
...
expander from the experimental expander.
2007-05-02 00:06:44 -04:00
Abdulaziz Ghuloum
718b20767f
* cleanup of makefile.ss
2007-05-01 17:39:17 -04:00
Abdulaziz Ghuloum
2fae44c304
* syntax-objects are now non-generative records
2007-05-01 17:25:43 -04:00
Abdulaziz Ghuloum
e1bfd0f31f
* added with-output-to-file to the scheme-env
2007-05-01 16:49:07 -04:00
Abdulaziz Ghuloum
b2b8ba6994
* moved some of the original macros to be true macros
...
instead of chi procedures.
2007-05-01 16:41:36 -04:00
Abdulaziz Ghuloum
f62a41cc43
* removed all x:identifiers that were introduced during the move.
2007-05-01 06:15:42 -04:00
Abdulaziz Ghuloum
5e3e02e295
* psyntax removed from repository.
...
* syntax.ss renamed to libsyntax.ss.
2007-05-01 06:09:01 -04:00
Abdulaziz Ghuloum
00326031d8
* entire system librarified
2007-05-01 05:49:33 -04:00
Abdulaziz Ghuloum
b772735658
* syntax.ss librarified.
2007-05-01 05:16:32 -04:00
Abdulaziz Ghuloum
218b0aab48
* before librarifiying syntax.ss
2007-05-01 05:12:32 -04:00
Abdulaziz Ghuloum
76023d27c6
* libcompile librarified
2007-05-01 04:37:35 -04:00
Abdulaziz Ghuloum
5ae6f6bc76
* before trying libcompile
2007-05-01 04:36:53 -04:00
Abdulaziz Ghuloum
705e8f386b
* fixed error in check-dups of modules in internal defines.
2007-05-01 02:19:05 -04:00
Abdulaziz Ghuloum
17664b1a37
* working on libcompile
2007-05-01 00:06:47 -04:00
Abdulaziz Ghuloum
16a57eaf5c
* libnumerics librarified
2007-05-01 00:04:53 -04:00
Abdulaziz Ghuloum
1e54a6e8da
* libintelasm librarified
2007-04-30 23:46:31 -04:00
Abdulaziz Ghuloum
572b97c769
libchezio librarified
2007-04-30 23:18:37 -04:00
Abdulaziz Ghuloum
b737da1b6e
* some support for syntax-case added.
2007-04-30 22:00:04 -04:00
Abdulaziz Ghuloum
bee4776036
* working on librarifying syntax.ss
2007-04-30 04:51:37 -04:00
Abdulaziz Ghuloum
2fe1943872
* libhandlers librarified
2007-04-30 01:06:00 -04:00
Abdulaziz Ghuloum
163ac8e281
* libcontrol librarified
2007-04-30 01:02:08 -04:00
Abdulaziz Ghuloum
e373daaf13
removed:
...
src/libcontrol0.ss
src/libcontrol1.ss
2007-04-30 00:56:04 -04:00
Abdulaziz Ghuloum
159abbafc0
* merged libcontrol0.ss and libcontrol1.ss back to libcontrol.ss
2007-04-30 00:55:13 -04:00
Abdulaziz Ghuloum
e028e37d0f
* libcollect librarified
2007-04-30 00:50:10 -04:00
Abdulaziz Ghuloum
e953fff362
* librecords librarified
2007-04-30 00:47:37 -04:00
Abdulaziz Ghuloum
56f3d05a6e
* libcxr librarified
2007-04-30 00:35:28 -04:00
Abdulaziz Ghuloum
f4b0668ebb
* libguardians librarified
2007-04-30 00:33:22 -04:00
Abdulaziz Ghuloum
c3839a721d
* libcore librarified
2007-04-30 00:31:21 -04:00
Abdulaziz Ghuloum
d7414001bd
* libhash libarified
2007-04-29 23:13:19 -04:00
Abdulaziz Ghuloum
97478fd873
* libwriter librarified
2007-04-29 23:00:20 -04:00
Abdulaziz Ghuloum
5d7afb92d4
* libtokenizer now librarified
2007-04-29 22:29:42 -04:00
Abdulaziz Ghuloum
726d53ac1b
* chi-library now enforces that imported ids cannot be defined
...
in the body of the library
2007-04-29 21:59:06 -04:00
Abdulaziz Ghuloum
cf3ff29874
* libassembler librarified
2007-04-29 21:42:41 -04:00
Abdulaziz Ghuloum
cb6971a438
* libfasl librarified
2007-04-29 21:25:31 -04:00
Abdulaziz Ghuloum
338265eab1
* libtrace librarified
2007-04-29 20:55:51 -04:00
Abdulaziz Ghuloum
0cd876d5a2
* libpp librarified
...
* chi-library now knows about modules (kind of)
2007-04-29 20:41:55 -04:00
Abdulaziz Ghuloum
948797da22
* libcafe librarized
2007-04-29 18:35:18 -04:00
Abdulaziz Ghuloum
d8619ac96e
* libposix librarified
2007-04-29 05:02:44 -04:00
Abdulaziz Ghuloum
0144cf7bb1
* libtimers is now a library (kind of, meaning, chi-top-library can
...
parse it.
2007-04-29 04:38:08 -04:00
Abdulaziz Ghuloum
5e0649c5c0
* libtoplevel.ss is now using libraries only
2007-04-28 22:59:58 -04:00
Abdulaziz Ghuloum
149ace20d9
* removed the pretty-print from the output of chi-top-library
2007-04-28 20:59:38 -04:00
Abdulaziz Ghuloum
c1a946b346
* first library (ikarus interaction) is added.
...
* the library expander (syntax.ss) is added.
2007-04-28 20:54:02 -04:00
Abdulaziz Ghuloum
fde9424682
updated boot after suppressing let-values bug
2007-04-28 05:06:43 -04:00
Abdulaziz Ghuloum
5db1a9626a
* added compile-core-expr-to-port in order to compile the whole
...
program at once
2007-04-28 01:42:12 -04:00
Abdulaziz Ghuloum
f27c2df625
* assign-frame-sizes is as complete as could be (time for assigning
...
libcompile.ss dropped from ~5 secs to 1.8 secs).
2007-03-11 20:55:43 -04:00
Abdulaziz Ghuloum
068bc38e42
* eliminated a few instances of set-rem and set->list.
2007-03-11 20:39:21 -04:00
Abdulaziz Ghuloum
2b6bcc324b
* when a variable is assigned a location, it does not need to remove
...
itself from the edges of its conflicting nodes.
2007-03-11 20:07:00 -04:00
Abdulaziz Ghuloum
c473619084
* important realization that set->list is perhaps the most expensive
...
operation on sets. Working on eliminating most uses of set->list.
2007-03-11 20:00:08 -04:00
Abdulaziz Ghuloum
2b5b555bac
* Just realized that you don't need all var<->var conflicts to be
...
recorded. All is needed is for a var $x$ to know some of its var
conflicts as long as the other conflicts know about $x$. I'll be
working on this now. I'm hoping for a 50% speedup in the
assign-frame-sizes pass.
2007-03-11 18:54:15 -04:00
Abdulaziz Ghuloum
aa1c7e1bb7
* before changing number of bits to 28
2007-03-11 03:40:47 -04:00
Abdulaziz Ghuloum
3cb18c56e9
* deleting old list-based set representation.
2007-03-10 21:01:41 -05:00
Abdulaziz Ghuloum
fa94d2f6a1
* added a few missing instruction sequences where the dest is a
...
memory location.
* implemented integer sets (based on tree representation).
2007-03-10 19:50:24 -05:00
Abdulaziz Ghuloum
10bdc3dcd6
* starting with IntegerSet
2007-03-10 16:47:13 -05:00
Abdulaziz Ghuloum
d4559cfd4c
cleanup of repository content.
2007-03-09 19:28:38 -05: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
e9740fa34f
* fixed bug in the graph construction that caused the operand of
...
idivl not to be added to the live set.
2007-03-02 00:41:28 -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
87d8d5a5dd
* added a $set-symbol-function! primitive.
2007-02-24 15:42:57 -05:00
Abdulaziz Ghuloum
d99c22e8c4
* The shortcut form is now two parts: a body and a handler. The
...
evaluation of the body can jump to the handler at any point during
evaluation by means of using the interrupt primitive or by
overflow.
2007-02-22 23:02:50 -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
0bd88991cb
* looks not bad.
2007-02-19 23:33:29 -05:00
Abdulaziz Ghuloum
30f71b0381
* frame moves are not working as nicely as they should.
2007-02-19 18:21:35 -05:00
Abdulaziz Ghuloum
b6dd620b94
* chaitin can now compile the system.
2007-02-17 19:22:14 -05:00
Abdulaziz Ghuloum
0304c85082
* pre-spilling call-live variables works for the test cases now.
2007-02-17 18:09:03 -05:00
Abdulaziz Ghuloum
85bf359150
* psyntax is not working under chaitin.
2007-02-16 10:11:21 -05:00
Abdulaziz Ghuloum
649e7f022a
* libchezio and libhash are remaining
2007-02-15 23:54:39 -05:00
Abdulaziz Ghuloum
1a4cdcb7b0
* libcore now compiles with chaitin
2007-02-14 19:42:36 -05:00
Abdulaziz Ghuloum
434ebe9525
* The $apply macro and all the appcall forms were removed from the
...
compiler after realizing that I was stupid.
($appcall rator rand*) was just (jmpcal SL_apply rator rand*)
2007-02-14 15:50:34 -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
a123a77bbc
* nothing much
2007-02-13 02:05:58 -05:00
Abdulaziz Ghuloum
826adfe9dd
* can now compile libtoplevel
2007-02-12 23:19:56 -05:00
Abdulaziz Ghuloum
f88e3a8b65
* libnumeric can be compiled now with chaitin
2007-02-12 23:03:41 -05:00
Abdulaziz Ghuloum
2e477881b6
* split libcontrol into primitive libcontrol0 and extended
...
libcontrol1.
2007-02-12 19:17:31 -05:00
Abdulaziz Ghuloum
fad2c4e999
* fixed bug in assembler
...
* assembler now handles orl imm, mem
2007-02-12 17:59:58 -05:00
Abdulaziz Ghuloum
f766ca1148
* passes tests, but fails to compile psyntax.
2007-02-12 13:58:04 -05:00
Abdulaziz Ghuloum
fa6e499b22
* before attempting to use chaitin to compile the system.
2007-02-11 21:42:01 -05:00
Abdulaziz Ghuloum
353b4393b0
tests 2.4 pass
2007-02-11 21:18:12 -05:00
Abdulaziz Ghuloum
d0cf70341c
* passinf 2.2
2007-02-11 19:17:59 -05:00
Abdulaziz Ghuloum
217445835f
* passing 2.1
2007-02-11 18:52:10 -05:00
Abdulaziz Ghuloum
5174ccb1cc
* passing 1.9
2007-02-11 18:07:58 -05:00
Abdulaziz Ghuloum
6fd790b046
* altcogen passes 1.8
2007-02-11 18:06:04 -05:00
Abdulaziz Ghuloum
c44caba238
* newcogen passes 1.6
2007-02-11 17:51:42 -05:00
Abdulaziz Ghuloum
910b52f1f1
* libaltcogen now passes 1.5
2007-02-11 17:34:13 -05:00
Abdulaziz Ghuloum
639f8f4f25
* altcompile now passes conditionals.
2007-02-11 17:23:13 -05:00
Abdulaziz Ghuloum
f5411877ba
* altcompile now passes tests 1.3
2007-02-11 04:12:09 -05:00
Abdulaziz Ghuloum
27d8fd4558
* libaltcogen can now compile a simple expression :-)
2007-02-10 18:51:12 -05:00
Abdulaziz Ghuloum
f10a8ffccd
commented out references to some unused register names
2007-02-10 11:49:38 -05:00
Abdulaziz Ghuloum
7c26c2b19e
* racompile passes 1.5
2007-02-05 22:35:38 -05:00
Abdulaziz Ghuloum
caf234c0c3
* racompile passes 1.4
2007-02-05 20:38:22 -05:00
Abdulaziz Ghuloum
4698e0fd92
* racompiler passes 1.3
...
* assembler handles more xor operands
2007-02-05 17:09:50 -05:00
Abdulaziz Ghuloum
f7e773b30f
* racompiler passes tests 1.2
2007-02-05 14:46:33 -05:00
Abdulaziz Ghuloum
1eff505ab4
* racompiler compiles integers.
2007-02-05 14:30:42 -05:00
Abdulaziz Ghuloum
f5d870f23b
* made assembler accept integers (instead of fixnums) as immediates.
2007-02-05 14:19:03 -05:00
Abdulaziz Ghuloum
d04dd79b81
* added open-input-string
2007-02-04 15:51:47 -05:00
Abdulaziz Ghuloum
0f5af66775
* Added a warning procedure.
2007-01-31 19:07:28 -05:00
Abdulaziz Ghuloum
3c4986ff89
* added last-pair primitive
2007-01-31 17:23:49 -05:00
Abdulaziz Ghuloum
126b7aa8fa
* call-with-values where the second argument is a single-value
...
procedure is now direct-call-optimized.
2007-01-26 10:23:07 -05:00
Abdulaziz Ghuloum
8139a91a61
* Modified the reader and writer to accept "->[subsequent]*" as an
...
identifier.
2007-01-26 09:05:07 -05:00
Abdulaziz Ghuloum
d8f646040f
* added with-output-to-string
2007-01-22 21:07:20 -05:00
Abdulaziz Ghuloum
82375a3ddc
* new-cogen now removes all primcalls before proceeding. Ideally,
...
no primcalls should be introduced at that point.
2007-01-21 22:24:12 -05:00
Abdulaziz Ghuloum
f114fc2f78
* Started work on new cogen
2007-01-21 21:20:39 -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
a2692706d4
added char-whitespace?
2007-01-20 14:40:41 -05:00
Abdulaziz Ghuloum
a47856614f
* The procedure member is now defined.
2007-01-20 00:09:11 -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
8b1236e031
* removed all dlink stuff from hash table.
2007-01-17 14:56:45 -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
21f4ecb88d
New pretty-printer now handles *pretty-format* semi-decently.
2007-01-15 02:44:45 -05:00
Abdulaziz Ghuloum
872a5e2e9e
* Added even? and odd? primitives.
2007-01-13 22:32:54 -05:00
Abdulaziz Ghuloum
fe89891d96
updated tests in libpp.ss
2007-01-13 21:58:14 -05:00
Abdulaziz Ghuloum
92e278281c
* pretty-print is now added to ikarus.
...
* new-cafe now uses pretty-print instead of write for printing to
the interaction repl.
2007-01-13 21:33:04 -05:00
Abdulaziz Ghuloum
53b51e4088
* Tokenizer now recognizes "\r" in strings.
2007-01-13 14:39:58 -05:00
Abdulaziz Ghuloum
1a7a4e1c2a
fixed bug in environ that causes substring to fail when one of the items is "foo=".
2007-01-13 13:02:03 -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
6359ca9ee4
Fixed copyright notice to be 2006-2007 instead of 2006.
2007-01-11 19:22:32 -05:00
Abdulaziz Ghuloum
09d9687fdd
* Cogen no longer generates (int x) where x is a fixnum.
2007-01-09 09:44:00 +03:00
Abdulaziz Ghuloum
ffc5ef557c
(int x) is no longer emitted by the cogen.
...
assembler handles (int x) and fixnums similarly.
2007-01-09 09:24:07 +03: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
d38880b777
Fixed bug in libfasl that caused reading a thunk to return the code
...
instead.
2006-12-26 12:03:43 +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
f5f91712dd
* Fasl file reader almost complete with full record and code reader.
2006-12-26 11:25:48 +03:00
Abdulaziz Ghuloum
9c00592520
fasl-read handles negative fixnums.
2006-12-26 09:22:58 +03:00
Abdulaziz Ghuloum
3ddceaa164
fasl-read now handled pairs, positive-fixnums and the empty list.
2006-12-26 06:32:59 +03:00
Abdulaziz Ghuloum
d41a2c0096
fasl-write now returns void instead of the meaningless number it used to return
2006-12-26 06:25:35 +03:00
Abdulaziz Ghuloum
4fa2bdf0d9
tokenize recognizes #@ as a fasl header and calls $fasl-read (in
...
libfasl.ss).
2006-12-26 06:21:07 +03:00
Abdulaziz Ghuloum
f25cc3cb67
Pretty-printed gensyms:
...
* print-gensym now accepts the symbol "pretty" as a valid
argument.
* The writer prints #:pretty-name if the print-gensym value
is |pretty|.
* The reader accepts #:id as a valid syntax. The result is
a fresh gensym with id as a pretty-name.
2006-12-25 11:33:03 +03:00
Abdulaziz Ghuloum
e7d0a0a1cc
Tokenize now recognizes gensym syntax:
...
#{id0} => a fresh gensym with pretty-string id0
#{id0 id1} => an interned gensym with pretty-string id0
and unique-string id1.
id0 and id1 can have any identifier syntax including bar-quoted ids.
any number of whitespaces can be placed around id0 and id1.
2006-12-25 11:18:37 +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
711cabe8bb
removed all references to oblist from ss files
2006-12-25 09:20:09 +03:00
Abdulaziz Ghuloum
72653c5ef1
updated todo
2006-12-25 09:17:08 +03:00
Abdulaziz Ghuloum
4f5490039b
* (interrupt-handler) is added to handle INT signals.
...
* Cafes now customize the interrupt-handler to suppress the error
message during read that the default interrupt handler generates.
2006-12-24 12:53:01 +03:00
Abdulaziz Ghuloum
da9518cc49
added comment to libguardians about where the code came from.
2006-12-24 12:20:16 +03:00
Abdulaziz Ghuloum
06158d90e0
deleted Makefile
2006-12-24 12:09:21 +03:00
Abdulaziz Ghuloum
0a01d8b4b8
makefile.ss and ikarusdoc now use "/usr/bin/env ikarus" in the shebang
...
line.
2006-12-24 12:08:18 +03:00
Abdulaziz Ghuloum
1e572559b7
collect is added to the set of public primitives
2006-12-24 11:50:19 +03:00
Abdulaziz Ghuloum
f729a725d2
libinterpret is gone.
2006-12-24 11:27: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
e69f0a5c80
* Assembler-output suppresses printing the closure-size; it prints
...
a newline instead.
2006-12-23 05:17:57 +03:00
Abdulaziz Ghuloum
b06b28f562
* Print-gensym is now set to off during assembler-output.
2006-12-21 18:11:43 +03:00
Abdulaziz Ghuloum
a41457ae66
* Heap and stack overflows now use interrupt-calls in order to push
...
the calls to the handlers outside of the main-line code.
2006-12-21 18:01:46 +03:00
Abdulaziz Ghuloum
0af5f6cc2a
* Engine handler is functional.
2006-12-21 17:49:30 +03:00
Abdulaziz Ghuloum
3aa22ea200
* Added 'add imm, mem' instruction format.
2006-12-21 17:16:33 +03:00
Abdulaziz Ghuloum
5615b03879
* Input/output ports are closed when the last reference to them is
...
dropped. Dropped files are closed before new files are opened.
2006-12-21 11:14:12 +03:00
Abdulaziz Ghuloum
2fcae826d1
* with-input-from-file, call-with-input-file, with-output-to-file,
...
and call-with-output-file no longer use dynamic-wind to track if
an exit continuation is invoked multiple times.
2006-12-21 10:56:07 +03:00
Abdulaziz Ghuloum
f7aa4c99e1
added libguardians.ss
2006-12-19 20:15:36 +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
b7410520cb
renamed all if (accounting) {...} to
...
#if accounting
...
#endif
2006-12-17 03:00:34 +03:00
Abdulaziz Ghuloum
ac5ac00bab
record-case definition is moved to libcompile.ss and the file is
...
deleted.
2006-12-17 02:18:11 +03:00
Abdulaziz Ghuloum
52acb437e8
added:
...
lab/prof/
lab/prof/Makefile
lab/prof/main
lab/prof/main.c
lab/prof/main.s
2006-12-17 02:15:38 +03:00
Abdulaziz Ghuloum
63dd3ba9b4
Moved test files to tests directory
2006-12-17 02:11:57 +03:00
Abdulaziz Ghuloum
5f3ee8a2c4
renamed lib dir to src
2006-12-10 23:13:16 -05:00
Abdulaziz Ghuloum
5bb14cad6e
renamed:
...
runtime => bin
src => lib
2006-12-01 10:40:21 -05:00
Abdulaziz Ghuloum
23dd55e7f6
removed Petite from the greeting
2006-12-01 10:20:50 -05:00
Abdulaziz Ghuloum
d24523376d
* Ikarus can now be started like:
...
$ ikarus [-b boot-file-name] file ... [-- arg ...]
files will be "load"ed sequentially after the greeting message is
printes. args are available from the command-line-arguments
parameter.
2006-12-01 10:15:25 -05:00
Abdulaziz Ghuloum
0ff5b0cf75
* Added a $arg-list system primitive that accesses the pcb->arg_list
...
field.
* Added a command-line-arguments parameter to the core.
2006-12-01 10:02:05 -05:00
Abdulaziz Ghuloum
ee0e6c91e7
Ikarus now recognizes a -b command-line argument for providing the
...
name of the boot file. If -b is missing, argv[0]++".boot" is used.
2006-12-01 09:23:37 -05:00
Abdulaziz Ghuloum
c3401ef735
Bug fix: Equal handles numbers correctly now.
2006-11-30 18:28:44 -05:00
Abdulaziz Ghuloum
9eaaf3c438
added file-exists? and delete-file operations to libposix.ss and ikarus-runtime.c
2006-11-29 17:06:16 -05:00
Abdulaziz Ghuloum
e97b39a39a
implemented assoc
2006-11-28 06:54:07 -05:00
Abdulaziz Ghuloum
f6a95c07d2
Removed all version names from files
2006-11-23 20:37:04 -05:00
Abdulaziz Ghuloum
10268dfc43
Fixed makefiles
2006-11-23 20:18:02 -05:00
Abdulaziz Ghuloum
9b961aa3a5
removed libassembler.ss from watchfile
2006-11-23 20:08:01 -05:00
Abdulaziz Ghuloum
9397527c3d
fixed output of assembler.fasl in compiler-9.2.ss
2006-11-23 20:06:46 -05:00
Abdulaziz Ghuloum
02e616f5c5
moved runtime directory to top-level
2006-11-23 19:58:06 -05:00
Abdulaziz Ghuloum
9cee9841de
imported compiler5-osx
2006-11-23 19:53:15 -05:00
Abdulaziz Ghuloum
1101ba6edb
imported compiler5
2006-11-23 19:48:14 -05:00
Abdulaziz Ghuloum
3815bebb4c
import from compiler4
2006-11-23 19:44:29 -05:00
Abdulaziz Ghuloum
03e9649064
imported compiler3
2006-11-23 19:42:39 -05:00
Abdulaziz Ghuloum
bd94bedc04
import from compiler2
2006-11-23 19:40:06 -05:00
Abdulaziz Ghuloum
3e7726203a
imported compiler1
2006-11-23 19:38:26 -05:00
Abdulaziz Ghuloum
d3313cd737
import from compiler0
2006-11-23 19:33:45 -05:00