On 5 Jun 2016 03:12, "William Stein" <wst...@gmail.com> wrote:
>
> On Sat, Jun 4, 2016 at 6:11 PM, Kwankyu Lee <ekwan...@gmail.com> wrote:
> > As the discussion of this thread seems to converge to the conclusion
that we
> > need to transfer the function of X.list() to X.elements() or like to
avoid
> > confusion, I still like to add to the following separate issue
> >
> >> >> (For matrix X), X.list() returns a list of all the
> >> >> entries of the matrix, whereas list(X) returned the rows.    This is
> >> >> totally my fault, definitely wrong, and its' in Sage right now.
> >> >
> >> > The list of the rows of X is the closest thing to X. So we can
> >> > understand the current behavior as the "conversion" of a matrix.
> >>
> >>
> >> Huh?   Isn't the list of columns isn't just as close?  What about the
> >> list of all elements?  What metric for closeness are you using?
> >
> >
> > I think that list(X) is in general a way to get a "list" representation
of
> > object X. Then for matrix X, the list of rows of X is the closest
> > representation since it keeps a bit of the structure of the matrix. So
we
> > can
> >
> > sage: m=matrix(2,[1,2,3,4])
> >
> > sage: m
> >
> > [1 2]
> >
> > [3 4]
> >
> > sage: list(m)
> >
> > [(1, 2), (3, 4)]
> >
> > sage: matrix(list(m))
> >
> > [1 2]
> >
> > [3 4]
> >
> > So I don't think the current behavior is so wrong.
> > It is just unfortunate
> > that X.list() and list(X) behave differently.
>
> The current behavior is that X.list() returns [1,2,3,4], whereas
> list(X) returns [(1,2),(3,4)].    It behaves as documented so it
> is not "wrong".   I think it is extremely hard to argue that this
> is not potentially very confusing to users and does not violate

> a principle of list surprise.

Ha ha!

>
> A function like X.elements() that returns [1,2,3,4] would make
> perfect sense.  In fact, Sage's X.list() exists because I was
> implementing something like Magma's EltSeq function, and Eltseq
> is a lot closer to .elements() than .list().   I messed up.
>
> William
>
>
> >
> > --
> > You received this message because you are subscribed to the Google
Groups
> > "sage-devel" group.
> > To unsubscribe from this group and stop receiving emails from it, send
an
> > email to sage-devel+unsubscr...@googlegroups.com.
> > To post to this group, send email to sage-devel@googlegroups.com.
> > Visit this group at https://groups.google.com/group/sage-devel.
> > For more options, visit https://groups.google.com/d/optout.
>
>
>
> --
> William (http://wstein.org)
>
> --
> You received this message because you are subscribed to the Google Groups
"sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send an
email to sage-devel+unsubscr...@googlegroups.com.
> To post to this group, send email to sage-devel@googlegroups.com.
> Visit this group at https://groups.google.com/group/sage-devel.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to