Readit News logoReadit News
xgdgsc commented on My Ideal Array Language   ashermancinelli.com/csblo... · Posted by u/bobajeff
electroly · a month ago
The events of my post happened in the last two months on Julia version 1.11.5, and this poster simply linked to a primer on PackageCompiler.jl which is the thing I said I was using in my post. It's not solved; at best there are complicated mitigations that let you control when the long compilation happens without avoiding it. If you try out Julia, you will run into the issue, and as a first-time user you won't be prepared to implement the mitigations, none of which are suitable for ad hoc usage. The sysimage only works for us because we rarely change our packages so we can build it ahead of time in GitHub Actions.
xgdgsc · 25 days ago
The tradeoff between compilation time and programmer productivity and running speed is worth it compared with using any other language. You should consider most users don' t need to build an image . They just do things in the REPL with Revise.jl (which is fast). Or use a bit of PrecompileTools.jl to get good enough startup time (which isn' t complicated if you are the code writer). Package compiling works even large and slow is a bonus. https://pypl.github.io/PYPL.html Julia still grows despite all those controversial articles for a reason.
xgdgsc commented on My Ideal Array Language   ashermancinelli.com/csblo... · Posted by u/bobajeff
aragilar · a month ago
Are you actually sure it's solved? I note that Julia proponents have a history of claiming that an issue has been solved when it is apparent that it has not been solved (see e.g. https://danluu.com/julialang/).
xgdgsc · a month ago
Yes. I don' t know why you' d rather trust an article from 10 years ago to understand current status.
xgdgsc commented on My Ideal Array Language   ashermancinelli.com/csblo... · Posted by u/bobajeff
electroly · a month ago
I'm in a position of supporting a Julia environment but not writing Julia myself. From my perspective, they need to fix time-to-first-plot before it can be adopted more broadly. It's horrendous. The "2-3 minutes" I see online is an aggressive estimate; it's more than that for our modest set of data science packages on very beefy workstations. I had to use PackageCompiler.jl to build a sysimage which shifted a ton of burden onto me (and onto GitHub Actions) to avoid a long precompile on every user machine. I had to do the same to get my Julia Docker image to stop precompiling on every new cloud machine even though it had already been precompiled during docker build. I would describe this process as a nightmare, and it was a serious problem--the thing was precompiling every time on every job run in the cloud using the docker image.
xgdgsc commented on Ask HN: Is there a language that is simple and empowers developer productivity?    · Posted by u/akkad33
xgdgsc · a month ago
Julia is really simple if you do math related stuff (sounds like from mention of operator overloading ): https://github.com/mossr/BeautifulAlgorithms.jl .
xgdgsc commented on Migrating away from Rust   deadmoney.gg/news/article... · Posted by u/rc00
FacelessJim · 4 months ago
You should give Julia a shot. That’s basically that. You can start with super dynamic code in a REPL and gradually hammer it into stricter and hyper efficient code. It doesn’t have a borrow checker, but it’s expressive enough that you can write something similar as a package (see BorrowChecker.jl).
xgdgsc · 4 months ago
Yes. https://github.com/heyx3/Bplus.jl/blob/master/docs/!why.md This is good writing on this topic.
xgdgsc commented on Ask HN: What less-popular systems programming language are you using?    · Posted by u/fuzztester
brabel · 6 months ago
> It’s not always clear what is meant by “system programming”. I’ve begun writing utility scripts in Julia; it’s practical now because the startup time is vastly improved. These can be run like bash scripts, with a shebang line that invokes Julia with the desired environment (using the --project flag).

I think it is clear enough. The language must have a small or non-existing runtime so it is practical to write systems that do not ship the same fat runtime on every binary. The language must support compiling to binaries, otherwise it really cannot be used by itself for systems. It must provide access to the available Operating System API directly without the need for bindings (to the extent possible, as some OSs only expose the C API;ABI).

What is a system, you may ask. I think you can define that as anything that can run by itself (no runtime) and perform any "low level" operation permitted by the OS.

xgdgsc · 6 months ago
xgdgsc commented on New horizons for Julia   lwn.net/Articles/1006117/... · Posted by u/leephillips
catgary · 6 months ago
It is really easy to write python bindings for Rust, which is probably the easiest way to “consume” a high-performance library (e.g. a physics simulator, data-frames, graphing, a type-checker, etc).
xgdgsc · 6 months ago

u/xgdgsc

KarmaCake day690January 25, 2015View Original