While Julia shares a lot with Matlab in terms of syntax, there are several differences. So I cannot see being different a drawback. For me it is more important that Julia scales well to large projects and using array views can help reducing the memory consumption in several situations. But you are of course right that it can be a little confusing for beginners.
By the way, for a Numpy user Julias memory sharing concept is not surprising. Am Mittwoch, 23. April 2014 20:51:56 UTC+2 schrieb Ethan Anderes: > > Ok, I'm trying to reconcile Jameson's suggestion to generally assume an > overlap, and Tim's to expect no overlap with arrays if pointer(a) != > pointer(b). Doesn't this imply that pointer(input) == pointer(output) a > typical array function? With subarray's I fully expect sharing memory, just > by the type of the output. I guess I had hoped that vec would have returned > an array-view type or sub-array type to indicate what is happening. > > Side note: I've been preaching Julia to everyone I meet. I usually start > the sermon with "when you start using Julia it will initially behave/feel > very much like R or Matlab, but then when you need the full power of a > fast modern language it is there for you". Can I really say the first part > of the sermon if I need to tell them to generally expect outputs sharing > memory with inputs (which, to my knowledge, is very different from how > matlab and R behave)? > > I hope I'm not sounding critical (cuz I love the language). Mainly, I want > to really understand how things work so I can better sell it to students > and colleagues. > > Cheers, > Ethan > >