Latest commits for file scheme/ikarus.numerics.ss
https://gitea.scheme.org/conservatory/ikarus/branch/master/scheme/ikarus.numerics.ss
Ikarus Scheme (Bazaar checkout)Fri, 12 Jul 2024 14:42:52 -0400fixed incorrect error message for non-real arguments to negative?,
https://gitea.scheme.org/conservatory/ikarus/commit/97dfb20a53a22df9b9a6926cb9da94307ccab63e
fixed incorrect error message for non-real arguments to negative?,
positive?, and abs.
Abdulaziz Ghuloum97dfb20a53a22df9b9a6926cb9da94307ccab63e- ratnum->flonum now handles more numbers, though it's now slower
https://gitea.scheme.org/conservatory/ikarus/commit/b324709e867585501d3a47c7520f9ca3d0c79377
- ratnum->flonum now handles more numbers, though it's now slower
and may still be incorrect in some cases.
- (- <compnum> <flonum>) was raising an incorrect error.
flonum now handles more numbers, though it's now slower
and may still be incorrect in some cases.
- (- ) was raising an incorrect error.
]]>Abdulaziz Ghuloumb324709e867585501d3a47c7520f9ca3d0c79377fixed floating point exception in (modulo <fx> 0).
https://gitea.scheme.org/conservatory/ikarus/commit/7de0f39736a68c403719cc9db0eb74c3157b3a9e
fixed floating point exception in (modulo <fx> 0).
0).
]]>Abdulaziz Ghuloum7de0f39736a68c403719cc9db0eb74c3157b3a9efixed (modulo <bignum> 0) and (modulo <bignum> <largish-fixnum>)
https://gitea.scheme.org/conservatory/ikarus/commit/1803f9f23ced095222c35245da879f327107d80c
fixed (modulo <bignum> 0) and (modulo <bignum> <largish-fixnum>)
errors that caused either a segfault or returning an incorrect
value.
0) and (modulo )
errors that caused either a segfault or returning an incorrect
value.
]]>Abdulaziz Ghuloum1803f9f23ced095222c35245da879f327107d80c- hashtable-hash-function used to return an incorrect hash function
https://gitea.scheme.org/conservatory/ikarus/commit/810fe75fa1f282838c77c247c73b2dc63724a976
- hashtable-hash-function used to return an incorrect hash function
that the one supplied to make-hashtable; fixed.
- div and mod raise an error, rather than an assertion when given
zero second argument; fixed.
Abdulaziz Ghuloum810fe75fa1f282838c77c247c73b2dc63724a976= now handles complex numbers properly.
https://gitea.scheme.org/conservatory/ikarus/commit/72b86818f0d14db718137c4ec61ed2814657259f
= now handles complex numbers properly.
Abdulaziz Ghuloum72b86818f0d14db718137c4ec61ed2814657259finexact->exact and exact now hangle compnums and cflonums properly.
https://gitea.scheme.org/conservatory/ikarus/commit/3aad0fbe0be0cb26ec1c819d358f18c4fe311080
inexact->exact and exact now hangle compnums and cflonums properly.
exact and exact now hangle compnums and cflonums properly.
]]>Abdulaziz Ghuloum3aad0fbe0be0cb26ec1c819d358f18c4fe311080fixed error in division in (/ 0 <bignum>)
https://gitea.scheme.org/conservatory/ikarus/commit/7d6316f723e76123f9cb07c8bf3ea05937dbac40
fixed error in division in (/ 0 <bignum>)
)
]]>Abdulaziz Ghuloum7d6316f723e76123f9cb07c8bf3ea05937dbac40fixed rounding error for flonums (now rounding to even as required).
https://gitea.scheme.org/conservatory/ikarus/commit/1d25a3db07ab618bad2924e3f861983b6fdc656a
fixed rounding error for flonums (now rounding to even as required).
Abdulaziz Ghuloum1d25a3db07ab618bad2924e3f861983b6fdc656afixed minor bug in "->inexact" helper.
https://gitea.scheme.org/conservatory/ikarus/commit/1ebd4f4d9a553caa8dfd559363d79b96f6a9bc86
fixed minor bug in "->inexact" helper.
inexact" helper.
]]>Abdulaziz Ghuloum1ebd4f4d9a553caa8dfd559363d79b96f6a9bc86- fixed bug in printing "-0.0i" on some archs (cygwin, solaris,
https://gitea.scheme.org/conservatory/ikarus/commit/ae9d09552770611395a55f3f75f455241d612bb7
- fixed bug in printing "-0.0i" on some archs (cygwin, solaris,
etc.)
- fixed bug reading non-ascii strings in 64-bit mode.
Abdulaziz Ghuloumae9d09552770611395a55f3f75f455241d612bb7- fixed a silly bug in (/ <bignum> x/y) which evaluated to
https://gitea.scheme.org/conservatory/ikarus/commit/7b32940d04c416404ed74e0afab571112a54a3ad
- fixed a silly bug in (/ <bignum> x/y) which evaluated to
(/ (* <bignum> x) y) instead of (/ (* <bignum> y) x).
x/y) which evaluated to
(/ (* x) y) instead of (/ (* y) x).
]]>Abdulaziz Ghuloum7b32940d04c416404ed74e0afab571112a54a3ad- removed bset/h instruction from the compiler (it was rarely used
https://gitea.scheme.org/conservatory/ikarus/commit/814c79763358e5f821bf115040af766019f0ecc4
- removed bset/h instruction from the compiler (it was rarely used
and not implemented 100% correctly)
- fixed parameterize to allow (parameterize () def ... exp exp ...)
Abdulaziz Ghuloum814c79763358e5f821bf115040af766019f0ecc4- more work on trig functions
https://gitea.scheme.org/conservatory/ikarus/commit/b9085e15da195c70c54f868343370d81b25bce8d
- more work on trig functions
- mkstx now checks that double wraps are not merged incorrectly
Abdulaziz Ghuloumb9085e15da195c70c54f868343370d81b25bce8dfixed small bug in rationalize
https://gitea.scheme.org/conservatory/ikarus/commit/476a0cb6d8bc3768806daa125958f5dfcae530fd
fixed small bug in rationalize
Abdulaziz Ghuloum476a0cb6d8bc3768806daa125958f5dfcae530fdfixed a few problems in geometric functions when they are passed
https://gitea.scheme.org/conservatory/ikarus/commit/c64fda7619802752210f5cf38ae498f7aa8ff4e3
fixed a few problems in geometric functions when they are passed
complex numbers or when they're passed real numbers but the results
are complex.
Abdulaziz Ghuloumc64fda7619802752210f5cf38ae498f7aa8ff4e3- added two argument version of log
https://gitea.scheme.org/conservatory/ikarus/commit/b7d9c0cf1ffc17103ee876f2435bdfd9fdb484f3
- added two argument version of log
- handled (/ flonum complexnum)
Abdulaziz Ghuloumb7d9c0cf1ffc17103ee876f2435bdfd9fdb484f3Added bitwise-if and bitwise-copy-bit-field (inefficiently)
https://gitea.scheme.org/conservatory/ikarus/commit/9eead5327a3d8333d9ce8a5189d5c7300ec72dbd
Added bitwise-if and bitwise-copy-bit-field (inefficiently)
Abdulaziz Ghuloum9eead5327a3d8333d9ce8a5189d5c7300ec72dbd- fixed a minor import subversion bug.
https://gitea.scheme.org/conservatory/ikarus/commit/2b4e89bcf0385495da0f4e5a9b3400265e20c4fa
- fixed a minor import subversion bug.
- added 2-argument version of fllog.
Abdulaziz Ghuloum2b4e89bcf0385495da0f4e5a9b3400265e20c4faadded fxrotate-bit-field
https://gitea.scheme.org/conservatory/ikarus/commit/d84dd990613caffd3cf87794f726c543a1aa75bd
added fxrotate-bit-field
Abdulaziz Ghuloumd84dd990613caffd3cf87794f726c543a1aa75bdfixed div0-and-mod0 bug
https://gitea.scheme.org/conservatory/ikarus/commit/282fa962a81bc28dfece2bf0688321def2b112ad
fixed div0-and-mod0 bug
Abdulaziz Ghuloum282fa962a81bc28dfece2bf0688321def2b112adfixes quasisyntax bugs, making them more conforming to the r6rs test
https://gitea.scheme.org/conservatory/ikarus/commit/4ee88498a9c546f5ac7a4ead4539ae71c2e2cf59
fixes quasisyntax bugs, making them more conforming to the r6rs test
suite.
Abdulaziz Ghuloum4ee88498a9c546f5ac7a4ead4539ae71c2e2cf59sqrt now supports negative arguments properly.
https://gitea.scheme.org/conservatory/ikarus/commit/b3d8a8f9fda07a0f06a24aca3667725dbc7c49b2
sqrt now supports negative arguments properly.
Abdulaziz Ghuloumb3d8a8f9fda07a0f06a24aca3667725dbc7c49b2fixed a bug in quotient and div when given (least-fixnum) and -1.
https://gitea.scheme.org/conservatory/ikarus/commit/3b80d4f32163b84d4635a3616a6ad06c796503b8
fixed a bug in quotient and div when given (least-fixnum) and -1.
Abdulaziz Ghuloum3b80d4f32163b84d4635a3616a6ad06c796503b8fixed make-rectangular so that (make-rectangular 1.0 0.0) returns
https://gitea.scheme.org/conservatory/ikarus/commit/4909a9ef08ae1f03cf8b84fbdce337fe4e2bad9d
fixed make-rectangular so that (make-rectangular 1.0 0.0) returns
a cflonum 1.0+0.0i while (make-rectangular 1.0 0) returns 1.0.
Abdulaziz Ghuloum4909a9ef08ae1f03cf8b84fbdce337fe4e2bad9d- bytevector-ieee-[single|double]-[ref|set!] now accept unaligned
https://gitea.scheme.org/conservatory/ikarus/commit/7db56cf76e293a5775cbd1371df0ca5c6f7a1871
- bytevector-ieee-[single|double]-[ref|set!] now accept unaligned
indices (r6rs requirement).
- file-options are now represented as enum-sets (r6rs requirement)
- odd?, even?, lcm, remainder, etc., now accept inexact integers.
Abdulaziz Ghuloum7db56cf76e293a5775cbd1371df0ca5c6f7a1871fixed some r6rs bitwise bugs.
https://gitea.scheme.org/conservatory/ikarus/commit/9085b79b643daefef361798713b0cdee81d10166
fixed some r6rs bitwise bugs.
Abdulaziz Ghuloum9085b79b643daefef361798713b0cdee81d10166all existing tests pass under 64-bit
https://gitea.scheme.org/conservatory/ikarus/commit/4f48c55bfc32e93677ae904aba910857df383d16
all existing tests pass under 64-bit
Abdulaziz Ghuloum4f48c55bfc32e93677ae904aba910857df383d16more progress on the AMD64 front, fixing more numeric and more cogen
https://gitea.scheme.org/conservatory/ikarus/commit/81a1a640df498245990c9df739afebfebe35a50d
more progress on the AMD64 front, fixing more numeric and more cogen
64-bit bugs.
Abdulaziz Ghuloum81a1a640df498245990c9df739afebfebe35a50dMajor work towards the AMD64 port. Most important of which is that
https://gitea.scheme.org/conservatory/ikarus/commit/01c4afa320793a020ee66c48d6d1fc12b994953d
Major work towards the AMD64 port. Most important of which is that
continuations work, more assembly instructions are testing in 64-bit
mode, and some arithmetic operations (shift-right, etc.) have been
fixed by removing some 32-bit dependencies.
Abdulaziz Ghuloum01c4afa320793a020ee66c48d6d1fc12b994953dAdded make-polar.
https://gitea.scheme.org/conservatory/ikarus/commit/0ef81aa13e12365bf8a877298f7a0b874fea2794
Added make-polar.
Abdulaziz Ghuloum0ef81aa13e12365bf8a877298f7a0b874fea2794Fixed some problems parsing complex numbers.
https://gitea.scheme.org/conservatory/ikarus/commit/195dc0ea4585f0ce7b2d5a4965c8670a5f287a91
Fixed some problems parsing complex numbers.
Abdulaziz Ghuloum195dc0ea4585f0ce7b2d5a4965c8670a5f287a91Added "angle".
https://gitea.scheme.org/conservatory/ikarus/commit/2a49d5c538accbb3f823943ebbb43a305e050c92
Added "angle".
Abdulaziz Ghuloum2a49d5c538accbb3f823943ebbb43a305e050c92fixed rounding for rationals.
https://gitea.scheme.org/conservatory/ikarus/commit/badf83557fa149ec52252b697890a801d5062d65
fixed rounding for rationals.
Abdulaziz Ghuloumbadf83557fa149ec52252b697890a801d5062d65Fixed a bug when doing (/ 1 1 1 ...).
https://gitea.scheme.org/conservatory/ikarus/commit/66464cc348ed3a9fdb8fad4b8706b6e1da88b2c0
Fixed a bug when doing (/ 1 1 1 ...).
Abdulaziz Ghuloum66464cc348ed3a9fdb8fad4b8706b6e1da88b2c0- Added cp0! including:
https://gitea.scheme.org/conservatory/ikarus/commit/45346ef865742058f5af06e811f6263fe7211056
- Added cp0! including:
- (optimize-level [0,1,2]) and ikarus -O[0,1,2]
where -O0 = no optimizations
-O1 = using old optimizer
-O2 = using the new cp0 optimizer
defaults to -O1 for now.
- (cp0-size-limit n) which is the limit of the residual size for
each inlining attempt
- (cp0-effort-limit n) which is the limit on the effort expended
for each inlining attempt
- Rewrote the syntax-match macro to make use of the same technology
used in syntax-case itself resulting in reduced code size.
- Added (system-value <symbol>) which returns the system value.
E.g., (system-value 'car) => #<procedure car>
This is pretty much the same as
(eval <symbol> (environment '(ikarus)))
except that it does not involve compiling the expression or
consulting the library/expander systems.
- Fixed the fasl loader to make it understand complex numbers.
) which returns the system value.
E.g., (system-value 'car) => #
This is pretty much the same as
(eval (environment '(ikarus)))
except that it does not involve compiling the expression or
consulting the library/expander systems.
- Fixed the fasl loader to make it understand complex numbers.
]]>Abdulaziz Ghuloum45346ef865742058f5af06e811f6263fe7211056- fixed minor bug in current-directory
https://gitea.scheme.org/conservatory/ikarus/commit/a492d318e1950b0547dcf1ea56c2a0f1232a0516
- fixed minor bug in current-directory
- changed implementation of string->number.
number.
]]>Abdulaziz Ghulouma492d318e1950b0547dcf1ea56c2a0f1232a0516- exp now understands complex numbers.
https://gitea.scheme.org/conservatory/ikarus/commit/6437aa98e01774acc5adbfb0f2dd317d50a498b0
- exp now understands complex numbers.
- expt of complex exponent is implemented in terms of exp.
Abdulaziz Ghuloum6437aa98e01774acc5adbfb0f2dd317d50a498b0sqrt, log, and expt now understand complex numbers.
https://gitea.scheme.org/conservatory/ikarus/commit/fec5dcd419eac2bdc59ceda53714b8575436b148
sqrt, log, and expt now understand complex numbers.
Abdulaziz Ghuloumfec5dcd419eac2bdc59ceda53714b8575436b148+, -, *, and / now handle inexact complex numbers.
https://gitea.scheme.org/conservatory/ikarus/commit/467095677e3ffaff6d0564a2353d24f948fcbb11
+, -, *, and / now handle inexact complex numbers.
Abdulaziz Ghuloum467095677e3ffaff6d0564a2353d24f948fcbb11Added inexact complex numbers.
https://gitea.scheme.org/conservatory/ikarus/commit/ab2e05e8b01daaeae834dcffdf3430c87dadeab7
Added inexact complex numbers.
Abdulaziz Ghuloumab2e05e8b01daaeae834dcffdf3430c87dadeab7ikarus.reader is now loadable separately.
https://gitea.scheme.org/conservatory/ikarus/commit/0a6df79e3b93ad112e93cf87f75e9033648973a3
ikarus.reader is now loadable separately.
Abdulaziz Ghuloum0a6df79e3b93ad112e93cf87f75e9033648973a3= now handles complex numbers.
https://gitea.scheme.org/conservatory/ikarus/commit/ebcc042ea1eb1d6b40e416cd3c309bd1f118d7fa
= now handles complex numbers.
Abdulaziz Ghuloumebcc042ea1eb1d6b40e416cd3c309bd1f118d7fa+, -, *, / now handle complex numbers.
https://gitea.scheme.org/conservatory/ikarus/commit/4cb81651814763113ddb6f100dd951a451db3906
+, -, *, / now handle complex numbers.
Abdulaziz Ghuloum4cb81651814763113ddb6f100dd951a451db3906- Added complex numbers representation (exact complex only).
https://gitea.scheme.org/conservatory/ikarus/commit/82140f87ba616b83dae7500e2b03120fd4d904d5
- Added complex numbers representation (exact complex only).
- Added make-rectangular.
- Added the ability to display complex numbers.
Abdulaziz Ghuloum82140f87ba616b83dae7500e2b03120fd4d904d5Added bitwise-xor.
https://gitea.scheme.org/conservatory/ikarus/commit/da7cedfe642a9b726d256778cbbb81ec3457fdcf
Added bitwise-xor.
Abdulaziz Ghuloumda7cedfe642a9b726d256778cbbb81ec3457fdcfadded bitwise-ior.
https://gitea.scheme.org/conservatory/ikarus/commit/de4276124b0d50d1c56d1b85c4416e71d817c756
added bitwise-ior.
Abdulaziz Ghuloumde4276124b0d50d1c56d1b85c4416e71d817c756Fixed names of procedures <, <=, =, >, >=. They used to be
https://gitea.scheme.org/conservatory/ikarus/commit/478719cf3291cd767fbc796101ab3810e3657f4e
Fixed names of procedures <, <=, =, >, >=. They used to be
printed as #<procedure f>.
, >=. They used to be
printed as #.
]]>Abdulaziz Ghuloum478719cf3291cd767fbc796101ab3810e3657f4eFixed bug in (mod 3 5/6).
https://gitea.scheme.org/conservatory/ikarus/commit/48a86cbaa3fb92a5bba34af1a85295270ce65928
Fixed bug in (mod 3 5/6).
Abdulaziz Ghuloum48a86cbaa3fb92a5bba34af1a85295270ce65928sin, cos, tan, asin, acos, and atan now support rational numbers.
https://gitea.scheme.org/conservatory/ikarus/commit/8f0b60660915b62af8c7bdf98ee50c90403317d4
sin, cos, tan, asin, acos, and atan now support rational numbers.
Abdulaziz Ghuloum8f0b60660915b62af8c7bdf98ee50c90403317d4