renaming Matrix to 2dArray

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

renaming Matrix to 2dArray

Stephane Ducasse-3
Hi

long time ago I renamed 2DArray as Matrix. Now our Matrix class does
not support any of the Matrix operations, so I was thinking that to
avoid confusion (people should use polymath) we should rename it back
to 2DArray.
What do you think?

Stef

Reply | Threaded
Open this post in threaded view
|

Re: renaming Matrix to 2dArray

Tudor Girba-2
+1

Doru


> On Mar 9, 2018, at 9:46 PM, Stephane Ducasse <[hidden email]> wrote:
>
> Hi
>
> long time ago I renamed 2DArray as Matrix. Now our Matrix class does
> not support any of the Matrix operations, so I was thinking that to
> avoid confusion (people should use polymath) we should rename it back
> to 2DArray.
> What do you think?
>
> Stef
>

--
www.tudorgirba.com
www.feenk.com

"Every now and then stop and ask yourself if the war you're fighting is the right one."





Reply | Threaded
Open this post in threaded view
|

Re: renaming Matrix to 2dArray

Esteban A. Maringolo
In reply to this post by Stephane Ducasse-3
I thought you couldn't name classes starting with numbers.

If that wasn't the case I think Array2D would be a better option.

Regards,


Esteban A. Maringolo
Esteban A. Maringolo


2018-03-09 17:46 GMT-03:00 Stephane Ducasse <[hidden email]>:

> Hi
>
> long time ago I renamed 2DArray as Matrix. Now our Matrix class does
> not support any of the Matrix operations, so I was thinking that to
> avoid confusion (people should use polymath) we should rename it back
> to 2DArray.
> What do you think?
>
> Stef
>

Reply | Threaded
Open this post in threaded view
|

Re: renaming Matrix to 2dArray

Clément Béra
Hi,

long time ago I renamed 2DArray as Matrix. Now our Matrix class does
not support any of the Matrix operations

Some Matrix operations are implemented:

- I see in Matrix class #+*, #preMultiplyByArray:, #preMultiplyByMatrix: which are Matrix specific arithmetic (Multiplication of Matrix by Vector and Matrix) in *Collections-arithmetic protocol. Does that mean these API will be removed while renaming ? They don't seem to be used anyway.

- There is also #transposed, which is the transposed matrix operator implemented only for square matrix or an assertion failure is raised. This method is used, it makes sense to have the transposed operator in Matrix class but I don't think it would mean anything on a Array2D class (What does it mean to transpose a 2D Array ?). Is this API going to be removed and all users patched ? Or maybe we rename it to #squareMatrixTransposed in Array2D expressing the intent (interpret the Array2D as a Matrix, works only on square Matrix). What do you think ?

I think it makes sense to rename from Matrix to Array2D only if we patch first these matrix specific APIs. There are not many we can do it.

Regards,

On Sat, Mar 10, 2018 at 5:35 AM, Esteban A. Maringolo <[hidden email]> wrote:
I thought you couldn't name classes starting with numbers.

If that wasn't the case I think Array2D would be a better option.

Regards,


Esteban A. Maringolo
Esteban A. Maringolo


2018-03-09 17:46 GMT-03:00 Stephane Ducasse <[hidden email]>:
> Hi
>
> long time ago I renamed 2DArray as Matrix. Now our Matrix class does
> not support any of the Matrix operations, so I was thinking that to
> avoid confusion (people should use polymath) we should rename it back
> to 2DArray.
> What do you think?
>
> Stef
>




--
Clément Béra
Pharo consortium engineer
https://clementbera.github.io/
Bâtiment B 40, avenue Halley 59650 Villeneuve d'Ascq
Reply | Threaded
Open this post in threaded view
|

Re: renaming Matrix to 2dArray

philippeback
I think that if we want a "proper" matrix, it should live in PolyMath, and there is a PMMatrix.

Then there is also DataFrame.

And then get a prefix to its name, like we have a RTTabTable in Roassal.

We also have Tabular with TabularWorksheet for XLSX work.

There is code in GT that helps in showing a matrix in an inspector, there is example code like https://www.peteruhnak.com/blog/2018/02/26/tabular-debugging-view-in-bloc/ and I have a bunch of things that are using Matrix.

We discussed this matter in the past already. http://forum.world.st/PMMatrix-vs-Matrix-td4943819.html
And then it was "Grid", or "Table".

Please leave that Matrix class alone, it works and frankly is there since long enough so that people have code using it and know what to expect.

Phil


On Sat, Mar 10, 2018 at 8:49 AM, Clément Bera <[hidden email]> wrote:
Hi,

long time ago I renamed 2DArray as Matrix. Now our Matrix class does
not support any of the Matrix operations

Some Matrix operations are implemented:

- I see in Matrix class #+*, #preMultiplyByArray:, #preMultiplyByMatrix: which are Matrix specific arithmetic (Multiplication of Matrix by Vector and Matrix) in *Collections-arithmetic protocol. Does that mean these API will be removed while renaming ? They don't seem to be used anyway.

- There is also #transposed, which is the transposed matrix operator implemented only for square matrix or an assertion failure is raised. This method is used, it makes sense to have the transposed operator in Matrix class but I don't think it would mean anything on a Array2D class (What does it mean to transpose a 2D Array ?). Is this API going to be removed and all users patched ? Or maybe we rename it to #squareMatrixTransposed in Array2D expressing the intent (interpret the Array2D as a Matrix, works only on square Matrix). What do you think ?

I think it makes sense to rename from Matrix to Array2D only if we patch first these matrix specific APIs. There are not many we can do it.

Regards,

On Sat, Mar 10, 2018 at 5:35 AM, Esteban A. Maringolo <[hidden email]> wrote:
I thought you couldn't name classes starting with numbers.

If that wasn't the case I think Array2D would be a better option.

Regards,


Esteban A. Maringolo
Esteban A. Maringolo


2018-03-09 17:46 GMT-03:00 Stephane Ducasse <[hidden email]>:
> Hi
>
> long time ago I renamed 2DArray as Matrix. Now our Matrix class does
> not support any of the Matrix operations, so I was thinking that to
> avoid confusion (people should use polymath) we should rename it back
> to 2DArray.
> What do you think?
>
> Stef
>




--