Commit Graph

834 Commits

Author SHA1 Message Date
Abdulaziz Ghuloum bd5707b013 * finished listring all r6rs-todo identifiers. 2007-08-26 15:43:18 -04:00
Abdulaziz Ghuloum c6f08db761 * Added an r6rs-todo.ss list. 2007-08-26 14:03:25 -04:00
Abdulaziz Ghuloum d8b81869c9 * $port-output-index, $port-output-size, $set-port-output-index! and
$set-port-output-size! are gone.
2007-08-25 11:24:05 -04:00
Abdulaziz Ghuloum 023d0831d7 * Removed $port-input-index, $port-input-size,
$set-port-input-index! and $set-port-input-size!
2007-08-25 11:06:30 -04:00
Abdulaziz Ghuloum c5530973d0 * Added $port-buffer, $port-index, $port-size, $set-port-index!, and
$set-port-size!.  Next step is removing the input/output-specific
  accessors and mutators.
2007-08-25 10:49:39 -04:00
Abdulaziz Ghuloum 33c087a867 * Stack overflow is reinstated. fibc and other call/cc intensive
benchmarks now work.
2007-07-13 13:54:25 +03:00
Abdulaziz Ghuloum 61edf6d5a2 * Removed the collection of open-coded primititives in compiler.ss 2007-07-13 13:23:54 +03:00
Abdulaziz Ghuloum 598d7ae99c * r6rs.records.procedural is almost done. 2007-07-05 16:59:06 +03:00
Abdulaziz Ghuloum 054e076651 * Fixed a bug in ratnum multiplication. 2007-07-05 11:48:40 +03:00
Abdulaziz Ghuloum 22d15fe6da * Added an inthash function to primops. 2007-07-04 17:42:18 +03:00
Abdulaziz Ghuloum a6302bc57d added:
src/lab/
  src/lab/ikarus.r6rs.records.procedural.ss
  src/lab/ikarus.r6rs.records.syntactic.ss

These are nonworking versions of r6rs records facility
2007-06-27 13:15:51 +03:00
Abdulaziz Ghuloum 327de19e3b * Added fft benchmark. 2007-06-18 18:04:02 +03:00
Abdulaziz Ghuloum dd1634e755 * $fixnum->flonum now works. 2007-06-18 14:29:39 +03:00
Abdulaziz Ghuloum d3b2ee35f3 * Added $fixnum->flonum (not working yet) 2007-06-18 14:06:13 +03:00
Abdulaziz Ghuloum cb4752df99 * Added flmax 2007-06-18 13:06:19 +03:00
Abdulaziz Ghuloum d04b4f4be8 * Added flround. 2007-06-18 13:01:45 +03:00
Abdulaziz Ghuloum baafbed761 * Added (r6rs i/o simple) library 2007-06-18 02:57:32 +03:00
Abdulaziz Ghuloum ab6162d2a7 * Added string-foldcase and string-ci=? (inefficiently) 2007-06-18 02:49:40 +03:00
Abdulaziz Ghuloum 551e5aa088 * Case-insensitive char cmp functions added. 2007-06-17 17:51:47 +03:00
Abdulaziz Ghuloum 94fb15620f * Added (r6rs unicode) library. 2007-06-17 17:30:15 +03:00
Abdulaziz Ghuloum df9ef4849d * Added char-downcase, char-upcase, char-titlecase, and char-foldcase 2007-06-17 17:20:19 +03:00
Abdulaziz Ghuloum e28c1a6de7 * Added unicode-char-cases file to the unicode directory that
contains char-downcase, char-upcase, char-titlecase, and
  char-foldcase tables.
2007-06-17 15:04:01 +03:00
Abdulaziz Ghuloum 1750aba832 * The CODE/digit assembly helper now accepts imm,imm memory reference. 2007-06-16 12:08:38 +03:00
Abdulaziz Ghuloum 6d8c626017 * Fixed a bug in (fl/ x) not inverting its argument. 2007-06-16 09:59:39 +03:00
Abdulaziz Ghuloum e51def62c1 * Fixed bugs in the just-added $fp comparison primitives. 2007-06-15 12:38:30 +03:00
Abdulaziz Ghuloum 3f3767800d * Added $fl=, $fl<, $fl>, $fl<=, $fl>= primops. 2007-06-15 12:19:28 +03:00
Abdulaziz Ghuloum 3acdcb6c04 * Added native support for $fl+, $fl-, $fl*, $fl/ 2007-06-15 08:53:34 +03:00
Abdulaziz Ghuloum f1674cbaef * renamed benchmarks directories.
renamed:
  benchmarks => benchmarks.larceny
  benchmarks/new => benchmarks
