This is the mail archive of the gsl-discuss@sources.redhat.com mailing list for the GSL project.
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
| Other format: | [Raw text] | |
Hi Yoshiki, all,
> yoshiki@maxwell[62] irb (Ruby command-line interpreter)
> irb(main):001:0> require("gsl")
> irb(main):002:0> t = GSL::Tensor.alloc(2, 3)
> irb(main):003:0> t.set(123, 0, 1, 2)
> irb(main):004:0> t.get(0, 1, 2)
> => 123.0
> irb(main):005:0> t[1, 2, 2] = 9 # simple form
> irb(main):006:0> t[1, 2, 2]
> => 9.0
Looks very nice, and also it seems that using varargs didn't create you
trouble to wrap it?! My main concern about varargs was their potentially
hard-to-wrap nature. In any case, I guess it would be possible to still use
that nice sintax in Ruby if indices were passed as (uint*) instead of varargs
in gsl_tensor, right?
> A remark and a bug:
>
> * gsl_tensor_max_index() and other related functions
> store the results in a pointer to int*, but it must
> be size_t* (conflict position2index()).
> * in gsl_tensor_copy(),
> memcpy(t->data, tt->data, tt->size);
> ---> memcpy(t->data, tt->data, sizeof(BASE)*tt->size);
I have added your fixes, thank you very much. They had escaped my "gcc -W
-Wall ...", valgrind and test suite!
The updated version can be retrieved from anonymous CVS:
cvs -d :pserver:anonymous@evalu29.ific.uv.es:/usr/local/cvsroot login
(any password will do)
cvs -d :pserver:anonymous@evalu29.ific.uv.es:/usr/local/cvsroot co gsl_tensor
To keep it as a separate package (I don't know if it would suit into the gsl
itself, probably it doesn't even have the appropiate maturity level) I am
considering to register it as a new project in Savannah. If that is of any
interest, I will let you know then.
Best regards,
Jordi
Attachment:
pgp00000.pgp
Description: PGP signature
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |