Commit Graph

605 Commits

Author SHA1 Message Date
Abdulaziz Ghuloum 3f220faf13 * output files now use bytevectors as their internal buffer. 2007-05-18 16:07:58 -04:00
Abdulaziz Ghuloum 7e9e43bec1 * output strings now use their own internal buffers 2007-05-18 15:47:06 -04:00
Abdulaziz Ghuloum ceecfd9251 * implemented write-byte 2007-05-18 08:22:04 -04:00
Abdulaziz Ghuloum 9032492bf3 * Added write-byte to ikarus.io-primitives 2007-05-18 08:19:03 -04:00
Abdulaziz Ghuloum 35fa003558 * Added $write-byte to ikarus.io-primitives.unsafe.ss 2007-05-18 08:15:51 -04:00
Abdulaziz Ghuloum bc41665bf3 * removed junk from input-files handlers. 2007-05-17 06:46:47 -04:00
Abdulaziz Ghuloum 52a28f8332 * input ports now use bytevectors fully. 2007-05-17 06:44:51 -04:00
Abdulaziz Ghuloum 3148d7f95c * input ports now have a bytevector as buffer 2007-05-17 06:27:59 -04:00
Abdulaziz Ghuloum efd2734075 * input strings now do not use the internal port buffer 2007-05-17 05:50:01 -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 913bd590b6 * Added uint-list->bytevector and sint-list->bytevector. 2007-05-17 03:36:28 -04:00
Abdulaziz Ghuloum d62c01dfa7 * bytevector-sint-set! is completed. 2007-05-17 03:03:10 -04:00
Abdulaziz Ghuloum 8f885aa848 * bytevector-sint-set! is almost ok. 2007-05-16 11:05:06 -04:00
Abdulaziz Ghuloum e3bb91ad08 * Added a $bignums library that's now just holding the names of
primitive bignum functions.
2007-05-16 06:02:34 -04:00
Abdulaziz Ghuloum 2ee587d26d * Added #vu8(bytes ...) for the reader and writer. 2007-05-15 23:57:35 -04:00
Abdulaziz Ghuloum 14066b3ec9 * added a check for non-negative integer for bytevector-uint-set!. 2007-05-15 23:24:07 -04:00
Abdulaziz Ghuloum 9488a0706f * Added bytevector-uint-set! 2007-05-15 20:19:24 -04:00
Abdulaziz Ghuloum 4062b00c29 * Added bytevector-uint-ref, bytevector-sint-ref, bytevector->uint-list,
and bytevector->sint-list
2007-05-15 19:27:36 -04:00
Abdulaziz Ghuloum 3629e0b0d9 * Added bytevector=? 2007-05-15 14:37:04 -04:00
Abdulaziz Ghuloum 1e364d3186 * Added bytevector-copy and bytevector-fill! 2007-05-15 14:33:50 -04:00
Abdulaziz Ghuloum f630177d17 * Added bytevector->u8-list, u8-list->bytevector, and
bytevector-copy!.
2007-05-15 14:27:31 -04:00
Abdulaziz Ghuloum a809afd0fb * added bytevector-s8-set! and bytevector-u8-set!. 2007-05-15 13:50:00 -04:00
Abdulaziz Ghuloum a11fb060f2 * Added bytevector-u8-ref and bytevector-s8-ref. 2007-05-15 13:38:38 -04:00
Abdulaziz Ghuloum db80ba43f6 * Added bytevector-length 2007-05-15 13:17:17 -04:00
Abdulaziz Ghuloum 49d254c89e * Added make-bytevector and bytevector? 2007-05-15 12:42:52 -04:00
Abdulaziz Ghuloum 9d3e23fb6d * added an (ikarus system $bytevectors) library 2007-05-15 12:29:47 -04:00
Abdulaziz Ghuloum 97f59ad1ee * transition of symbols to secondary type done. 2007-05-15 11:37:43 -04:00
Abdulaziz Ghuloum 9ded62b5e5 * can now load fresh compiler 2007-05-15 10:45:31 -04:00
Abdulaziz Ghuloum 2b96460a77 * added find-library-by-name 2007-05-15 10:23:40 -04:00
Abdulaziz Ghuloum 026f786bf9 * added current-library-collection and library-name to
ikarus.system.$bootstrap
2007-05-15 10:18:58 -04:00
Abdulaziz Ghuloum 6bdb50004a * incremental step towards loading a fresh compiler for
bootstrapping.
2007-05-15 08:56:22 -04:00
Abdulaziz Ghuloum 18777b192d * Fixed a bug that caused interrupts to write the contents of the
output buffer twice.
2007-05-14 18:16:00 -04:00
Abdulaziz Ghuloum 12120c6cbc * new rev. 2007-05-14 14:58:33 -04:00
Abdulaziz Ghuloum e831d54afe * Added a comment file about r6rs records. 2007-05-14 14:53:29 -04:00
Abdulaziz Ghuloum 3656be2631 * Added open-input-string. 2007-05-11 23:39:22 -04:00
Abdulaziz Ghuloum c85495a4f2 * added positive? 2007-05-11 23:14:23 -04:00
Abdulaziz Ghuloum 1feea6c243 * better error message for referencing pattern variables outside a
syntax form
2007-05-11 22:54:18 -04:00
Abdulaziz Ghuloum 6fe22073dd * Added datum->syntax and syntax->datum 2007-05-11 22:50:02 -04:00
Abdulaziz Ghuloum 6e1c1f847a * Added bound-identifier=? 2007-05-11 22:47:09 -04:00
Abdulaziz Ghuloum d7b72ae38a * added call-with-current-continuation. 2007-05-11 22:02:49 -04:00
Abdulaziz Ghuloum daadee442c * fixed bug in library-name->file-name which did not handle capital
letters properly.
2007-05-11 21:27:00 -04:00
Abdulaziz Ghuloum 29c43af1f4 * added environment, environment?, and eval as specified by r6rs. 2007-05-11 21:06:31 -04:00
Abdulaziz Ghuloum 008457c5f8 * top-level-value error now prints the names of the symbol using ~a
instead of ~s.
2007-05-11 20:45:15 -04:00
Abdulaziz Ghuloum 1932db8d65 * library manager now attempts to load imported libraries from file
according to some library-name->file-name mapping.
2007-05-11 20:32:48 -04:00
Abdulaziz Ghuloum 4ca7b2780e * top-level sorta works. 2007-05-10 03:59:20 -04:00
Abdulaziz Ghuloum 48f98c13c5 * added some support for the old interaction repl behavior. 2007-05-09 23:42:32 -04:00
Abdulaziz Ghuloum 4763b3e67e * reinstated (ikarus fasl read) 2007-05-09 19:37:24 -04:00
Abdulaziz Ghuloum e157388176 * added (r6rs syntax-case) library. 2007-05-09 12:54:57 -04:00
Abdulaziz Ghuloum 457ed6aa4b * removed uses of fx primitives from ikarus.syntax.ss 2007-05-09 11:26:26 -04:00
Abdulaziz Ghuloum fd91a5bafc * added a (ikarus symbols) library. 2007-05-09 11:17:54 -04:00
Abdulaziz Ghuloum f64b0ee310 * added a (chez modules) library that exports the module keyword. 2007-05-09 11:12:27 -04:00
Abdulaziz Ghuloum 48244ec85e * makefile.ss is turned into an r6rs-script. 2007-05-09 07:49:04 -04:00
Abdulaziz Ghuloum 35a9aa6d20 * r6rs top-level programs seem to work. 2007-05-09 07:47:40 -04:00
Abdulaziz Ghuloum 8c2b318648 * added a loader for top-level r6rs scripts. 2007-05-09 07:35:31 -04:00
Abdulaziz Ghuloum 7494c29bba * Added an argument "top?" to chi-body* which indicates whether
we're expanding a top-level program (and thus can generate
  temporaries for expressions) or not.