2007-06-14 20:26:38 +03:00
Abdulaziz Ghuloum 96851f8285 * Fixed a bug that causes (- 0.0) to be 0.0 instead of -0.0. 2007-06-14 20:11:58 +03:00
Abdulaziz Ghuloum b6779a0f87 * Added flonum fasl reader. 2007-06-14 19:48:57 +03:00
Abdulaziz Ghuloum f147e391eb * Added flonum, ratnum, and bignum fasl writers. 2007-06-14 19:38:00 +03:00
Abdulaziz Ghuloum e061dcd504 * Reader for ratnums implemented. 2007-06-14 19:21:26 +03:00
Abdulaziz Ghuloum b2582e731c * Reader for flonums is implemented. 2007-06-14 18:56:47 +03:00
Abdulaziz Ghuloum ec5317bea0 * Added nucleic benchmark. 2007-06-13 18:17:21 +03:00
Abdulaziz Ghuloum e76047cb47 * Added list-tail. 2007-06-13 17:42:04 +03:00
Abdulaziz Ghuloum 0c62d5bee8 * Added abs. 2007-06-13 16:48:05 +03:00
Abdulaziz Ghuloum 973595a93f * exported call-with-output-file. 2007-06-13 16:22:11 +03:00
Abdulaziz Ghuloum 48c80cbd9c * Added flmin. 2007-06-13 14:16:03 +03:00
Abdulaziz Ghuloum 009d0b2fac * Added flnegative? 2007-06-13 14:11:39 +03:00
Abdulaziz Ghuloum 0f910c431f * Added flzero? 2007-06-13 14:08:12 +03:00
Abdulaziz Ghuloum 89fd9d0a23 * Added flsqrt. 2007-06-13 14:00:29 +03:00
Abdulaziz Ghuloum ded64db389 * Added fl/. 2007-06-13 13:50:19 +03:00
Abdulaziz Ghuloum dc046a3092 * exported call-with-input-file. 2007-06-13 13:36:43 +03:00
Abdulaziz Ghuloum 817851f3d2 * defined fl*.
* fixed a bug in the identitity of fl+.
2007-06-13 13:15:52 +03:00
Abdulaziz Ghuloum 2dad5b473e * exported odd? 2007-06-13 13:10:54 +03:00
Abdulaziz Ghuloum 9b0d2143a3 * exported even? 2007-06-13 13:01:21 +03:00
Abdulaziz Ghuloum 6441235594 * exported modulo (incomplete). 2007-06-13 12:58:48 +03:00
Abdulaziz Ghuloum 01f12f135a * Added the round procedure 2007-06-13 12:40:29 +03:00
Abdulaziz Ghuloum 3edcc64121 * Added exact? 2007-06-13 12:05:24 +03:00
Abdulaziz Ghuloum 97dfd0ddcf * Added min. 2007-06-13 11:55:37 +03:00
Abdulaziz Ghuloum 88d8e198fc * Added the rest of fl=? fl<? fl<=? fl>? fl>=? 2007-06-13 11:53:52 +03:00
Abdulaziz Ghuloum adb65c1b84 * Added expt to (r6rs)
* Added fl+ and fl-.
2007-06-13 11:47:30 +03:00
Abdulaziz Ghuloum 3fb701187e * Added (r6rs arithmetic flonums) library containing fl<? only 2007-06-13 11:37:22 +03:00
Abdulaziz Ghuloum 352d0f54dd * Added write-char to (r6rs) library. 2007-06-13 10:36:11 +03:00
Abdulaziz Ghuloum f3166040a0 * Addd (r6rs mutable-pairs) library. 2007-06-13 10:26:51 +03:00
Abdulaziz Ghuloum 9bd65cc447 * Fixed rational? and integer? to handle flonums properly. 2007-06-13 09:03:30 +03:00
Abdulaziz Ghuloum 83c7fe71b8 * Fixed two bugs in the ratnum case of mk< procs. 2007-06-13 06:04:08 +03:00
Abdulaziz Ghuloum 5f1b44106a * removed the 3-arg dispatch in the generic =, <,, <=, >, >= 2007-06-12 17:32:25 +03:00
Abdulaziz Ghuloum f05f8965d6 * string-to-number now understands:
- #e #E #i #I prefixes
  - decimal notation
  - exponents
