[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Chicken-users] atlas-lapack egg release 1.0
From: |
Ivan Raikov |
Subject: |
Re: [Chicken-users] atlas-lapack egg release 1.0 |
Date: |
Thu, 15 Mar 2007 21:12:55 -0400 |
User-agent: |
Gnus/5.110006 (No Gnus v0.6) Emacs/21.4 (gnu/linux) |
Hello, Pierre,
Thanks for the feedback. Regarding eggdoc: I had not specified
eggdoc as a dependency for chicken-setup, so it was not getting
installed. This has been fixed and committed in the egg repository.
I decided to allow the functions to mutate their arguments in order
to be consistent with the original ATLAS/LAPACK functions. I can just
as easily change the Chicken wrappers to allocate new vectors and copy
their arguments, or if there are concerns about efficiency, I can
create two sets of functions -- "fast" functions that mutate their
arguments, and "slow" functions that allocate return vectors. What do
you think about that? I do actually have a disclaimer in the
documentation, that the input matrices are mutated, but I agree that
more thought needs to be put in that.
You are right about returning multiple values -- it is redundant if
the arguments to the function are mutated. You would use something like:
(let-values (((a b) (atlas-lapack:dgesv order n nrhs a b)))
...do stuff...
but perhaps that's not necessary, if the function changes its
arguments.
-Ivan
"Pierre-Alexandre Fournier" <address@hidden> writes:
> Hi,
>
> I installed the atlas-lapack egg, thanks again Ivan for this great
> contribution. Here are some comments I have after testing it today:
>
> 1- You need eggdoc to install atlas-lapack, should this be resolved by
> chicken-setup?
>
> 2- Some or all functions are mutating vectors. In the example in the
> documentation, after evaluating the solver for A * X = B:
>
> (atlas-lapack:dgesv order n nrhs a b)
>
> vector a contains the L and U matrixes, and b contains the N-by-NRHS
> solution matrix X. Should the fact that mutations occur be in the
> documentation? Do you think these functions should be marked with "!"
> following the Scheme convention?
>
> 3- If vectors a and b contains the solution to the equation, maybe you
> could return only the pivot indices so we don't have to use let-values
> to use the results. (How do you use let-values with chicken?)
>
> I'll keep on testing it and give you more comments later.
>
> Cheers,
>
> Pierre-Alexandre
>
>