Earlier quoted context omitted.
Probably the most obvious improvements for most users are the big growth in the package ecosystem, with some science and math packages becoming the best available in any language (DifferentialEquations.jl, for example) and the drastic improvement in interactivity: the REPL starts instantly now, and most packages compile much faster. This will get even better in the next major release.
I’m curious (I’m planning on designing an ODE/PDE package relatively soon), what makes DifferentialEquations.jl the best available?
Startups are building with the Julia Programming Language
21–30 of 42 posts
Re: Startups are building with the Julia Programming Language
#22I heard a talk from a large cybersecurity company that was using Julia for research and is apparently in the process of dropping Julia due to: - difficulty in hiring, apparently it was too expensive/difficult to hire Julia programmers, - poorly performing garbage collector. If I recall correctly, they had issues when trying to process huge amounts of data. Seems like small teams will not run into these issues at leas…
Re: Startups are building with the Julia Programming Language
#23I heard a talk from a large cybersecurity company that was using Julia for research and is apparently in the process of dropping Julia due to: - difficulty in hiring, apparently it was too expensive/difficult to hire Julia programmers, - poorly performing garbage collector. If I recall correctly, they had issues when trying to process huge amounts of data. Seems like small teams will not run into these issues at leas…
Step 1. Prototyping. Small data, don't care about performance. Julia is as easy as python, but faster. GC doesn't matter.
Step 2. Production. Very large datasets. Performance is very important so I make sure that hot loops don't allocate, and so GC doesn't matter.
Really, I struggle to see how someone can not like this.
Regarding hiring. My experience has been that you can roughly divide people into two categories. Those who like using tools, and those who like solving problems. For the former, a different language might be an issue because they might not know and might not be in the mood for learning it. For the latter, they're happy to learn any tool that can help solve their problem. We want the latter, and for the latter learning Julia hasn't been an issue.
Re: Startups are building with the Julia Programming Language
#24How good is Julia as a general-purpose language? Can it be a viable replacement for, say, Lua in game development?
Re: Startups are building with the Julia Programming Language
#25How good is Julia as a general-purpose language? Can it be a viable replacement for, say, Lua in game development?
Julia is a very nice language, its core abstractions (mutli-dispatch and macros) are not tied to any particular use-case. My overriding feeling using it is that it is a language visiting from the future, it is very well put together. Having said that, I've not had the opportunity to use it in production, Python is very popular!
Either that, or most languages used today are stuck in the past!
Re: Startups are building with the Julia Programming Language
#26How good is Julia as a general-purpose language? Can it be a viable replacement for, say, Lua in game development?
Julia is not a good choice to replace lua because its runtime is at least 60MB. It is also very slow to compile. LuaJIT would be a much better choice since it is very small and very fast.
The only thing I've seen that's really comparable to lua/luajit in terms of size and simplicity of embedding in a C program is janet. It's bigger but still a single file. I would assume also somewhat slower but if you need raw perf C is right there.... But you get a much more usable language with an actual stdlib so it's a good tradeoff for a lot of applications.
Re: Startups are building with the Julia Programming Language
#27If anyone from these startups is here on HN, I would love to hear your thoughts on the following: 1. How are you dealing with TTFX when deploying your code? If using PackageCompiler/StaticCompiler, is binary size an issue? 2. Are you using solely Julia, or a combination of Julia + other languages? 3. What unique value is Julia offering your startup that is difficult to find in other languages?
Jumping the gun slightly, but TTFX likely about to get a lot better (5x+ improvement in times) in the next version (1.9). Via cachine of the native compiled code. https://github.com/JuliaLang/julia/pull/47184#issuecomment-1...
Re: Startups are building with the Julia Programming Language
#28Earlier quoted context omitted.
Julia is not a good choice to replace lua because its runtime is at least 60MB. It is also very slow to compile. LuaJIT would be a much better choice since it is very small and very fast.
Luajit isn't really a replacement for lua though, if you don't want to use lua. The only thing I've seen that's really comparable to lua/luajit in terms of size and simplicity of embedding in a C program is janet. It's bigger but still a single file. I would assume also somewhat slower but if you need raw perf C is right there.... But you get a much more usable language with an actual stdlib so it's a good tradeoff f…
But people do want to use lua. The advantage of julia is mostly speed but the disadvantages of huge runtime, long compile times and weak GC mean it isn't realistically going to be used in games much if at all. luaJIT closes the speed gap by a huge amount and is small and compiles extremely fast.
> but if you need raw perf C is right there
LuaJIT (and julia actually) have very easy FFI integration, but why not make everything in C (ignoring that actual C would be terrible idea compared to C++ for something non trivial)?
Any embedded language is embedded for a reason. I'm not sure what point you are making here.
Re: Startups are building with the Julia Programming Language
#29Earlier quoted context omitted.
Jumping the gun slightly, but TTFX likely about to get a lot better (5x+ improvement in times) in the next version (1.9). Via cachine of the native compiled code. https://github.com/JuliaLang/julia/pull/47184#issuecomment-1...
I've been hearing about improvements for the last 8 years. It has been a constant complaint and a constant broken promise.