2007-05-09 06:42:37 -04:00
Abdulaziz Ghuloum e414b2daca * moved the position of the rib argument to chi-body* to the end
in (ikarus syntax).
2007-05-09 06:39:42 -04:00
Abdulaziz Ghuloum 3be2a9d9af * changed (ikarus syntax) to build letrec* instead of letrec for
internal and library definitions.
2007-05-09 06:33:44 -04:00
Abdulaziz Ghuloum 31b73fd46c * the decision criteria for complex primitives (in optimize-letrec)
has changed.  right now, any primitive call is treated as complex.
  further research into what primitive calls can be treated as
  simple is suspended until further notice.
2007-05-09 06:30:09 -04:00
Abdulaziz Ghuloum 509a375871 * makefile now inserts letrec* into (ikarus) and (r6rs). 2007-05-09 06:10:38 -04:00
Abdulaziz Ghuloum f5a980efd6 * (ikarus syntax) now recognized letrec* (untested). 2007-05-09 06:09:37 -04:00
Abdulaziz Ghuloum 5c2220f9bb * the compiler now recognizes letrec* (not tested yet). 2007-05-09 05:59:32 -04:00
Abdulaziz Ghuloum c8e60f84da * more cleanup in pairs.ss 2007-05-08 19:38:05 -04:00
Abdulaziz Ghuloum 0e1fcc18c3 * cleanup of pairs.ss 2007-05-08 19:19:50 -04:00
Abdulaziz Ghuloum 1948dd5942 * testing commit of bzr.16 2007-05-08 10:04:00 -04:00
Abdulaziz Ghuloum 18e6ac04fa * more cleanup again. 2007-05-08 06:58:19 -04:00
Abdulaziz Ghuloum c4d0277fb3 * more cleanup 2007-05-08 06:56:20 -04:00
Abdulaziz Ghuloum 741c261b7e * good cleanup of the syntax macro done. 2007-05-08 06:33:19 -04:00
Abdulaziz Ghuloum 88cbbaeb12 * major cleanup in the syntax-case macro. 2007-05-08 06:21:55 -04:00
Abdulaziz Ghuloum bae137b21d * reinstated some quasiquotes. 2007-05-08 06:06:45 -04:00
Abdulaziz Ghuloum e4f2b18f80 * stupid syntax-foo helpers are gone. 2007-05-08 06:03:11 -04:00
Abdulaziz Ghuloum 9a3d959142 * cleanup of syntax.ss 2007-05-08 05:48:53 -04:00
Abdulaziz Ghuloum c5915af00a * added a FIXME about (apply append ---) 2007-05-08 05:47:30 -04:00
Abdulaziz Ghuloum 0f5fbd6380 * made better use of the new guard ability of syntax-match 2007-05-08 05:31:04 -04:00
Abdulaziz Ghuloum 9bcfbf0664 * in syntax-match, _ now matches anything and does not bind a
variable.
2007-05-08 05:15:30 -04:00
Abdulaziz Ghuloum 1355665e55 * faster syntax-match implementation. 2007-05-08 05:10:37 -04:00
Abdulaziz Ghuloum 65dbda85fc * syntax-match now accepts a single code form only. 2007-05-08 03:48:42 -04:00
Abdulaziz Ghuloum 862a8b558c * better error messages for displaced lexicals. 2007-05-08 01:42:19 -04:00
Abdulaziz Ghuloum 2d8a4521cf * removed lhs* and kwd* from expander, now reinstating properly. 2007-05-08 00:45:22 -04:00
Abdulaziz Ghuloum fc418d1fb6 * chi-internal-module now uses chi-body* to process its body. 2007-05-07 23:41:36 -04:00
Abdulaziz Ghuloum bee9773072 * removed chi-internal-body 2007-05-07 23:25:28 -04:00
Abdulaziz Ghuloum 887552b49f added:
src/tests.libraries.ss
2007-05-07 22:30:27 -04:00
Abdulaziz Ghuloum 0bb5276177 * deleted find-exports from syntax.ss 2007-05-07 22:25:20 -04:00
Abdulaziz Ghuloum 2c4ddb0f67 * building export env seems to be ok. 2007-05-07 22:18:46 -04:00
Abdulaziz Ghuloum 151913a749 * visit-time requirements are tracked properly now. 2007-05-07 21:30:52 -04:00
Abdulaziz Ghuloum 795f87b499 * the expander now creates a visit-time-collector that's supposed to
collect the visit-time requirements.
2007-05-07 21:11:28 -04:00
Abdulaziz Ghuloum 6b39f738a0 * we can now import macros from other libraries. They are visited
before the macro is used.
2007-05-07 20:58:12 -04:00
Abdulaziz Ghuloum 57a269436a * now constructing visit code. 2007-05-07 20:32:36 -04:00
Abdulaziz Ghuloum 5f07f5f921 * changed sanitize-binding to add a local prefix to all introduced
keywords (like local-macro, local-macro!, and local-rtd)
2007-05-07 20:02:29 -04:00
Abdulaziz Ghuloum 32a1751025 * fixed a couple of typos in syntax.ss 2007-05-07 19:46:48 -04:00
Abdulaziz Ghuloum 036292f3fc * install-library now takes all 11 arguments! 2007-05-07 04:54:10 -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 4c8029ab3e * now exporting installed-libraries. 2007-05-07 04:09:35 -04:00
Abdulaziz Ghuloum 37920f52af * now exporting set-rtd-printer! 2007-05-07 04:04:54 -04:00
Abdulaziz Ghuloum 3f4e5ee1a4 * current-library-collection removed. 2007-05-07 03:57:17 -04:00
Abdulaziz Ghuloum 1807ac38c9 * removed library-subst/env procedure. 2007-05-07 03:55:51 -04:00
Abdulaziz Ghuloum 97cd3dc461 * added an auxilary procedure library-exists? for the library
manager.
2007-05-07 03:45:13 -04:00
Abdulaziz Ghuloum 22b191334f * the expander now signals a proper error if it cannot find an
imported library.
2007-05-07 03:42:40 -04:00
Abdulaziz Ghuloum 9cdaa11a60 * all lexicals are now added through the procedure add-lexical in
(ikarus syntax).
2007-05-07 03:22:42 -04:00
Abdulaziz Ghuloum bb3dac193f * top-rib is now unsealed after we're done with it. 2007-05-07 02:48:23 -04:00
Abdulaziz Ghuloum 24f07a7d66 * swapped the message and the procedure for time-it. 2007-05-07 02:32:39 -04:00
Abdulaziz Ghuloum 4e5d1439e0 * Added timers to the makefile.ss 2007-05-07 02:29:34 -04:00
Abdulaziz Ghuloum 6723a30ef9 * completed self-organizing sealed ribs. 2007-05-07 02:17:39 -04:00
Abdulaziz Ghuloum de158ca4cd * added a sealed/freq field to the rib record. The idea is to
convert the rib data from lists to vectors once the rib is sealed
  (i.e. no more bindings will be added to it) and then sort it
  according to the frequency of references made to the individual
  bindings.
