El miércoles, 25 de febrero de 2015, 20:32:59 (UTC-6), Tim Holy escribió:
>
> On Wednesday, February 25, 2015 06:21:24 PM David P. Sanders wrote:
> > To continue the theme:
> >
> > What is [[3, 4], [5, 6]] supposed to do now? I thought this was
> supposed
> > to give me an array of arrays, but it just gives me a deprecation
> warning.
>
> Eventually it will give you an array of arrays, but now we're in a period
> of
> transition.
>
> Try Vector{Int}[[3,4], [5,6]]
>
OK, thanks.
David.
>
> --Tim
>
> >
> > And [[3,4]; [5,6]] gives me concatenation.
> >
> > How do I just get the 1D array of 1D arrays?
> >
> > > 2015-02-26 1:56 GMT+01:00 Simon Danisch <[email protected]
> <javascript:>>:
> > >> Just to make sure that we're on the same page: you say that your
> > >> suggestion actually doesn't work to construct a Matrix{Vector3}?
> > >> or is does [[a,a,a]' ; [a,a,a]'] lead to different results than [b ;
> b]?
> > >>
> > >> I just tried it, [b ; b] on my 4 days old master yields
> Matrix{Vector3}.
> > >> (with b = Array(Vector3{Int}, 1, 3), as it's currently impossible to
> > >> create b differently)
> > >>
> > >> 2015-02-26 1:39 GMT+01:00 Josh Langsfeld <[email protected]
> <javascript:>>
> > >>
> > >>> In general I think you are making good points. Different parallel
> > >>> syntaxes for constructing with and without flattening would be a
> nice
> > >>> feature.
> > >>>
> > >>> On Wed, Feb 25, 2015 at 6:46 PM, Simon Danisch <[email protected]
> > >>>
> > >>> <javascript:>> wrote:
> > >>>> So what do I expect from your case?
> > >>>> [[a,a,a]' ; [a,a,a]']
> > >>>> b = [a,a,a]' => some array, which looks comparable to Case 2
> > >>>> [b ; b] -> independent of b's shape, this should result in
> > >>>> Array{eltype(b)} and not Array{typeof(b)}, from what I learned in
> Case
> > >>>> 2.
> > >>>> Otherwise this is quite confusing, as concatenating would also
> depend
> > >>>> on the shape, which makes it hard to predict, when something
> > >>>> concatenates
> > >>>> or just constructs.
> > >>>
> > >>> In this case, [b ; b] does indeed always have type Array{eltype(b)}
> and
> > >>> not Array{typeof(b)} (unless typeof(b) == Number).
> > >>>
> > >>>> 2015-02-26 0:10 GMT+01:00 Josh Langsfeld <[email protected]
> > >>>>
> > >>>> <javascript:>>:
> > >>>>> Assuming transposing works, you could do [[a,a,a]' ; [a,a,a]']
> which
> > >>>>> isn't entirely horrible
> > >>>>>
> > >>>>> On Wednesday, February 25, 2015 at 5:50:04 PM UTC-5, Simon Danisch
> > >>>>>
> > >>>>> wrote:
> > >>>>>> Okay... So how do I realize:
> > >>>>>> a = vec3(...)
> > >>>>>> [ a a a ; a a a]
> > >>>>>>
> > >>>>>> Well, all I think is, that arrays of arrays get treated like
> second
> > >>>>>> class citizens, as it is harder to work with them in the same
> way, as
> > >>>>>> it
> > >>>>>> would be possible with concatenating ;)
> > >>>>>> This is especially relevant with FixedSizeArrays coming up, as
> they
> > >>>>>> allow for tightly packed array of arrays.
> > >>>>>> What I mean becomes obvious, if you look at the number of
> > >>>>>> constructors:
> > >>>>>> [a,b,c] for non concatenating
> > >>>>>> vs
> > >>>>>> [a;b;c;], [a b c], [a b c; a b c] (+ some variations) for
> > >>>>>> concatenation
> > >>>>>>
> > >>>>>> 2015-02-25 23:24 GMT+01:00 Jeff Bezanson <[email protected]>:
> > >>>>>>> Transposing [vec1, vec2, vec3] will absolutely work. I think the
> > >>>>>>> issue
> > >>>>>>> you saw with it was specific to ImmutableArrays. I don't know
> why
> > >>>>>>> they
> > >>>>>>> have that behavior.
> > >>>>>>>
> > >>>>>>> On Wed, Feb 25, 2015 at 5:21 PM, Simon Danisch <
> [email protected]>
> > >>>>>>>
> > >>>>>>> wrote:
> > >>>>>>> > I mean, my whole busyness is about constructing matrices of
> > >>>>>>>
> > >>>>>>> Vec2/3/4, which
> > >>>>>>>
> > >>>>>>> > inherit from DenseArray.
> > >>>>>>> > So I'm basically forced, if I'm not missing something, to do
> quite
> > >>>>>>>
> > >>>>>>> a bit of
> > >>>>>>>
> > >>>>>>> > work to get my [vec1 vec2 vec3] going.
> > >>>>>>> > Especially, as transpose([vec1, vec2, vec3]) doesn't seem to
> work,
> > >>>>>>>
> > >>>>>>> bug or
> > >>>>>>>
> > >>>>>>> > not isn't known to me.
> > >>>>>>> >
> > >>>>>>> > 2015-02-25 23:18 GMT+01:00 Simon Danisch <[email protected]>:
> > >>>>>>> >> Well, the issue raised here was, how do you realize non
> > >>>>>>>
> > >>>>>>> concatening [a b
> > >>>>>>>
> > >>>>>>> >> c]? This seems impossible now, even though that there are
> quite a
> > >>>>>>>
> > >>>>>>> few use
> > >>>>>>>
> > >>>>>>> >> cases for it...
> > >>>>>>> >>
> > >>>>>>> >> 2015-02-25 23:13 GMT+01:00 Stefan Karpinski <
> [email protected]
> > >>>>>>> >>
> > >>>>>>> >>> I actually think the plan of [a,b,c] for construction
> without
> > >>>>>>> >>> concatenation and [a;b;c] and [a b c] for concatenation is
> > >>>>>>>
> > >>>>>>> pretty good. I no
> > >>>>>>>
> > >>>>>>> >>> longer feel that there's any need for a new bracket like [|
> |].
> > >>>>>>>
> > >>>>>>> The thing
> > >>>>>>>
> > >>>>>>> >>> that clicked for me is that [a;] isn't really concatenation
> at
> > >>>>>>>
> > >>>>>>> all anyway.
> > >>>>>>>
> > >>>>>>> >>> On Wed, Feb 25, 2015 at 4:58 PM, Simon Danisch <
> > >>>>>>>
> > >>>>>>> [email protected]>
> > >>>>>>>
> > >>>>>>> >>> wrote:
> > >>>>>>> >>>> As Julia was the first language to introduce me to this
> kind of
> > >>>>>>> >>>> constructs, I'm not sure about your used terms.
> > >>>>>>> >>>> Concatenate for me would firstly mean, to just connect
> elements
> > >>>>>>>
> > >>>>>>> (that's
> > >>>>>>>
> > >>>>>>> >>>> at least what the German translation suggests), which I
> would
> > >>>>>>>
> > >>>>>>> apply to the
> > >>>>>>>
> > >>>>>>> >>>> process of putting the elements together into one array.
> The
> > >>>>>>>
> > >>>>>>> elements in my
> > >>>>>>>
> > >>>>>>> >>>> case are the Vectors.
> > >>>>>>> >>>> You seem to use it as synonymous with concatenation +
> > >>>>>>> >>>> flattening
> > >>>>>>> >>>> (sticking to the function names I guess).
> > >>>>>>> >>>> I'd say [a,b] is supposed to concatenate, but shouldn't
> > >>>>>>>
> > >>>>>>> flatten, right?
> > >>>>>>>
> > >>>>>>> >>>> So yes, different syntax for concatenating, and
> > >>>>>>>
> > >>>>>>> concatenating+flattening
> > >>>>>>>
> > >>>>>>> >>>> would make this case much, much clearer.
> > >>>>>>> >>>> Then it's not this fuzzy magic thing, that sometimes
> happens
> > >>>>>>> >>>> and
> > >>>>>>> >>>> sometimes not and both clearly encapsulates a concept and
> use
> > >>>>>>>
> > >>>>>>> the same basic
> > >>>>>>>
> > >>>>>>> >>>> syntax.
> > >>>>>>> >>>> So:
> > >>>>>>> >>>> [vec, vec] => [vec, vec] # With optional typing, ensuring
> that
> > >>>>>>>
> > >>>>>>> you don't
> > >>>>>>>
> > >>>>>>> >>>> end up with Any[]
> > >>>>>>> >>>> [vec vec] => [vec vec] # With optional typing, ensuring
> that
> > >>>>>>>
> > >>>>>>> you don't
> > >>>>>>>
> > >>>>>>> >>>> end up with Any[]
> > >>>>>>> >>>>
> > >>>>>>> >>>> [| vec, vec |] => [el1, el2, el3, el4, ...]# With optional
> > >>>>>>>
> > >>>>>>> typing,
> > >>>>>>>
> > >>>>>>> >>>> ensuring that you don't end up with Any[]
> > >>>>>>> >>>> [| vec vec |] => [el el2 ; el3 el4]# With optional typing,
> > >>>>>>>
> > >>>>>>> ensuring
> > >>>>>>>
> > >>>>>>> >>>> that you don't end up with Any[]
> > >>>>>>> >>>>
> > >>>>>>> >>>> I do think, that this is very clear and consistent and
> doesn't
> > >>>>>>>
> > >>>>>>> leave
> > >>>>>>>
> > >>>>>>> >>>> anything in doubt!
> > >>>>>>> >>>>
> > >>>>>>> >>>>
> > >>>>>>> >>>> Am Mittwoch, 25. Februar 2015 19:00:01 UTC+1 schrieb Simon
> > >>>>>>>
> > >>>>>>> Danisch:
> > >>>>>>> >>>>> Hi there,
> > >>>>>>> >>>>> I thought default concatenation was deprecated, to make it
> > >>>>>>>
> > >>>>>>> easier to
> > >>>>>>>
> > >>>>>>> >>>>> create arrays of arrays... But it became rather impossible
> and
> > >>>>>>>
> > >>>>>>> confusing in
> > >>>>>>>
> > >>>>>>> >>>>> the horizontal case, from what I see.
> > >>>>>>> >>>>> Is there really not a single method left from the few ways
> in
> > >>>>>>>
> > >>>>>>> 0.35 of
> > >>>>>>>
> > >>>>>>> >>>>> creating a horizontal vector of vectors?
> > >>>>>>> >>>>> 0.4:
> > >>>>>>> >>>>>
> > >>>>>>> >>>>> https://gist.github.com/SimonDanisch/
> > >>>>>>>
> > >>>>>>> 6972c1c090c608738e83#file-cat0-4-jl
> > >>>>>>>
> > >>>>>>> >>>>> 0.3.5:
> > >>>>>>> >>>>>
> > >>>>>>> >>>>> https://gist.github.com/SimonDanisch/
> > >>>>>>>
> > >>>>>>> 058ef76b2583c620b667#file-cat3-5-jl
> > >>>>>>>
> > >>>>>>> >>>>> Am I missing something, or is this a bug?!
> > >>>>>>> >>>>>
> > >>>>>>> >>>>> Best,
> > >>>>>>> >>>>> Simon
>
>