Well, from my point of view (data analysis) and in comparison to python, 
slicing and array views seems in need of some polishing, but I understand 
there are improvements coming. In any case, I think the results are already 
quite impressive, for being such a new language. It seems to me Julia 
developers follow to some extent a "Worse is better 
<http://doc.cat-v.org/programming/worse_is_better>" approach, and I 
definitely appreciate it.

Il giorno mercoledì 27 maggio 2015 11:47:28 UTC+2, Tim Holy ha scritto:
>
> I think there's less agreement on whether the difference between A[:,3] 
> and 
> A[3,:] is good. Julia at least makes it easy to work with dropped trailing 
> dimensions by supporting operations like size and indexing with more 
> dimensions than the array possesses: with b = A[:,3], you can still say 
> size(b,2) and b[4,1]. 
>
> You also might like "slice", which drops all singleton dimensions, 
> trailing or 
> not. My best guess is that julia will eventually make A[i,j] syntax for 
> slice(A, i, j), at which point the difference between the two will 
> disappear. 
> But my crystal ball is still a bit murky on that point. 
>
> --Tim 
>
> On Wednesday, May 27, 2015 12:45:08 AM Andrea Cimatoribus wrote: 
> > I see your point, and actually think it's a very good idea. I am more 
> > unhappy with the difference between A[:,3] and A[3,:], but I have seen 
> > there are reasons for this too, even if I am not very convinced (but no 
> > expert to judge either). Is there agreement also on this? There're a ton 
> of 
> > github discussions, but cannot understand what is the prevailing view, 
> in 
> > particular for 0.4 
> > 
> > Il giorno martedì 26 maggio 2015 18:55:19 UTC+2, Tim Holy ha scritto: 
> > > The types of the arguments determine the return type. In that sense, 
> A[:, 
> > > 3] 
> > > and A[:, 3:3] are completely different constructs, and the second is 
> much 
> > > more 
> > > like A[:, 3:4] than it is like A[:, 3]. This is no different from the 
> rest 
> > > of 
> > > julia---types matter. 
> > > 
> > > The flip side is Matlab's behavior, where an algorithm that happens to 
> > > return 
> > > 3:3 instead of 3:4 can suddenly change the behavior of some later 
> > > operation 
> > > like squeeze, and then reorder your dimensions on you. This is 
> something 
> > > that 
> > > julia developers are trying to avoid. 
> > > 
> > > Best, 
> > > --Tim 
> > > 
> > > On Tuesday, May 26, 2015 08:58:47 AM Andrea Cimatoribus wrote: 
> > > > I have seen a lot of discussions on this issue, in particular in 
> > > 
> > > relation 
> > > 
> > > > to the coming 0.4 release. Since I must admit I got completely lost 
> in 
> > > 
> > > the 
> > > 
> > > > debate: is there an agreement on this? Since it is such a 
> fundamental 
> > > > element, which can break more or less any piece of code (and is also 
> > > 
> > > very 
> > > 
> > > > much connected to the switch to array views, as far as I 
> understood), is 
> > > 
> > > it 
> > > 
> > > > possibly wiser to wait for 0.4 for a first test drive of Julia? 
> > > > Thanks. 
> > > > 
> > > > Il giorno giovedì 19 giugno 2014 11:18:10 UTC+2, Carlos Baptista ha 
> > > 
> > > scritto: 
> > > > > If I do this: 
> > > > > 
> > > > > A = rand(10, 10) 
> > > > > x = A[:, 3] 
> > > > > 
> > > > > then typeof(x) is Array{Float64, 1}. However if I do this: 
> > > > > 
> > > > > A = rand(10, 10) 
> > > > > x = A[:, 3:3] 
> > > > > 
> > > > > then typeof(x) is Array{Float64, 2}. 
> > > > > 
> > > > > Is this a bug, or is this behaviour the intention of the 
> developers? 
> > > 
> > > In 
> > > 
> > > > > case of the latter: why? 
>
>

Reply via email to