Commit Graph

47 Commits

Author SHA1 Message Date
Abdulaziz Ghuloum eb30e7ab58 * Eliminates a jump-to-jump case in "flatten-code". 2007-11-21 05:31:01 -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 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 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 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 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 25aa8d7072 Fixes bug 162741: hygiene breaks exported macros that introduce define-record-type 2007-11-14 17:24:29 -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 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 c26ef04965 * multiple imports of the same binding into the same context now work. 2007-11-12 05:01:25 -05:00
Abdulaziz Ghuloum b7cd4df31a * Added ~b, ~x, ~d, and ~o to format/printf/fprintf. 2007-11-12 00:20:02 -05:00
Abdulaziz Ghuloum 5d0f86377e * Fixes bug 161923: Segfault on float ops
(I was trying to be too clever with optimizing the checks.)
2007-11-11 00:09:00 -05:00
Abdulaziz Ghuloum 6938657fad * Fixed bug 161749: (define-syntax (foo x) 12) does not work 2007-11-10 06:28:29 -05:00
Abdulaziz Ghuloum 2a8cc2a7b4 * Added bytevector-ieee-single-ref and bytevector-ieee-single-set! 2007-11-08 22:56:14 -05:00
Abdulaziz Ghuloum 5ce6ca4efb * Added bytevector-ieee-single-native-ref and bytevector-ieee-single-native-set! 2007-11-08 22:22:24 -05:00
Abdulaziz Ghuloum 6e6c9c9c1b * Added bitwise-and 2007-11-08 19:18:37 -05:00
Abdulaziz Ghuloum 97d9c4ca42 * improved performance for fl+, fl-, fl*, fl/, fl=?, fl<?, fl<=?, fl>? and fl>=?
- results in 
    45% reduction in runtime for fpsum
    43% reduction in runtime for fibfp
    29% reduction in runtime for pnpoly
    28% reduction in runtime for mbrot
  - and
    23% increase in compile time for nucleic
    11% increase in compile time for ray
    10% increase in compile time for fft
2007-11-08 12:07:48 -05:00
Abdulaziz Ghuloum e75bd7e33c * Added get-line. (answers to bug 160663) 2007-11-07 11:00:39 -05:00
Abdulaziz Ghuloum 1b103a4ab8 * bytevector-ieee-double-ref/set! now work 2007-11-07 04:54:54 -05:00
Abdulaziz Ghuloum 7dbce6e888 * Added bytevector-ieee-double-ref and bytevector-ieee-double-set!
(which does not yet support big endianness)
2007-11-07 01:26:38 -05:00
Abdulaziz Ghuloum bcd96a8dd4 * Added bytevector-ieee-double-native-ref/set! 2007-11-06 21:08:52 -05:00
Abdulaziz Ghuloum 327e6e9371 * Fixed bug 160483: described as "incorrect number of arguments" reported as "not a function"
- The real reason was in the register allocator, where one live
    variable (the memmory size of the bytevector) was not marked live 
    across the call to do-overflow.  When the overflow returned, the 
    value of that variable (which was in the %ebx register) was
    trashed, leading to an incorrect bump in the allocation pointer.
  - Note to self, never blame anything on cache coherency again!
2007-11-06 17:04:27 -05:00
Abdulaziz Ghuloum 37da0d75d4 * Fixes bug 159403: scripts choke when a definition follows an expression 2007-11-01 20:00:02 -04:00
Abdulaziz Ghuloum 431f768ab5 * configure.ac now contains a case for adding -Wl,-E to LDFLAGS
on *bsd* systems.
* ikarus.writer prints symbols that start with a digit properly.
2007-11-01 00:46:04 -04:00
Abdulaziz Ghuloum b8434045f7 * pretty-width is now exported.
* generate-temporaries uses the names of identifiers to construct
  new names.
2007-10-31 04:34:14 -04:00
Abdulaziz Ghuloum 8b6f52f72e * Fixed a bug in #{gensym} read syntax. 2007-10-30 17:45:08 -04:00
Abdulaziz Ghuloum b79c21132b * Fixed bug in record constructor when proto is unspecified. 2007-10-29 16:18:11 -04:00
Abdulaziz Ghuloum 79a38bc54b * fixed implementation of guard-macro in psyntax.expander. 2007-10-27 11:15:10 -04:00
Abdulaziz Ghuloum b7d871af9e * Added (rnrs enums). 2007-10-27 10:38:54 -04:00
Abdulaziz Ghuloum 1d482d9c9e * Added assertion-violation. 2007-10-26 15:27:42 -04:00
Abdulaziz Ghuloum 4522d66cfc * Version and sub-version specs are now honored in library import forms. 2007-10-26 12:41:55 -04:00
Abdulaziz Ghuloum 75a95bc189 * standard libraries now have version (6).
* #<library> now prints versions in proper form.
2007-10-26 01:22:11 -04:00
Abdulaziz Ghuloum 959b682588 * libraries now can have a version as part of their names
* import forms still don't understand version names.
2007-10-26 00:55:00 -04:00
Abdulaziz Ghuloum b640d98cbc * removed formatted errors from all source codes. 2007-10-25 14:32:26 -04:00
Abdulaziz Ghuloum 4141d699c5 * Fixed a bug that caused record-predicates to segfault.
* Added condition printers.
2007-10-25 02:19:53 -04:00
Abdulaziz Ghuloum dab2b74189 * Added print-condition procedure which now prints an ugly message. 2007-10-24 00:24:38 -04:00
Abdulaziz Ghuloum 6853d2f750 * error now calls raise after constructing a proper condition object.
* old "error-handler" parameter is gone.
* new-cafe now uses with-exception-handler to trap errors.
2007-10-23 23:55:57 -04:00
Abdulaziz Ghuloum 5678066f0d * Added with-exception-handler, raise, and raise-continuable. 2007-10-23 23:34:11 -04:00
Abdulaziz Ghuloum 239141717f * Added define-condition-type macro. 2007-10-23 17:53:43 -04:00
Abdulaziz Ghuloum 2684b53323 * added no-nans and no-infinities condition types. 2007-10-23 17:40:04 -04:00
Abdulaziz Ghuloum da29123fc0 * standard condition types are not exported. 2007-10-23 17:24:55 -04:00
Abdulaziz Ghuloum 56d279297b * fixed bugs in define-record-type (constructor name was ignored)
* fixed bugs in record-constructor (incorrect constructor was
  returned when when no protocol is supplied) 
* added r6rs condition types (constructors and standard conditions).
2007-10-23 16:38:34 -04:00
Abdulaziz Ghuloum 658e441d6c * Fixed implementation of record-constructor in (rnrs records procedural) 2007-10-23 00:28:21 -04:00
Abdulaziz Ghuloum e010d03523 renamed:
scheme/ikarus.boot => scheme/ikarus.boot.orig
modified:
  configure
  configure.ac
  scheme/Makefile.am
2007-10-18 00:45:46 -04:00