Earlier quoted context omitted.
> With regards to numerical programming, it's obviously already far ahead of swift, and IMO much better placed to beat it in the long run. Julia's secret sauce is LLVM. Considering the guy behind Swift also made LLVM, I'm inclined to think that Swift will come out ahead.
I'd say LLVM is an important part of Julia's success but not the whole story: it is also a very well designed language.
High Performance Numeric Programming with Swift: Explorations and Reflections
41–48 of 48 posts
Re: High Performance Numeric Programming with Swift: Explorations and Reflections
#42Earlier quoted context omitted.
I'd say LLVM is an important part of Julia's success but not the whole story: it is also a very well designed language.
Really? The 1-based array is really a mistake.. They should have followed Ada: allow any starting index and provide keywords to access the first/last element of the array. All this by default , otherwise it doesn't matter.
(I know that to you specifically the fact that the ability to choose the starting index is not builtin means it doesn't matter, but I point it out for others who might not know that it's easy to do in Julia.)
Re: High Performance Numeric Programming with Swift: Explorations and Reflections
#43Thanks for writing up your thoughts! I find Julia's core design to be excellent for general purpose programming, better than python in fact since it essentially solves the expression problem with it's type system and multiple dispatch. It's external program interop is also more pleasant than Python's : https://docs.julialang.org/en/v1/manual/running-external-pro... Sure, it doesn't have the same general library ecosy…
I am betting Julia will finally make Python community take JIT as standard feature seriously.
Re: High Performance Numeric Programming with Swift: Explorations and Reflections
#44Earlier quoted context omitted.
Given Julia has macros, so it will definitely catch up to R and data.table in terms of syntax (if it's not already there). I am more thinking about performance, e.g see https://h2oai.github.io/db-benchmark/ . It shows that Julia is lagging behind on group-by (and from my experience many other operations) when compared to R's data.table. Although I have done some work to make thing fast see: https://github.com/xiaodai…
Ah yes, that is true. However Julia is tackling a harder problem in that the speed lag is presumably due to optimizing for custom element and table types.
Re: High Performance Numeric Programming with Swift: Explorations and Reflections
#45Earlier quoted context omitted.
Ah yes, that is true. However Julia is tackling a harder problem in that the speed lag is presumably due to optimizing for custom element and table types.
"for custom element and table types" that is highly likely to be true, but unless an equally fast Julia program exists I remained scientifically skeptical. But my prior believe is that Julia can be as fast.
Re: High Performance Numeric Programming with Swift: Explorations and Reflections
#46Earlier quoted context omitted.
I am betting Julia will finally make Python community take JIT as standard feature seriously.
Reminds me of this post https://hackernoon.com/why-is-python-so-slow-e5074b6fe55b I can't say I understood everything but I also recall that Python is hard to optimise because it has such a rich object model
For example in Smalltalk, you can destroy all JIT assumptions about a given object by sending a become: message.
Re: High Performance Numeric Programming with Swift: Explorations and Reflections
#47Earlier quoted context omitted.
I see a lot of great numerical code in Julia. As a C++ developer, I don’t want to deal with a runtime or various parts of the language, but I imagine I could be more easily brought to the table if Julia code could be exported to a shared object file and linked against, or if it could compile to a direct binary.
I think Julia is the dark horse to eventually take over a wide swath of computing - possibly wider than Java or C++. As others have pointed out there's an effort to produce static Julia executables, and I think it's already possible to produce libraries. One interesting datapoint is that Julia's C FFI is faster than that of C++... https://github.com/dyu/ffi-overhead (For those interested, the order of the first few l…
Re: High Performance Numeric Programming with Swift: Explorations and Reflections
#48Earlier quoted context omitted.
I think Julia is the dark horse to eventually take over a wide swath of computing - possibly wider than Java or C++. As others have pointed out there's an effort to produce static Julia executables, and I think it's already possible to produce libraries. One interesting datapoint is that Julia's C FFI is faster than that of C++... https://github.com/dyu/ffi-overhead (For those interested, the order of the first few l…
Do you know how Julia gets such great ffi performance? Is it inlining, for instance?