Commit Graph

1086 Commits

Author SHA1 Message Date
Abdulaziz Ghuloum 543d59313b * Added port-mode and set-port-mode! primitives. A port mode is
either the symbol ikarus-mode or the symbol r6rs-mode.
2007-11-18 19:28:59 -05:00
Abdulaziz Ghuloum 442eb1ca00 * Kind of fixes bug 163219: Better error message for expand. 2007-11-18 19:10:03 -05:00
Abdulaziz Ghuloum e99ce9c03b * Added put-char, get-char, and put-u8. 2007-11-18 18:48:24 -05:00
Abdulaziz Ghuloum 3b4d3097a1 Fixes bug 163540: allocation in bignum arithmetic does not garbage collect. 2007-11-18 10:37:13 -05:00
Abdulaziz Ghuloum 1afade6d43 * renamed ik_alloc to ik_unsafe_alloc since it was unsafe to call it
in general (it did not collect on heap overflow).
2007-11-18 09:12:00 -05:00
Abdulaziz Ghuloum 90759047b3 * The fasl loader has reduced the startup mmap frenzy for code
objects from 5242 pages (almost one page per code object) down
  to 785 pages.  Special thanks to Michael Adams for counting the
  the number of pages that were used and touched at startup; without
  his help, I wouldn't have optimized it in about 10 minutes of
  coding time.
2007-11-17 13:26:27 -05:00
Abdulaziz Ghuloum 499115a226 * Minor performance fix to previous deoptimization
* Appended current timelog.
2007-11-17 12:53:37 -05:00
Abdulaziz Ghuloum 245203eaa0 * Global variables which are assigned (or complex) no longer have lexical
copy.  All references and assignments to them goes through the
  symbol value slot.
2007-11-17 11:06:17 -05:00
Abdulaziz Ghuloum 759474fd85 * libraries are now expanded to a special library-letrec* form. 2007-11-17 09:53:22 -05:00
Abdulaziz Ghuloum eef196c09d * Optimized the zero case in $flonum->exact. 2007-11-17 09:12:49 -05:00
Abdulaziz Ghuloum 87d1cd5ad1 * reverted to previous broken version of ratnum->flonum. 2007-11-17 02:13:44 -05:00
Abdulaziz Ghuloum 7e1c6001eb Fixes a bug in top-level set! that caused the following to signal an
error:

> (define foo 12)
> (begin ((lambda (x) (set! foo x)) 13) 14)
2007-11-17 01:16:24 -05:00
Abdulaziz Ghuloum 97672d5990 * Added an "exec" to the generated scheme-script. 2007-11-15 13:57:03 -05:00
Abdulaziz Ghuloum 3a3bc7dcc1 * keyboard interrupts are now continuable. 2007-11-15 13:40:36 -05:00
Abdulaziz Ghuloum 55254257fb * generalized the fl+, fl-, fl*, and fl/ primops to multiple arguments. 2007-11-15 08:05:17 -05:00
Abdulaziz Ghuloum 7def83f487 * Added fxbit-field. 2007-11-15 07:14:47 -05:00
Abdulaziz Ghuloum ab6c871d76 * Added fxcopy-bit-field. 2007-11-15 07:03:04 -05:00
Abdulaziz Ghuloum d977720ae6 * Added fxcopy-bit. 2007-11-15 06:47:51 -05:00
Abdulaziz Ghuloum edb0abd366 * Added fxbit-set? 2007-11-15 06:40:50 -05:00
Abdulaziz Ghuloum 42866c21c3 * Added fxfirst-bit-set. 2007-11-15 06:33:21 -05:00
Abdulaziz Ghuloum 745c3be26e Fixes bug 162834: Typo in error message. 2007-11-15 05:51:24 -05:00
Abdulaziz Ghuloum d18a041840 * Fixed a bug in number->string for hex/oct/binary numbers. 2007-11-14 23:18:49 -05:00
Abdulaziz Ghuloum 4c632e435b * changed implementation of $flonum->exact. 2007-11-14 20:45:37 -05:00
Abdulaziz Ghuloum f3e412ae9c * Added an implementation of $flonum->integer which takes a flonum
and returns the integer representation of it (if it's an integer
  flonum), or #f otherwise.