2007-06-12 03:57:35 +03:00
Abdulaziz Ghuloum e1d0d4aca6 * subtraction (-) now understands ratnums. 2007-06-12 02:49:27 +03:00
Abdulaziz Ghuloum ca257870ce * bignum->flonum now handles large floats properly by converting
them to +inf.0 and -inf.0.
2007-06-12 02:25:13 +03:00
Abdulaziz Ghuloum b01e289798 * Numeric comparison functions =, <, <=, >, >= now understand
ratnums.
2007-06-11 11:59:11 +03:00
Abdulaziz Ghuloum 90feb453f5 * Added tests for bignum->flonum. 2007-06-10 20:32:48 +03:00
Abdulaziz Ghuloum cde508d58c * reimplemented bignum->flonum in Scheme now. ikrt_bignum_to_flonum
is no longer used.
2007-06-10 20:21:41 +03:00
Abdulaziz Ghuloum 9a31a8f0d3 * Added $make-flonum and $flonum-set! prims. 2007-06-10 12:09:01 +03:00
Abdulaziz Ghuloum 7246be795d * removed old flonum->string Scheme code and supporting C code. 2007-06-10 10:35:45 +03:00
Abdulaziz Ghuloum cccdd1122c * Added flonum->string using dybvig's algorithm. 2007-06-10 07:55:49 +03:00
Abdulaziz Ghuloum a596550e97 * Added log. 2007-06-10 07:37:30 +03:00
Abdulaziz Ghuloum d88126aea1 * Added inexact->exact 2007-06-10 07:35:39 +03:00
Abdulaziz Ghuloum 0480517615 * Added floor/ceiling. 2007-06-10 07:32:19 +03:00
Abdulaziz Ghuloum 6712e9490b * Fixed two bugs in $ratnum-n and $ratnum-d 2007-06-08 10:30:25 +03:00
Abdulaziz Ghuloum 3798fd932a * Added ratnum cases to binary*. 2007-06-08 10:18:36 +03:00
Abdulaziz Ghuloum b859c05bd6 * Added (flonum-u8-ref x k) where x is a flonum, k is a fixnum in
between 0 and 7, and returns byte k in the flonum data structure.
  k is a logical index in an IEEE number with the structure:
  [s][11-bit-biased-expo] [52-bit-mantissa==================]
  [  k = 0  ] [  k = 1  ] [k=2] [k=3] [k=4] [k=5] [k=6] [k=7]
2007-06-08 09:15:25 +03:00
Abdulaziz Ghuloum 9c458d4ba7 * reinstalled exact->inexact 2007-06-08 09:10:18 +03:00
Abdulaziz Ghuloum cd788e4bed * Added (ikarus system $flonums) library (empty). 2007-06-08 09:07:02 +03:00
Abdulaziz Ghuloum f3e5772e76 * Added bref to assembler
* Fixed bug in bytevector-s8-ref
2007-06-08 08:54:10 +03:00
Abdulaziz Ghuloum a27c6e13a9 * fixed a HUGE bug in optimize-letrec.
* fixed two minor bugs in the code generators for - and +
* added a constant-folder for "length"
2007-06-06 10:14:07 +03:00
Abdulaziz Ghuloum ae0b25ae9f * do-spill now removes spilled vars from neighbors of conflicting
vars.
2007-06-06 09:24:32 +03:00
Abdulaziz Ghuloum 0db57fbb69 * removed the reg? argument to build-graph. Reg? was needed when
build-graph was used for constructing both frame conflicts and
  register conflicts.  Now, it's only used for register conflicts so
  reg? is no longer needed.
