Commit Graph

358 Commits

Author SHA1 Message Date
Abdulaziz Ghuloum 7799fb3238 * libcollect is renamed ikarus.collect.ss
* ikarus.collect.ss exports its ids.
2007-05-05 02:07:50 -04:00
Abdulaziz Ghuloum 9a28870d31 * libcontrol is now a full library.
renamed:
  src/libcontrol.ss => src/ikarus.control.ss
2007-05-05 01:56:44 -04:00
Abdulaziz Ghuloum 28e5c26cee * moving on from (ikarus system handlers) 2007-05-04 11:59:03 -04:00
Abdulaziz Ghuloum 393ee8fbab * ikarus.handlers.ss is now complete 2007-05-04 11:38:39 -04:00
Abdulaziz Ghuloum a97798b598 * working through the handlers library 2007-05-04 11:25:04 -04:00
Abdulaziz Ghuloum 90ae8b65fb * (ikarus system parameters) is good to go 2007-05-04 11:16:42 -04:00
Abdulaziz Ghuloum 6d38530828 * import modifiers look good now. 2007-05-04 10:31:15 -04:00
Abdulaziz Ghuloum f9d0e76422 * added error stubs for the various import modifiers 2007-05-04 09:45:41 -04:00
Abdulaziz Ghuloum 19b1df212f renamed:
src/libhandlers.ss => src/ikarus.handlers.ss
2007-05-04 09:30:05 -04:00
Abdulaziz Ghuloum e58710865c * Added a printer to the library rtd. 2007-05-04 09:22:33 -04:00
Abdulaziz Ghuloum 2ec3a6da7c * makefile now constructs many initial libraries. 2007-05-04 09:13:14 -04:00
Abdulaziz Ghuloum d75f2ef04d * everything seems to work. Now working on exporting the primitives
directly and eliminating the primitive-set! calls.
2007-05-04 07:50:42 -04:00
Abdulaziz Ghuloum af69d9b3b1 * makefile now uses the export-locs for compiling the newly-built
system.
2007-05-04 07:46:33 -04:00
Abdulaziz Ghuloum 09e1b8e615 * makefile now overrides the primlocs when compiling the files. 2007-05-04 07:16:32 -04:00
Abdulaziz Ghuloum 0700cdc1cb * build-system-library in makefile now constructs a proper
current-primitive-locations procedure.
2007-05-04 06:14:20 -04:00
Abdulaziz Ghuloum 75bfaf49a0 * makefile now calls (current-primitive-locations (lambda (x) #f))
on startup.
2007-05-04 06:11:31 -04:00
Abdulaziz Ghuloum bc4e23ebbe * refresh-cached-labels! is good now. 2007-05-04 06:07:55 -04:00
Abdulaziz Ghuloum 664492e688 * cleaned up the assembly-labels code. 2007-05-04 05:01:38 -04:00
Abdulaziz Ghuloum cc159a4926 * SL_fx+_types is gone. 2007-05-04 04:19:57 -04:00
Abdulaziz Ghuloum 752ce74f1c * SL_fx+_type is gone from the compiler. 2007-05-04 04:17:21 -04:00
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