2007-11-14 18:45:49 -05:00
Abdulaziz Ghuloum 25aa8d7072 Fixes bug 162741: hygiene breaks exported macros that introduce define-record-type 2007-11-14 17:24:29 -05:00
Abdulaziz Ghuloum 6c1dbba3de * Fixed a problem in the expander that caused libraries that are
expanded from the repl to dump all their bindings into the top
  level as well.
2007-11-14 13:54:54 -05:00
Abdulaziz Ghuloum 79c31416cf * Added $flonum-sbe primop for extracting the signed-biased-exponent
of a flonum.
2007-11-14 12:39:23 -05:00
Abdulaziz Ghuloum 82eda09ea0 * Added fxlength 2007-11-13 23:24:21 -05:00
Abdulaziz Ghuloum e06b84e75d * Added (xorl imm8 mem) instruction to the assembler. 2007-11-13 23:10:49 -05:00
Abdulaziz Ghuloum de635ef3bd * Added fxbit-count. 2007-11-13 22:33:37 -05:00
Abdulaziz Ghuloum a3f1feefb9 * Added bitwise-bit-count 2007-11-13 22:17:02 -05:00
Abdulaziz Ghuloum a0ba3d3d4f Fixes bug 162436: Off-by-one in substring 2007-11-13 12:21:27 -05:00
Abdulaziz Ghuloum 820d1716be * open-coded $flround. 2007-11-13 03:41:54 -05:00
Abdulaziz Ghuloum 47f7016b18 * changed implemenation of flround. 2007-11-13 03:10:39 -05:00
Abdulaziz Ghuloum 3feb49e10c * [Partially] Fixes bug 162334: exact->inexact is broken for 5e-324 2007-11-13 03:00:57 -05:00
Abdulaziz Ghuloum ef6b9c0bae * Comitted half-fix to exact->inexact regarding bug 162334.
- some of the generic arithmetic operations are still broken
    due to rounding errors.
2007-11-13 00:45:04 -05:00
Abdulaziz Ghuloum 4b7f03df1a * Added bitwise-first-bit-set. 2007-11-13 00:10:10 -05:00
Abdulaziz Ghuloum 99d15d2705 Fixes bug 162247: +NaN.0 and -INF.0 are not read properly 2007-11-12 14:12:01 -05:00
Abdulaziz Ghuloum 93868c0731 * Fixed spelling of "auxiliary" in an error message. 2007-11-12 11:37:11 -05:00
Abdulaziz Ghuloum a11cd5be48 * Added an internal library to makefile.ss just to make sure I use
the feature daily.
2007-11-12 05:05:27 -05:00
Abdulaziz Ghuloum c26ef04965 * multiple imports of the same binding into the same context now work. 2007-11-12 05:01:25 -05:00
Abdulaziz Ghuloum 880a6f8efd (ikarus)'s "import" keyword now handles libraries, allowing
libraries to be imported into any definition context including
the top-level, body of a script, body of a library, or body of a
function.
2007-11-12 04:40:48 -05:00
Abdulaziz Ghuloum eaeb6a4876 Fixed bug 162153: Bytevectors should be self evaluating. 2007-11-12 03:34:48 -05:00
Abdulaziz Ghuloum 43eb1bfcb3 Fixes bug 162145: Changing pkglibdir should rebuild ikarus-main.o and relink ikarus 2007-11-12 03:31:14 -05:00
Abdulaziz Ghuloum 31a9210f8a Fixes bug 162143: add 'clean' target for src/scheme-script 2007-11-12 02:30:39 -05:00
Abdulaziz Ghuloum a70899f811 * Fixes bug 162142: Makefile and config.h should not be in repo 2007-11-12 02:19:26 -05:00
Abdulaziz Ghuloum da22924c65 * Documented the ~b, ~o, ~d, and ~x format strings to the user's guide 2007-11-12 02:14:56 -05:00
Abdulaziz Ghuloum 6e7e0410fb * (ikarus) now exports the "library" keyword, allowing (library ---)
forms to appear anywhere definitions can appear including the 
  top-level, body of a script, body of a library, or body of a
  function.
2007-11-12 01:27:47 -05:00
Abdulaziz Ghuloum de369b3497 * Copying an already immutable hashtable, and requesting an
immutable table returns the same table without copying.
2007-11-12 00:52:43 -05:00
Abdulaziz Ghuloum 007f05989b * Added hashtable-copy 2007-11-12 00:50:00 -05:00