It's a bit hard to say whether Julia is object-oriented or not. I suspect that for a lot of people, object-oriented means "do you write `x.f(y)` a lot?" By that metric, Julia is not very object oriented. On the other hand, everything you can do with single-dispatch o.o. in C++ or Java, you can easily simulate with multiple dispatch, but you'll have to get used to writing `f(x,y)` instead of `x.f(y)`. If your notion of object-orientation has more to do with encapsulation and/or message passing, then we start to look pretty non-o.o. again.
On Wed, Jan 8, 2014 at 5:25 AM, Matthias BUSSONNIER < [email protected]> wrote: > > Le 7 janv. 2014 à 21:48, Erik Engheim a écrit : > > Thanks for the nice comments all of you. I guess I have to keep writing > more about my Julia experiences after this ;-) > > On Tuesday, January 7, 2014 9:39:05 PM UTC+1, Ivar Nesje wrote: >> >> Great post, it sums up very well the things I think is the strengths of >> Julia. >> >> A few notes: >> Julia does not look up the method at runtime if the types of the >> arguments to the function can be deduced from the types of the arguments to >> the surrounding function (but it behaves that way for the user, unless he >> redefines the method after the function was compiled >> #265<https://github.com/JuliaLang/julia/issues/265> >> ). >> >>> >>> > That is cool I didn't know that. I assume this can make quite a big > difference in performance for tight inner loops. > > > > Some misc comment too : > > > Julia is not object oriented > > Is that True ? From the manual : > > > It is multi-paradigm, combining features of imperative, functional, and > object-oriented programming. > > I consider that Julia can be OO, the code just look different than in > other languages. > > > Typo ? > > Polymorphis lets you > Missing m ? > > Liked the blog post too otherwise thanks, I would also have > mentioned code_lowered, code_llvm and code_typed > not everyone is fluent assembler and those tool are really useful to, > especially in metaprogramming. > > -- > M >
