Maintaining Math_Integer, Math_Complex, Math_Vector, Math_Matrix
| From: | Louis Mullie | Date: | Tue, 15 Mar 2011 20:29:40 +0000 |
| Subject: | Maintaining Math_Integer, Math_Complex, Math_Vector, Math_Matrix | ||
| References: | 1 2 | Groups: | php.pear.dev |
| Request: | Send a blank email to pear-dev+get-54154@lists.php.net to get a copy of this message | ||
Hi,
I would be interested in taking over the packages Math_Complex, Math_Integer, Math_Vector and
Math_Matrix. I have discussed my request on PEAR-QA and Mr. Christian Weiske has suggested I post
here to detail my intentions concerning these packages, as well as tell you a bit about me.
There are no open bugs for any of these four packages as of March 15th, 2011. Therefore, my first
concern would be to unify the implementation of operations in these packages; currently,
Math_Integer, Math_Complex and Math_Vector use an "operations" class with static
functions, while Math_Matrix supports direct operations on Math_Matrix objects. For example, adding
a matrix to a matrix in Math_Matrix is done by $matrix->add($matrix2), while adding a vector to a
vector in Math_Vector would be done by calling Math_VectorOp::add($vector1, $vector2). I would
transfer matrix operations to a static Math_MatrixOp class, to make things consistent with the three
other packages. Finally, I would unify the operations interface (e.g. Math_Matrix::substract() vs.
Math_VectorOp::sub(), etc.). All of these packages are still beta, so my objective would be to make
the interface as consistent as possible before releasing stable versions. As a side note, I am
having trouble finding PEAR's official guidelines on backward-compatibility - anybody who could
link me to the relevant documentation would be greatly thanked!
After this is done, I would like to achieve better integration between these different packages.
i.e. add support for complex numbers in Math_Vector and Math_Matrix. I am quite open to ideas about
how to go about this; my basic idea would be to provide a common "Math_Number" class
providing a common interface for Math_Complex and Math_Integer (and maybe eventually
Math_Fraction?), and a "Math_NumberOp" class interfacing Math_ComplexOp and Math_IntegerOp
(and Math_FractionOp?). The updated versions of Math_Vector and Math_Matrix would support matrixes
and vectors of Math_Number objects as well as native PHP numbers.
A bit about me and my capacities: I am a 19-year old student of medicine living in Montreal, and I
have been working with PHP for more than 6 years. I have already submitted a package proposal called
"Lexer" to PEAR back in 2005 (http://pear.php.net/pepr/pepr-proposal-show.php?id=197),
which was accepted, but eventually orphaned (I was, then, 13 years old and my interest in PHP, as
you may imagine, gradually shifted towards other things). I have gotten back into PHP about a year
ago, and I now feel I can contribute more significantly to the PEAR community.
Best regards,
Louis Mullie
On 2011-03-15, at 2:58 PM, Christian Weiske wrote:
> Hello Louis,
> That's great to hear! Before officially giving you maintainer status on
> the packages, please discuss your future plans with the package on the
> pear-dev mailing list since there is a wider audience of developers
> than on the pear-qa list.
>
> You may also attach patches to the open bugs/feature requests on the
> bug tracker, which helps us to assess your skills and eligibility to
> lead the package development.
>
> --
> Regards/Mit freundlichen Grüßen
> Christian Weiske
>
> -=≡ Geeking around in the name of science since 1982 ≡=-