Commit Graph

839 Commits

Author SHA1 Message Date
Abdulaziz Ghuloum e6f678bb52 * Added bytevector-u32-native-ref, bytevector-u32-native-set!,
bytevector-s32-native-ref, and bytevector-s32-native-set!
2007-09-13 01:57:36 -04:00
Abdulaziz Ghuloum d6ed7b8a4d * Added bytevector-u32-ref, bytevector-u32-set!, bytevector-s32-ref,
and bytevector-s32-set!.
2007-09-13 01:44:10 -04:00
Abdulaziz Ghuloum 2f75448f03 * Added bitwise-arithmetic-shift, bitwise-arithmetic-shift-left,
and bitwise-arithmetic-shift-right,
2007-09-13 01:10:57 -04:00
Abdulaziz Ghuloum 3247c0641d * sll now supports shifting fixnums by any amount. 2007-09-13 00:08:41 -04:00
Abdulaziz Ghuloum 52a36d4c3f * Added sra, fixing the bignum shift bugs. 2007-09-12 23:34:21 -04:00
Abdulaziz Ghuloum ef1a828f1f * Fixed a bug in that caused exact->inexact to return nans when
given big ratnums.  E.g.
    (exact->inexact (/ (expt 2 3000) (- (expt 2 3000) 1)))
  now returns 1.0 instead of +nan.0
2007-09-12 19:08:45 -04:00
Abdulaziz Ghuloum 9d32ae5767 * ikarus-fasl.c can now read bignums. 2007-09-12 16:59:21 -04:00
Abdulaziz Ghuloum 888833f686 * Added flexpt 2007-09-12 03:56:08 -04:00
Abdulaziz Ghuloum 69d692417f * Added real-valued?, integer-valued? and rational-valued? 2007-09-12 03:10:54 -04:00
Abdulaziz Ghuloum c55cad8502 * Added finite?, infinite?, and nan? 2007-09-12 02:44:19 -04:00
Abdulaziz Ghuloum ed45b486a3 * Added div, mod, div-and-mod, div0, mod0, div0-and-mod0. 2007-09-12 02:37:03 -04:00
Abdulaziz Ghuloum 9d8ceef99f * Added rationalize 2007-09-12 00:57:04 -04:00
Abdulaziz Ghuloum 2eaaa77615 * Added the procedure expand:
(expand <expr> <environment>)
  expands the expression in environment and returns two values:
    an expanded core expression and a list of libraries that must be
    invoked before the core expression is evaluated.
2007-09-11 13:32:14 -04:00
Abdulaziz Ghuloum ca2be2436a * string->number now understands +nan.0, -nan.0, +inf.0 and -inf.0. 2007-09-11 03:13:28 -04:00
Abdulaziz Ghuloum 277710d6d1 * Added reader syntax for +nan.0 -nan.0 +inf.0 and -inf.0 2007-09-11 03:06:35 -04:00
Abdulaziz Ghuloum bf28274d44 * fixed a bug in fldenominator
* added a file rationalize.ss that has the seed for the rationalize
  function
2007-09-11 02:06:26 -04:00
Abdulaziz Ghuloum e8f05ac4b7 * Added truncate and fltruncate 2007-09-11 00:22:23 -04:00
Abdulaziz Ghuloum 79b6e46cab * Added bytevector clause for equal?
* exported real? (number? really until complex nums are added).
2007-09-11 00:13:10 -04:00
Abdulaziz Ghuloum 3ecf53f9fd * Added flexp 2007-09-10 23:36:36 -04:00
Abdulaziz Ghuloum ad3f96d2ad * Added flnumerator and fldenominator 2007-09-10 23:30:17 -04:00
Abdulaziz Ghuloum 1c86a105c5 * Added flceiling, flfloor, and fixed rounding bug in flround and
round
2007-09-10 23:17:06 -04:00
Abdulaziz Ghuloum cb94cf88b2 * Added fleven? and flodd? 2007-09-10 22:45:41 -04:00
Abdulaziz Ghuloum fa63e8723c * Added flfinite?, flinfinite?, and flnan?
* Fixed a bug that caused all nans to print as -nan.0
2007-09-10 22:10:19 -04:00
Abdulaziz Ghuloum a366a5f20f * Added flinteger? and fixed a bug in integer? when the argument is
1.0.
2007-09-10 20:47:17 -04:00
Abdulaziz Ghuloum eeac68352a * Added partition 2007-09-10 17:28:06 -04:00
Abdulaziz Ghuloum dd968d389d * Added find. 2007-09-10 17:09:19 -04:00
Abdulaziz Ghuloum 66541809e1 * Added filter. 2007-09-10 17:03:40 -04:00
Abdulaziz Ghuloum 4b83f21480 * Added remq, remp, remv, and remove 2007-09-10 16:33:05 -04:00
Abdulaziz Ghuloum fc67c0e155 * Added remp and assp 2007-09-10 15:56:15 -04:00
Abdulaziz Ghuloum 009a25ad30 * Added endianness and native-endianness 2007-09-10 15:15:20 -04:00
Abdulaziz Ghuloum 64b06d698b * Added bytevector-s16-native-set! and bytevector-s16-set!. 2007-09-10 14:58:37 -04:00
Abdulaziz Ghuloum 9d478bc6b4 * Added bytevector-u16-native-set! and bytevector-u16-set! 2007-09-10 14:47:29 -04:00
Abdulaziz Ghuloum e273953b39 * Added bytevector-s16-ref and bytevector-s16-native-ref. 2007-09-10 14:24:35 -04:00
Abdulaziz Ghuloum 3e4c7150f6 * Added bytevector-u16-native-ref and bytevector-u16-ref 2007-09-10 14:10:37 -04:00
Abdulaziz Ghuloum 18b4a78045 * Added vector-sort! 2007-09-09 23:58:00 -04:00
Abdulaziz Ghuloum 375b738ccb * Added vararg case for for-each. 2007-09-09 23:50:55 -04:00
Abdulaziz Ghuloum 2692897900 * list* is gone. All references renamed to cons*. 2007-09-09 23:41:12 -04:00
Abdulaziz Ghuloum 7b66d9af6b * Added cons* 2007-09-09 23:31:19 -04:00
Abdulaziz Ghuloum a99c8d5461 * reimplemented (quasisyntax body) by expanding it to
(syntax-case (list expr* ...) ()
      [(var? ...) #'body])
  where expr* are the unquoted expressions and var? are the
  generated names that are simultaneously inserted in body.
2007-09-09 23:08:26 -04:00
Abdulaziz Ghuloum 8aecc96b76 * readded src/ikarus.hash-tables.ss 2007-09-09 21:16:07 -04:00
Abdulaziz Ghuloum 1cd2b8acfc * Handling weak-pairs is now generational, fixing performance
problems when guardians were used to implement hash tables.
2007-09-06 22:45:20 -04:00
Abdulaziz Ghuloum 123e2f9e10 * pretty-print now properly detects and prints cyclic and shared
data structures
2007-09-05 20:18:45 -04:00
Abdulaziz Ghuloum d1db554eee * removed some junk that was not used (string handling stuff) from
pretty-print
2007-09-05 02:41:12 -04:00
Abdulaziz Ghuloum 8f9aa2cd18 * Interrupts now work, again 2007-09-05 01:47:57 -04:00
Abdulaziz Ghuloum 1a8af2acea * string<?, string<=?, string>?, and string>=? now have proper
annotations
2007-09-04 21:01:30 -04:00
Abdulaziz Ghuloum 62e1527d1d * Globally visible procedures now have attached names:
Ikarus Scheme (Build 2007-09-04)
Copyright (c) 2006-2007 Abdulaziz Ghuloum

> car
#<procedure car>
> (car 1 2)
Error in apply: incorrect number of argument (2) to #<procedure car>.
> ^D
2007-09-04 20:38:16 -04:00
Abdulaziz Ghuloum b3f80f0dc9 * exported identifiers bound to procedures get their procedure
annotation set to the name of the exported variable
2007-09-04 20:33:21 -04:00
Abdulaziz Ghuloum 2c2b3eb1f1 * Added procedure-annotation primitive that returns the annotation
object stored in the closure's code.
2007-09-04 20:18:11 -04:00
Abdulaziz Ghuloum ad118623ec * Added $code-annotation and $set-code-annotation! primops 2007-09-04 19:59:14 -04:00
Abdulaziz Ghuloum 50dcf3a11f * disp-code-data changed from 16 to 24 in order to allow for future
code annotations.
2007-09-04 19:16:43 -04:00
Abdulaziz Ghuloum a291ed8ffb * Added list-sort and vector-sort. 2007-09-04 12:56:40 -04:00
Abdulaziz Ghuloum cb40f0ae3c * disp-bytevector-data changed to 8. 2007-09-04 01:40:31 -04:00
Abdulaziz Ghuloum b5d3ceebe4 * Added char-general-category and a category lookup table. 2007-09-03 04:42:46 -04:00
Abdulaziz Ghuloum ad1c469ffb Added inexact? 2007-09-03 00:34:53 -04:00
Abdulaziz Ghuloum 0bbbcf9604 * Added missing string<?, string<=?, string>?, and string>=?
* Added string-ci=?, string-ci<?, string-ci<=?, string-ci>?, and
  string-ci>=?
2007-09-03 00:17:15 -04:00
Abdulaziz Ghuloum aa9f5e3ad1 * reader now accepts string escape sequences like "\xDF;". 2007-09-02 22:37:24 -04:00
Abdulaziz Ghuloum 89786ff4d0 * Added flsin, flcos, fltan, flasin, flacos, flatan procedures. 2007-09-02 21:16:54 -04:00
Abdulaziz Ghuloum 6ff9e3dc9c Added fixnum->flonum 2007-09-02 21:02:06 -04:00
Abdulaziz Ghuloum 46193467c5 Added asin, acos, and tan 2007-09-02 20:57:02 -04:00
Abdulaziz Ghuloum 38a60b4d84 Added various geom functions to runtime including asin, acos, tan 2007-09-02 20:53:28 -04:00
Abdulaziz Ghuloum d785d40935 Added (assert expr) macro 2007-09-02 20:48:59 -04:00
Abdulaziz Ghuloum 592b62cfe7 * Added (null-environment 5) procedure. 2007-09-02 03:09:29 -04:00
Abdulaziz Ghuloum 21cdfd412b * (ikarus null-environment-5) is populated with the r5rs syntactic
forms.
2007-09-02 03:02:53 -04:00
Abdulaziz Ghuloum f351cc9a5b * Added (ikarus null-environment-5) library. 2007-09-02 02:57:56 -04:00
Abdulaziz Ghuloum a471e1a150 * Added delay and force. 2007-09-02 02:47:50 -04:00
Abdulaziz Ghuloum 9e066f4d4c * Added vector-fill! and string-fill!
* Fixed a bug in (string 10) returning an uninitialized string.
2007-09-02 02:22:23 -04:00
Abdulaziz Ghuloum d515520bd7 * Added make-variable-transformer procedure. 2007-09-02 02:03:29 -04:00
Abdulaziz Ghuloum 7a3a984653 * Added quasisyntax (code mostly a copy of quasiquote).
* Fixed a bug in syntax-dispatch that caused datums from the input
  to be converted, incorrectly, to wrapped syntax objects.
2007-09-02 01:16:14 -04:00
Abdulaziz Ghuloum 94df957775 added:
src/ikarus.hash-tables.guardians.ss
  src/ikarus.hash-tables.rehashing.ss
2007-09-01 23:07:39 -04:00
Abdulaziz Ghuloum 4b7f3a0258 collect-key now returns a gensym 2007-09-01 16:09:56 -04:00
Abdulaziz Ghuloum 77b3fd5225 * (time <>) now reports user and sys times as well. 2007-09-01 01:25:39 -04:00
Abdulaziz Ghuloum e5f7329d4d * changed implementation of guardians in ikarus.guardians.ss 2007-09-01 01:12:42 -04:00
Abdulaziz Ghuloum 5667428e70 * reimplemented guardians (which now, incidentally, work). 2007-08-31 23:28:19 -04:00
Abdulaziz Ghuloum 22f3ce4f79 * Added a (collect-key) procedure that returns a string "k" that's
eq? to the value returned by (collect-key) until a garbage
  collection is performed.
2007-08-30 22:09:13 -04:00
Abdulaziz Ghuloum 6d1578eef5 * Added $collect-key primitive that gets/sets the collect-key field
of pcb.
2007-08-30 22:02:25 -04:00
Abdulaziz Ghuloum a09da8f581 * Added (random fx) procedure. 2007-08-30 21:50:58 -04:00
Abdulaziz Ghuloum eabfc3fe4f * Added macro writer for #` #, and #,@ forms. 2007-08-30 20:30:21 -04:00
Abdulaziz Ghuloum 1864ca830b * Added quasisyntax, unsyntax, unsyntax-splicing reader macros. 2007-08-30 20:17:23 -04:00
Abdulaziz Ghuloum 3820bffee3 Added unquote, unquote-splicing, unsyntax, unsyntax-splicing 2007-08-30 20:12:38 -04:00
Abdulaziz Ghuloum a324572bc0 Added (r6rs eval) library 2007-08-30 19:40:01 -04:00
Abdulaziz Ghuloum d2419aca42 Better status report for time-it 2007-08-30 17:25:29 -04:00
Abdulaziz Ghuloum 2371c5a776 time now shows gc portion 2007-08-30 13:16:06 -04:00
Abdulaziz Ghuloum f030e4e11d * Stats record now contains gc-info fields. 2007-08-30 12:54:21 -04:00
Abdulaziz Ghuloum 46755415b4 Added large object support for collecting large vectors 2007-08-30 12:01:54 -04:00
Abdulaziz Ghuloum 28b143036f Added time macro 2007-08-30 11:06:21 -04:00
Abdulaziz Ghuloum 2d9f5377ae * Some fixes to the runtime system.
modified:
  bin/ikarus
  bin/ikarus-fasl.c
  bin/ikarus-main.c
  bin/ikarus-runtime.c
  src/ikarus.boot
2007-08-29 01:45:10 -04:00
Abdulaziz Ghuloum a13ad99195 * Better error message for applying unbound vars. 2007-08-29 00:51:24 -04:00
Abdulaziz Ghuloum a20884c16b * applying unbound ids no longer segfaults 2007-08-29 00:38:24 -04:00
Abdulaziz Ghuloum 84d188451c * Applying non-procedure library variables no longer segfaults. 2007-08-29 00:21:29 -04:00
Abdulaziz Ghuloum 1ca0e11fb3 Added $set-symbol-proc! 2007-08-28 23:49:50 -04:00
Abdulaziz Ghuloum f83af98967 added:
src/ikarus.unicode-data.ss
2007-08-28 21:36:34 -04:00
Abdulaziz Ghuloum d68e4283b9 * Added symlinks.
added:
  src/ikarus/
  src/ikarus/code-objects.ss@
  src/ikarus/compiler.ss@
  src/ikarus/fasl/
  src/ikarus/fasl/write.ss@
  src/ikarus/intel-assembler.ss@
2007-08-28 21:27:37 -04:00
Abdulaziz Ghuloum e1e2673ad7 * fixed a bug in the code generator for assigning the dirty vector
when the address of the pointer is "negative".
2007-08-28 19:47:14 -04:00
Abdulaziz Ghuloum efb59a4f46 Added exact, inexact 2007-08-28 18:15:27 -04:00
Abdulaziz Ghuloum bbe077cd5f * Added floor
* exported negative?
2007-08-28 17:45:54 -04:00
Abdulaziz Ghuloum d1221276b9 Added vector-for-each 2007-08-28 17:24:53 -04:00
Abdulaziz Ghuloum 5321868952 Added vector-map 2007-08-28 15:37:51 -04:00
Abdulaziz Ghuloum e2ca2dffb2 Added boolean=? and symbol=? 2007-08-28 15:03:21 -04:00
Abdulaziz Ghuloum 2b6a3ef715 Added string-copy 2007-08-28 12:46:12 -04:00
Abdulaziz Ghuloum 86a28c3822 Added =>, else, and _ aux macros 2007-08-28 12:39:54 -04:00
Abdulaziz Ghuloum 905b6c96c6 Added ... auxilary kwd 2007-08-28 11:34:13 -04:00
Abdulaziz Ghuloum 8e4adec147 renamed:
src/r6rs-todo.ss => src/todo-r6rs.ss
2007-08-28 11:11:12 -04:00
Abdulaziz Ghuloum d0eef4c3c4 * Added command-line 2007-08-26 21:24:22 -04:00
Abdulaziz Ghuloum 7bb5eab307 * Added delete-file. 2007-08-26 20:04:00 -04:00
Abdulaziz Ghuloum 1135803c81 * Categorised what needs to be done in r6rs-todo.ss 2007-08-26 18:51:16 -04:00
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