[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Pika-dev] status on numbers
From: |
Matthew Dempsky |
Subject: |
[Pika-dev] status on numbers |
Date: |
Mon, 12 Jan 2004 08:53:46 +0100 |
User-agent: |
Gnus/5.1002 (Gnus v5.10.2) Emacs/21.3 (gnu/linux) |
Yesterday my network connection was out so I wasn't able to commit
anything to my archive, but this morning I finally committed patch-37
to my scm--numbers branch which fixed everything so all my new code
compiles. I haven't written any unit tests yet, but I'm fairly happy
with the state of things.
Basically here's how it goes:
* NUMERIC_BINOP and NUMERIC_MONOP still need to be fixed to not
destroy their arguments.
* scm_multiply needs a safe way to detect overflow when multiplying to
fixnums - I was lazy and just use the built-in multiplication
routine which will work as long as there isn't overflow.
* scm_quotient, scm_remainder, scm_modulo, scm_rationalize, and
scm_expt still need to be implemented.
* The transcendental functions (sin, exp, etc.) still need to be
implemented for complex numbers. (SISC's code uses hyperbolic
functions which don't exist in R5RS, but I might add them anyways
unless there are any objections.)
* I originally implemented scm_truncate using trunc() from math.h only
to find out it's only available in C99, so it's commented out at the
moment.
* (sqrt 4) => 2.0
* scm_raise_for_binop isn't implemented yet for complex types.
I'm going to try to port some unit tests and benchmarks over to C so I
can verify that I'm getting the right results from this and I probably
won't move the code into scm--integration until I'm more confident in
this work. (This is the first time it's compiled since patch-13.)
I also started hacked together a simple stop-and-copy garbage
collector, but it's not commited yet. Once I get some more free time
later today I'll try to setup another spot in my archive for it.
-jivera
- [Pika-dev] status on numbers,
Matthew Dempsky <=