Commit Graph

1424 Commits

Author SHA1 Message Date
Abdulaziz Ghuloum 42daf68195 Added string-ci-hash and symbol-hash.
Slight change to ikrt_string_hash.
2007-11-22 17:04:10 -05:00
Abdulaziz Ghuloum c25e04569c Added string-hash. 2007-11-22 16:55:25 -05:00
Abdulaziz Ghuloum 0de54fc0c6 Added get-bytevector-n! 2007-11-22 16:32:01 -05:00
Abdulaziz Ghuloum 5bac0ad766 Added get-string-n! 2007-11-22 16:27:55 -05:00
Abdulaziz Ghuloum e4910e9b61 Added get-bytevector-n 2007-11-22 16:03:44 -05:00
Abdulaziz Ghuloum bfccea7718 Added get-string-n 2007-11-22 15:54:10 -05:00
Abdulaziz Ghuloum cbd4299fec Added put-bytevector 2007-11-22 15:39:33 -05:00
Abdulaziz Ghuloum a97d20ed50 Added put-string. 2007-11-22 15:16:38 -05:00
Abdulaziz Ghuloum d227b28a58 * Added put-datum. 2007-11-22 14:48:29 -05:00
Abdulaziz Ghuloum 63f656896f Added get-datum. 2007-11-22 14:43:39 -05:00
Abdulaziz Ghuloum 043425eb20 Added get-u8. 2007-11-22 14:26:54 -05:00
Abdulaziz Ghuloum 2eca32fc8e Fixes bug 163722: missing open-string-output-port and open-string-input-port 2007-11-21 16:55:56 -05:00
Abdulaziz Ghuloum d314bacc24 Fixes bug 164362: make clean deletes scheme/last-revision 2007-11-21 16:45:27 -05:00
Abdulaziz Ghuloum 91c365d9a6 records/structs are an iota faster to collect. 2007-11-21 16:39:16 -05:00
Abdulaziz Ghuloum eb30e7ab58 * Eliminates a jump-to-jump case in "flatten-code". 2007-11-21 05:31:01 -05:00
Abdulaziz Ghuloum 37aab027da Added an optimization that removes self-references from fix-bound
closures.
2007-11-21 04:00:10 -05:00
Abdulaziz Ghuloum d6a1a177a9 Fixes bug 163982: Extra "" irritant in expander error 2007-11-21 02:23:29 -05:00
Abdulaziz Ghuloum b71de5dab4 * Fixes bug 163980: Error message contains "fmls"
Slightly better error message for malformed formal parameters
  (duplicate and non-identifiers are signaled properly).
2007-11-21 02:10:42 -05:00
Abdulaziz Ghuloum 978093bcc2 * Fixed bug 164173: Added more descriptive errors to incorrect args
to record constructors.
2007-11-21 01:39:31 -05:00
Abdulaziz Ghuloum 888251df70 Small improvement on the situation in bug 163984: Wrong name on
define-record-type proceedures.

Record constructors are now called "a-record-constructor"
Record predicates are called "a-record-predicate"
Record accessors are called "a-record-accessor"
Record mutators are called "a-record-mutator"
2007-11-21 01:24:13 -05:00
Abdulaziz Ghuloum 0644542565 Added a last-revision file and modified scheme/Makefile.am
accordingly.
2007-11-21 00:59:05 -05:00
Abdulaziz Ghuloum 6e170030d8 small additions to the user's guide. 2007-11-19 23:19:42 -05:00
Abdulaziz Ghuloum f11a28a9f7 * Added a dedications file. 2007-11-19 19:04:10 -05:00
Abdulaziz Ghuloum 23da3e9db9 Added ACKNOWLEDGMENTS. 2007-11-19 18:35:49 -05:00
Abdulaziz Ghuloum c6b66f8661 Added a system library (ikarus system interrupts) that exports:
make-interrupted-condition and interrupted-condition?
2007-11-19 16:50:31 -05:00
Abdulaziz Ghuloum be8123f8b6 * Sligh fix to dependencies in scheme/Makefile.am 2007-11-19 16:16:11 -05:00
Abdulaziz Ghuloum 728daddfc0 Fixes bug 163690: ikarus should display version number instead of
build date in the banner.

The version in bzr now displays:

Ikarus Scheme version 0.0.1+ (revision 1090, build 2007-11-19)
Copyright (c) 2006-2007 Abdulaziz Ghuloum

The shipped versions should display 

Ikarus Scheme version 0.0.2
Copyright (c) 2006-2007 Abdulaziz Ghuloum
2007-11-19 15:37:42 -05:00
Abdulaziz Ghuloum 9349c3a5cb Fixes bug 163681: Ikarus should have an IKARUS_LIBRARY_PATH 2007-11-19 13:34:24 -05:00
Abdulaziz Ghuloum 25555d7ff6 Added getenv, which takes a string and returns a string from the "unix"
environment.  
Example:
  (getenv "HOME") => "/Users/aghuloum"
  (getenv "FOO")  => ""
2007-11-19 12:57:50 -05:00
Abdulaziz Ghuloum f417c7505b * Unfixes bug 161749: (define-syntax (foo x) 12) does not work 2007-11-19 04:18:35 -05:00
Abdulaziz Ghuloum 79d529b224 Much improved error reporting when a library is not found.
Example:

> (import (a b c))
Unhandled exception
 Condition components:
   1. &error
   2. &who: expander
   3. &message: "cannot locate library in library-path"
   4. &library-resolution:
       library: (a b c)
       files: ("./a/b/c.ss" "/Users/ikarus/.opt/lib/ikarus/a/b/c.ss")
2007-11-19 02:46:45 -05:00
Abdulaziz Ghuloum ed3641448d Fixed bug 163723: open-input-string misclassified
* include, make-list, last-pair, quotient+remainder were also
  misclassified
2007-11-19 02:08:32 -05:00
Abdulaziz Ghuloum 8dffa9cf23 Fixed bug 163714: read/write invariance problem with symbols 2007-11-19 02:00:26 -05:00
Abdulaziz Ghuloum 9ff795e02f |symbol| syntax now signals an error in #!r6rs mode. 2007-11-19 01:47:46 -05:00
Abdulaziz Ghuloum a7680d723d Extra libraries found in $pkglibdir can now be imported directly.
For example, (import (streams)) just works!
2007-11-18 22:46:00 -05:00
Abdulaziz Ghuloum 61fe1ce007 Added an extras directory containing SRFI-41:streams implementation. 2007-11-18 20:58:25 -05:00
Abdulaziz Ghuloum 1bd2935e2b Fixes bug 163690: ikarus should display version number instead of
build date in the banner.
2007-11-18 20:22:11 -05:00
Abdulaziz Ghuloum 7282bd1c48 Fixes bug 163589: ikarus does not support the #!r6rs comment.
* Added #!r6rs and #!ikarus tokens to the reader
* #!r6rs disables the #:foo and #{foo bar} gensym syntaxes and it
  also disables the #n= and #n# graphs marks syntax.
* #!ikarus enables both options.
* every opened port starts in the ikarus-mode by default.
2007-11-18 19:53:32 -05:00
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