2007-05-07 00:44:28 -04:00
Abdulaziz Ghuloum c69f74fb05 * re-ordered the clauses in label->binding since imported stuff are
more likely to occur than locally defined stuff (is this true in
  general?)
2007-05-07 00:25:21 -04:00
Abdulaziz Ghuloum 90da5334bd * the global bindings are now a pair of <library,gensym-location>. 2007-05-06 23:42:10 -04:00
Abdulaziz Ghuloum 08a0bb0989 * the library manager now has a hash table mapping all labels to
their bindings.  This gives a 0.3 second speed up to the bootstrap
  process.
2007-05-06 23:32:51 -04:00
Abdulaziz Ghuloum 4c12889e10 * removed current-library-collection from list of primitives. 2007-05-06 23:12:34 -04:00
Abdulaziz Ghuloum 2eb451febe * removed some junk from ikarus.syntax 2007-05-06 23:11:30 -04:00
Abdulaziz Ghuloum 085a0c14ed * removed $code? from the compiler as well. 2007-05-06 22:50:28 -04:00
Abdulaziz Ghuloum 70008f2f7a * removed all references to $code? from the code. 2007-05-06 22:49:33 -04:00
Abdulaziz Ghuloum d58f15b14c * added code? to the compiler. 2007-05-06 22:48:10 -04:00
Abdulaziz Ghuloum 1703ff38f8 * (ikarus system unsafe) is gone.
* a new bootstrap library is added for three primitives.
2007-05-06 20:54:30 -04:00
Abdulaziz Ghuloum f46dac0612 * eval-core is no longer exported 2007-05-06 20:46:47 -04:00
Abdulaziz Ghuloum e638797f11 * eval-top-level is no longer exported to the top-level 2007-05-06 20:43:56 -04:00
Abdulaziz Ghuloum e3c58d4464 * moved load to ikarus.load.ss 2007-05-06 20:39:42 -04:00
Abdulaziz Ghuloum cbad0231d4 * ikarus.cafe now imports eval-top-level explicitly from
ikarus.syntax
2007-05-06 20:29:58 -04:00
Abdulaziz Ghuloum 7032f963e1 * void is moved to ikarus.singular-objects
* removed:
    src/ikarus.void.ss