2007-06-06 06:10:28 +03:00
Abdulaziz Ghuloum 01658fe195 removed libcogen1.ss which was not used by the compiler. 2007-06-06 05:38:02 +03:00
Abdulaziz Ghuloum 39e6fc2fcf * removed more junk. 2007-06-06 03:11:12 +03:00
Abdulaziz Ghuloum 665f3a0b79 * removed old one-pass compiler. chaitin is now the default
backend
2007-06-06 02:57:48 +03:00
Abdulaziz Ghuloum 563f32c16f * swapped core-compile-expr and alt-core-compile-expr 2007-06-06 02:48:09 +03:00
Abdulaziz Ghuloum 7301be0ab0 * removed one instance of build-graph which reduces compile time
from 225 secs down to 17!  Sweet!
2007-06-06 02:32:45 +03:00
Abdulaziz Ghuloum feb9764645 * Cleanup of some junk code in color-by-chaitin 2007-06-06 01:16:34 +03:00
Abdulaziz Ghuloum 1dc9e83448 * Altcogen works. Need to rethink how to code the conflict graphs. 2007-06-04 02:55:04 +03:00
Abdulaziz Ghuloum a5dbb8f45d * Can load altcogen. 2007-06-03 04:55:40 +03:00
Abdulaziz Ghuloum 6279bc7c47 * alt-compile-core-expr-to-port is now exported from (ikarus compiler) 2007-06-02 10:26:06 +03:00
Abdulaziz Ghuloum ca248be49a * Libraries can export modules now.
* libaltcogen can now be loaded.
2007-06-02 10:21:05 +03:00
Abdulaziz Ghuloum b7b3709f69 * Added (import M) for M \in modules. 2007-06-02 05:59:55 +03:00
Abdulaziz Ghuloum d2657bde24 * Added basic identifier-syntax (one that does not recognize the
set! case).
2007-06-02 05:43:24 +03:00
Abdulaziz Ghuloum af9798e9be * Better handling of multi-byte read-char. 2007-06-02 05:17:22 +03:00
Abdulaziz Ghuloum ee738a9a62 * somewhat fixed the ugly syntax-error message in syntax.ss 2007-05-22 20:21:22 -04:00
Abdulaziz Ghuloum cd1de33b91 * Added let-syntax and letrec-syntax. 2007-05-22 19:59:30 -04:00
Abdulaziz Ghuloum fb48ef12bd * disabled gzipped fasl files. too slow :-( 2007-05-22 19:01:07 -04:00
Abdulaziz Ghuloum 580481d8fc * The runtime system can now open gzipped bootfiles in addition to
uncompressed fasl files.
2007-05-22 17:56:15 -04:00
Abdulaziz Ghuloum 890dd348b2 * fasl files now may contain ascii strings as a special type in
order to reduce the size of the fasl file.  Gains: reduces the
  size of the current boot file from 2.9M down to 2.5M.
2007-05-21 23:09:45 -04:00
Abdulaziz Ghuloum 9f1e3dcb0b * Added numerator and denominator. 2007-05-21 19:54:36 -04:00
Abdulaziz Ghuloum b1a6668060 * Added lcm. 2007-05-21 19:49:23 -04:00
Abdulaziz Ghuloum e78c0f3a78 * Added gcd 2007-05-21 19:35:16 -04:00
Abdulaziz Ghuloum 23769d5b09 * Added ratnum? to (ikarus).
* Modified some definitions of the numeric predicates to recognize 
  ratnums.
2007-05-20 23:23:54 -04:00
Abdulaziz Ghuloum 67765257cf * Added (ikarus system $ratnums) library. 2007-05-20 22:52:11 -04:00
Abdulaziz Ghuloum d062baee17 * Added an R6RS todo list
* fixed some problems (and introduced others) in the reader.
2007-05-20 22:16:57 -04:00
Abdulaziz Ghuloum aa98df6c4c moving to a new numeric reading algorithm.
added:
  src/tests/reader.ss
2007-05-20 13:11:33 -04:00
Abdulaziz Ghuloum 3c520ea9d3 minor change to concat in output-strings. 2007-05-20 00:57:28 -04:00
Abdulaziz Ghuloum 7b8b50a6aa * fixed incorrect handling of unicode chars in output string ports. 2007-05-19 22:36:52 -04:00
Abdulaziz Ghuloum a1879ccc57 * Added a unicode directory containing files from unicode.org
as well as extractors for the data.
2007-05-19 22:09:30 -04:00
Abdulaziz Ghuloum caa5eed9a0 * Writer and pretty-printer now print things more like what r6rs
requires as far as symbols and strings are concerned.
2007-05-19 17:28:03 -04:00
Abdulaziz Ghuloum f33fce8b04 * write now writes characters (including unicode chars) properly. 2007-05-19 15:18:08 -04:00
Abdulaziz Ghuloum 1abce54167 * string transition completed. string data is now 32-bit
tagged characters.
2007-05-19 14:38:45 -04:00
Abdulaziz Ghuloum 182de12428 * cleaned up some uses of naked strings in the runtime system. 2007-05-19 14:13:51 -04:00
Abdulaziz Ghuloum 267da9e77c * Writing strings to fasl files now uses 4-byte words for each
character.
2007-05-19 13:54:13 -04:00
Abdulaziz Ghuloum 1c4d3c4b40 * uuid now uses a bytevector for ffi. 2007-05-18 22:31:00 -04:00
Abdulaziz Ghuloum 027d50e84a * marked env and environ procedures busted. 2007-05-18 22:26:22 -04:00
Abdulaziz Ghuloum e499eb0f5a * delete-file now uses bytevectors for filename rep. 2007-05-18 22:21:36 -04:00
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 5c24a02d73 * fasl writer can now write bytevectors using tag "v". 2007-05-18 18:12:48 -04:00
Abdulaziz Ghuloum 9a89717c2d * Implemented string->utf8-bytevector
added:
  src/ikarus.transcoders.ss
2007-05-18 18:02:49 -04:00
Abdulaziz Ghuloum 08176e3b91 * Output string ports now use bytevectors for their internal buffer. 2007-05-18 16:15:40 -04:00
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