octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Octave and GSOC'2008


From: Jaroslav Hajek
Subject: Re: Octave and GSOC'2008
Date: Thu, 28 Feb 2008 10:31:03 +0100

Several ideas:

1. extend various operations to multidimensional arrays. For instance,
A*B can contract the trailing dimension of A with the leading dimension of B,
provided that their sizes match, and produce an array of shape
[size(A)(1:end-1) size(B)(2:end)]

2. implement simple lazy evaluation for matrices. For instance, transpose,
ones, zeros, or diag may output some kind of matrix expression that would not
be converted immediately to a matrix, but retained unevaluated until
asked to do so.
That would allow functions to use specialized code for things like
A'*B or diag(A)*B,
A' \ B, kron(ones(m,n),A) etc.
My idea is that octave_value could hold a variable of class
matrix_expr, which would
maintain the expression in a "latent" form, but evaluate it whenever
matrix_value, is_matrix_type or similar methods were called.
There are certainly some problems, like what class() should output for
these values,
(and probably more that I don't see just now)

3. variable handles, or something like that, that would allow passing
by reference more
graciously than using variable name and "evalin". This is suggested in
the Octave's "wanted features" list, but is it really wanted?
For instance:
A = rand(3,3)
set11tozero(@A)

function set11tozero(x)
if (isvarhandle(x))
  assign_local_name("A",@x)
  A(1,1) = 0
endif


On Tue, Feb 26, 2008 at 8:58 PM, Søren Hauberg <address@hidden> wrote:
> tir, 26 02 2008 kl. 14:22 -0500, skrev John W. Eaton:
>
> > On 26-Feb-2008, Søren Hauberg wrote:
>  >
>  > | So, it doesn't seem like that much work...
>  >
>  > Then you are volunteering to do it, right?  :-)
>  I guess I should learn to watch my mouth :-)
>
>  I can volunteer to do the boring work, i.e. initial application to
>  become a mentoring organisation. I can also draft the list of suggested
>  projects, but we need to agree on them first. So which projects should
>  we suggest? I think we'll need 3 or 4 projects.
>
>  Søren
>
>



-- 
RNDr. Jaroslav Hajek
computing expert
Aeronautical Research and Test Institute (VZLU)
Prague, Czech Republic
url: www.highegg.matfyz.cz



reply via email to

[Prev in Thread] Current Thread [Next in Thread]