2007-05-06 20:23:45 -04:00
Abdulaziz Ghuloum aa50cd2b12 renamed:
src/libtoplevel.ss => src/ikarus.main.ss
2007-05-06 20:20:13 -04:00
Abdulaziz Ghuloum 3b5fe561ea * removed the junkyard library since everything there is not needed
* by the user.
2007-05-06 20:18:36 -04:00
Abdulaziz Ghuloum a0c81d9ce7 * moved some prims to (ikarus system $interrupts) 2007-05-06 20:15:49 -04:00
Abdulaziz Ghuloum 6dc380029c * makefile and the compiler now signal an error if a primitive
is not associated with a location.
2007-05-06 20:12:25 -04:00
Abdulaziz Ghuloum a146056491 * removed (ikarus system) from the set of libraries. 2007-05-06 20:07:00 -04:00
Abdulaziz Ghuloum eb5770e079 * moved misc things to (ikarus system $junkyard) 2007-05-06 20:04:26 -04:00
Abdulaziz Ghuloum 207654f779 * scheme-env-junk is gone from makefile.ss 2007-05-06 20:01:18 -04:00
Abdulaziz Ghuloum cec70be7b8 * (scheme) is gone from the library manager. 2007-05-06 19:22:06 -04:00
Abdulaziz Ghuloum a41b08894d * (ikarus syntax) now uses (ikarus system $all) instead of (scheme)
to construct scheme-stx objects.
2007-05-06 19:20:52 -04:00
Abdulaziz Ghuloum 5a488fe96c * before removing (ikarus system). 2007-05-06 19:14:51 -04:00
Abdulaziz Ghuloum e35a87b57e * removed install-library from the prims 2007-05-06 18:58:54 -04:00
Abdulaziz Ghuloum d579b63f52 * cleanip of ikarus.trace, vectors, and writer.ss 2007-05-06 18:52:19 -04:00
Abdulaziz Ghuloum e3ddd4d0e6 * added the $unbound-object? prim to the (ikarus system $symbols)
library.
2007-05-06 18:43:04 -04:00
Abdulaziz Ghuloum 00075f13d0 * cleanup of input-files 2007-05-06 18:30:08 -04:00
Abdulaziz Ghuloum 190f360daf * cleanip of unsafe io primitives. 2007-05-06 18:28:21 -04:00
Abdulaziz Ghuloum ab49f9ee42 * cleanup of io-primitives.ss 2007-05-06 18:27:10 -04:00
Abdulaziz Ghuloum 79408d142d * cleanup of io-ports.ss 2007-05-06 18:25:53 -04:00
Abdulaziz Ghuloum e976ee649b * cleanip of intel-assembler.ss 2007-05-06 18:24:25 -04:00
Abdulaziz Ghuloum 81179a5e5d * cleanup of hash-tables.ss 2007-05-06 18:23:07 -04:00
Abdulaziz Ghuloum fcf401b076 * removed import of (scheme) from ikarus.handlers 2007-05-06 18:21:13 -04:00
Abdulaziz Ghuloum aebad6ece7 * added symbol-bound?, symbol-value, and set-symbol-value! to the
symbols library.
2007-05-06 18:18:53 -04:00
Abdulaziz Ghuloum 0d03979d60 * removed import of (scheme) from ikarus.fixnums.ss 2007-05-06 18:13:57 -04:00
Abdulaziz Ghuloum ec4b28c09b * removed import of (scheme) from ikarus.fasl.ss 2007-05-06 18:12:31 -04:00
Abdulaziz Ghuloum aa0d7341a2 * added a (ikarus system $stack) library and removed imports of
(scheme) from ikarus.control.ss
* moved $$apply to (ikarus system $stack).
2007-05-06 18:10:51 -04:00
Abdulaziz Ghuloum edc01b587b * removed import of (scheme) from ikarus.command-line.ss 2007-05-06 18:04:15 -04:00
Abdulaziz Ghuloum 08ba1ee1b9 * removed import of (scheme) from ikarus.collect.ss 2007-05-06 18:00:49 -04:00
Abdulaziz Ghuloum f8f4283886 * removed import of (scheme) from ikarus.code-objects.ss 2007-05-06 17:59:32 -04:00
Abdulaziz Ghuloum 891cde0e74 * removed import of (scheme) from ikarus.chars.ss 2007-05-06 17:58:34 -04:00
Abdulaziz Ghuloum adc4869540 * added (ikarus system $apply) and removed import of (scheme) in
ikarus.apply.ss
2007-05-06 17:57:31 -04:00
Abdulaziz Ghuloum 116b8c2227 * removed import of (scheme) in ikarus.compiler.ss 2007-05-06 17:55:04 -04:00
Abdulaziz Ghuloum fb63e58c6c * removed import (scheme) from ikarus.lists. 2007-05-06 17:47:36 -04:00
Abdulaziz Ghuloum 4afe70f770 removed some more imports of (scheme) 2007-05-06 17:41:59 -04:00