Commit Graph

287 Commits

Author SHA1 Message Date
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