LWN: Comments on "The accelerating adoption of Julia" https://lwn.net/Articles/834571/ This is a special feed containing comments posted to the individual LWN article titled "The accelerating adoption of Julia". en-us Sat, 11 Oct 2025 07:31:31 +0000 Sat, 11 Oct 2025 07:31:31 +0000 https://www.rssboard.org/rss-specification lwn@lwn.net The accelerating adoption of Julia https://lwn.net/Articles/836185/ https://lwn.net/Articles/836185/ callegar <div class="FormattedComment"> The article revived my curiosity and I made some *very initial* steps in taking a look at julia and its ecosystem.<br> <p> Impressions were rather mixed.<br> <p> - on the pros side:<br> <br> some aspects of the language seem great and the way in which some packages make available in a consistent and flexible way the best of what is available in terms of numeric and scientific software looks similarly great.<br> <p> - on the cons one, mentioning two or three<br> <p> the time taken by every interactive `import` or `using` statement is huge and makes python feel like the fastest thing in the world. True, it will be compensated by faster runs, but this &quot;startup&quot; time is really unpleasant.<br> <p> the approach by which the software ecosystem interacts with the rest of your system looks a bit like a takeover. You install juno and atom is changed for anything else you might want to use it at so you cannot have both an IDE and your editor layout arranged as you want for anything else, but you must pick one. You install tools relying on python (e.g., pyplot) and making them cope with the way in which python is setup on your system (e.g. with virtualenvs) will give you the impression that is your system that should actually be adapted to julia... Recently, you also get the impression that to have the golden &quot;standard&quot; environment (you need that if you want to interact with people and be able to give/receive instructions on what to do) you cannot do without Visual Studio...<br> <p> no standard packaging of the latest release on linux (no traditional distro packages, no modern ones such as snaps)...<br> </div> Thu, 05 Nov 2020 09:06:44 +0000 The accelerating adoption of Julia https://lwn.net/Articles/835186/ https://lwn.net/Articles/835186/ spigot Java has had <a href="https://docs.oracle.com/en/java/javase/15/jshell/introduction-jshell.html"><code>jshell</code></a> since JDK 9. I suspect it may be awkward to use when compared with REPLs designed hand-in-hand with their languages, but it exists... Mon, 26 Oct 2020 05:13:18 +0000 The accelerating adoption of Julia https://lwn.net/Articles/835130/ https://lwn.net/Articles/835130/ ssmith32 <div class="FormattedComment"> You&#x27;re stretching any sensible definition of &quot;siloed language&quot; wayyy too far:<br> <p> COBOL: being &quot;business oriented&quot; is a fairly general goal<br> <p> ADA: being designed with security in mind is not the same thing as being designed to address the security problem domain: the goal was a language that worked in many problem domains, all of which had secure functioning as a desired attribute.<br> <p> C: Seriously? A language targeting &quot;problems that can be solved with a assembled program&quot; is about a general purpose as it gets..<br> <p> C++, Java were explicitly general purpose.<br> <p> Even LISP had a pretty general problem domain in mind:<br> <p> &quot;The system was designed to facilitate experiments with a proposed system called the Advice Taker, whereby a machine could be instructed to handle declarative as well as imperative sentences and could exhibit ``common sense&#x27;&#x27; in carrying out its instructions.&quot;<br> <p> I think even the creators of Prolog *hoped* it could somehow solve problems in a wide variety of domains.<br> <p> I think the reverse is probably more true: the authors of a language *think* they found a way to encode solutions that if the world just thought exactly like them, we&#x27;d see that it really is a general purpose language. Stuff like Erlang, ostensibly for a specific use, but the creators obviously suffer under a delusion that it would be really useful everywhere.<br> </div> Sun, 25 Oct 2020 06:31:27 +0000 The accelerating adoption of Julia https://lwn.net/Articles/835115/ https://lwn.net/Articles/835115/ Cyberax <div class="FormattedComment"> <font class="QuotedText">&gt; What specifically are you lacking? And why is this so important? Julia is a dynamic language with a very good REPL environment. If you do REPL style development you normally don&#x27;t really rely on a sophisticated IDE, unless you try to program Julia as you would Java or C#.</font><br> REPL is NOT a replacement for debugger. It can sometimes be abused to do that (by putting manual breakpoints that drop into a REPL shell), but it&#x27;s just not.<br> <p> Debugger use is a skill that many people lack, it can reduce the time to solve problems drastically. This is doubly true for complicated environments where setting up stuff from scratch for REPL is not always practical, especially if you have a complicated reproduction case.<br> <p> <font class="QuotedText">&gt; With Revise, you can also easily add logging functionality such as @debug straight to code you are running, to see what is going on. If you use Git it is quick to remove code changes later, that you used for debugging. This style of debugging often doesn&#x27;t work well in a C++ or Java environment because you need to recompile and reload the code. But you don&#x27;t in Julia.</font><br> Java has supported hot code swap since forever, including fully dynamic changes with <a href="https://www.jrebel.com/products/jrebel">https://www.jrebel.com/products/jrebel</a> <br> </div> Sat, 24 Oct 2020 21:48:52 +0000 The accelerating adoption of Julia https://lwn.net/Articles/835091/ https://lwn.net/Articles/835091/ dvdeug <div class="FormattedComment"> My company offers an online training course to its employees in the IBM mainframe debugger for COBOL, PL/1 and assembly. Not my department, but I think it says something about how much more impact PL/1 had than generally given credit for. It never was the juggernaut IBM wanted, but it got a good 15, 20 year run and a bunch of legacy code is around even today.<br> </div> Sat, 24 Oct 2020 15:30:53 +0000 The accelerating adoption of Julia https://lwn.net/Articles/835064/ https://lwn.net/Articles/835064/ marcH <div class="FormattedComment"> <font class="QuotedText">&gt; Although honestly I don&#x27;t understand why people rely a lot on debuggers when the have a powerful REPL at their disposal.</font><br> <p> Thanks: you just made me realize that the lack of an REPL for languages like C or Java is exactly why I tend to use a debugger to starting &quot;touring&quot; and making sense of a brand new codebase. A debugger is not as flexible as an REPL but it&#x27;s as close as it gets when there is no REPL. A debugger is really not just to find bugs, it&#x27;s a live explorer.<br> <p> Now to be fair I often use a Python debugger to tour a brand new Python codebase too. Either because it&#x27;s not possible to import and use an REPL on a large Python codebase (because too much context and complex dependencies?), or because I don&#x27;t know how to do it...<br> </div> Sat, 24 Oct 2020 04:12:14 +0000 The accelerating adoption of Julia https://lwn.net/Articles/835004/ https://lwn.net/Articles/835004/ niner <div class="FormattedComment"> Raku<br> <p> (now that was easy)<br> </div> Fri, 23 Oct 2020 11:04:30 +0000 The accelerating adoption of Julia https://lwn.net/Articles/834978/ https://lwn.net/Articles/834978/ Cyberax <div class="FormattedComment"> <font class="QuotedText">&gt; How is this hard?</font><br> If you have a method with 4-5 parameters and several candidates, the error message can span a page.<br> </div> Thu, 22 Oct 2020 19:41:24 +0000 The accelerating adoption of Julia https://lwn.net/Articles/834935/ https://lwn.net/Articles/834935/ atomiczep <div class="FormattedComment"> <font class="QuotedText">&gt; The other problem with Julia is that error messages (a dreaded &quot;method not found&quot;) can compete with C++ template errors in being incomprehensible.</font><br> <p> How is this hard? You check the type of the arguments you are trying to pass, and you can lookup what types the given function is able to accept. You should be quickly able to figure out which argument is of the wrong type or whether you need to add another method.<br> <p> This error message is usually quite clear. It may be that you are not accustomed to reading them. Perhaps you could give an example and explain why you find this example hard to read. <br> <p> <font class="QuotedText">&gt; And so far I&#x27;m just not seeing it from Julia, the IDE integrations are not at all polished</font><br> <p> What specifically are you lacking? And why is this so important? Julia is a dynamic language with a very good REPL environment. If you do REPL style development you normally don&#x27;t really rely on a sophisticated IDE, unless you try to program Julia as you would Java or C#. <br> <p> <font class="QuotedText">&gt; debugger support is lacking (remote debugging is a PITA for one thing)</font><br> Could you not debug remotely from within the Julia REPL? I find that debugging in the REPL works quite fine. Although honestly I don&#x27;t understand why people rely a lot on debuggers when the have a powerful REPL at their disposal. You write your code in a functional style with easily testable functions which you can try out in the REPL. If you hit a problem it is usually a question of looking at where the problem happened and try to feed similar data into functions that caused problem.<br> <p> With Revise, you can also easily add logging functionality such as @debug straight to code you are running, to see what is going on. If you use Git it is quick to remove code changes later, that you used for debugging. This style of debugging often doesn&#x27;t work well in a C++ or Java environment because you need to recompile and reload the code. But you don&#x27;t in Julia.<br> </div> Thu, 22 Oct 2020 15:21:50 +0000 The accelerating adoption of Julia https://lwn.net/Articles/834921/ https://lwn.net/Articles/834921/ richiejp <div class="FormattedComment"> FWIW I created a testing/data analyses project in Julia which we use to automatically tag failing kernel tests:<br> <a href="https://gitlab.com/Palethorpe/jdp">https://gitlab.com/Palethorpe/jdp</a><br> <a href="https://archive.fosdem.org/2020/schedule/event/testing_openqa_jdp/">https://archive.fosdem.org/2020/schedule/event/testing_op...</a><br> <p> It&#x27;s a bit complicated for what we actually use it for now, but it works (although I should probably re-implement it in language people understand with a lot of my original assumptions removed). Julia is a great language, but rough round the edges. I spent quite a lot of time fixing bugs in and optimising libraries and decided just to reinvent the wheel on some occasions instead of using an existing library because of the stuff going on there, but I&#x27;m inclined to do that anyway.<br> <p> Would happily use it for the things we usually do in Perl or Python. I can&#x27;t convince anyone else to learn it though.<br> </div> Thu, 22 Oct 2020 13:55:53 +0000 The accelerating adoption of Julia https://lwn.net/Articles/834919/ https://lwn.net/Articles/834919/ NicolasLs <div class="FormattedComment"> I have an even stronger opinion that [X] is useless if it doesn&#x27;t have a good infrastructure around it, where X = Internet, electricity, trains or cars. It&#x27;s a mystery to me why any of them ever got adopted.<br> </div> Thu, 22 Oct 2020 13:23:28 +0000 The accelerating adoption of Julia https://lwn.net/Articles/834910/ https://lwn.net/Articles/834910/ Cyberax <div class="FormattedComment"> It&#x27;s better. Stack traces are more reliable, if still unreadable (full file paths are either missing or wrong). Ahead-of-time compilation (PackageCompliler) is there, but it&#x27;s not quite completely robust.<br> <p> I wouldn&#x27;t start a serious project in Julia, but it&#x27;s great for notebook-style development.<br> </div> Thu, 22 Oct 2020 04:42:16 +0000 The accelerating adoption of Julia https://lwn.net/Articles/834909/ https://lwn.net/Articles/834909/ leephillips <div class="FormattedComment"> That’s a six-year-old article about an alpha version of the language. <br> </div> Thu, 22 Oct 2020 02:32:32 +0000 The accelerating adoption of Julia https://lwn.net/Articles/834907/ https://lwn.net/Articles/834907/ devkev <div class="FormattedComment"> My only exposure to Julia is this post <a href="https://danluu.com/julialang/">https://danluu.com/julialang/</a> from the end of 2014 (or 2015, with the updates), so I&#x27;m wondering if anyone knows how things might have changed since then?<br> </div> Thu, 22 Oct 2020 01:32:45 +0000 Julia notebook https://lwn.net/Articles/834903/ https://lwn.net/Articles/834903/ walters <div class="FormattedComment"> Sounds like <a href="https://en.wikipedia.org/wiki/Hysteresis">https://en.wikipedia.org/wiki/Hysteresis</a> ?<br> <p> (see also <a href="https://blog.verbum.org/2020/08/22/immutable-%E2%86%92-reprovisionable-anti-hysteresis/">https://blog.verbum.org/2020/08/22/immutable-%E2%86%92-re...</a> )<br> <p> </div> Wed, 21 Oct 2020 23:53:55 +0000 The accelerating adoption of Julia https://lwn.net/Articles/834902/ https://lwn.net/Articles/834902/ leephillips <div class="FormattedComment"> In graduate school (1980s, physics) one astronomer, our resident computer expert, was pushing PL/1 hard. He believed it was the perfect language and would rule the future. I was recommending APL to everyone. Of course, eventually, I wound up using Fortran for all my simulations, as did everyone else.<br> </div> Wed, 21 Oct 2020 23:19:39 +0000 The accelerating adoption of Julia https://lwn.net/Articles/834899/ https://lwn.net/Articles/834899/ jkowing <div class="FormattedComment"> <font class="QuotedText">&gt; Oh yes, possibly PL/1 which was meant to be all things</font><br> <p> Picking classes to take with no guidance, I remember (long ago) taking Programming Language 1 offered in the computer science department at my college. I was thinking - hey - this sounds like THE programming language to know - after all, it is number 1. I was feeling pretty good about myself. Then, after completing the course, I was told that will be the last time they offer it and it was removed from the curriculum. And that was the last of my PL/1 programming.<br> <p> Oh well. At least my C (which doesn&#x27;t sound very important at all - and certainly must not as good as fancy and powerful as B and A) still keeps going strong!<br> </div> Wed, 21 Oct 2020 22:15:59 +0000 The accelerating adoption of Julia https://lwn.net/Articles/834883/ https://lwn.net/Articles/834883/ Cyberax <div class="FormattedComment"> OK, it would be useless for me. We have a fair amount of computation code here and I checked Julia for a possible replacement for Python and C++. It didn&#x27;t work that well.<br> <p> Whily notebook-style development is nice, the traditional workflow with unit tests, continuous integration, code coverage analysis, etc. was severely underwhelming.<br> </div> Wed, 21 Oct 2020 17:03:55 +0000 The accelerating adoption of Julia https://lwn.net/Articles/834879/ https://lwn.net/Articles/834879/ Wol <div class="FormattedComment"> <font class="QuotedText">&gt; I don&#x27;t care for the idea of a siloed language</font><br> <p> Name me just ONE language that was *conceived* as a general-purpose language. Okay, many have morphed into general purpose languages, but ...<br> <p> COmmon Business Oriented Language<br> FORmula TRANslation<br> ADA was designed as a secure language<br> C was designed as glorified assembler for system stuff<br> Beginners All-purpose Symbolic Instruction C??? okay it says all-purpose but it also says beginners ...<br> Pascal was designed as a teaching language - Modula-2 was a more all-purpose evolution<br> APL and J were mathematical notations intended to be evaluated by a computer<br> <p> That&#x27;s SEVEN (or eight) siloed languages off the top of my head ... oh yes, add another - one of my favourites - DataBASIC for programming databases.<br> <p> As I said, can you name ONE that was DESIGNED as a general purpose language? Oh yes, possibly PL/1 which was meant to be all things to all men, and mostly was nothing to anybody.<br> <p> Cheers,<br> Wol<br> </div> Wed, 21 Oct 2020 16:14:38 +0000 The accelerating adoption of Julia https://lwn.net/Articles/834878/ https://lwn.net/Articles/834878/ auc <div class="FormattedComment"> I tend to see Julia as Python with the GIL issue solved (and some fancy features on top). It kind of might eat Python&#x27;s lunch in the scientific community.<br> </div> Wed, 21 Oct 2020 16:07:55 +0000 The accelerating adoption of Julia https://lwn.net/Articles/834875/ https://lwn.net/Articles/834875/ leephillips <div class="FormattedComment"> What is a siloed language? Julia is used in areas aside from scientific computing; not surprising, as it is a general purpose language. Although you shouldn’t write a driver in it.<br> </div> Wed, 21 Oct 2020 15:10:53 +0000 Julia notebook https://lwn.net/Articles/834869/ https://lwn.net/Articles/834869/ leephillips <div class="FormattedComment"> I will talk more about this in the sequel article, but, briefy, although they have a superficial resemblence, the two notebooks work profoundly differently. <br> </div> Wed, 21 Oct 2020 15:07:36 +0000 The accelerating adoption of Julia https://lwn.net/Articles/834863/ https://lwn.net/Articles/834863/ droundy <div class="FormattedComment"> I do scientific computing, and the fact that Julia is primarily for scientific computing is actually the biggest this that has turned me off from it. I don&#x27;t care for the idea of a siloed language. If it&#x27;s not a good language, I don&#x27;t want to teach it to my students, and if it is a good language, why doesn&#x27;t anyone want to use it for non scientific programming? It&#x27;s not like scientists are the only ones who want their code to run fast, or are the only ones who want programming to be easy and fast.<br> </div> Wed, 21 Oct 2020 14:51:52 +0000 Julia notebook https://lwn.net/Articles/834830/ https://lwn.net/Articles/834830/ droundy <div class="FormattedComment"> That is really encouraging. The thing that I&#x27;ve always hated about Mathematica-like notebook systems is precisely the fact that their output depends on an invisible history of user interactions.<br> </div> Wed, 21 Oct 2020 14:44:57 +0000 The accelerating adoption of Julia https://lwn.net/Articles/834827/ https://lwn.net/Articles/834827/ Paf <div class="FormattedComment"> Well, it’s primarily for scientific computing.<br> <p> If you don’t do that (and probably most lwn readers do not), then it’s not really for you. That’s fine. I’m certainly not going to write a driver in it.<br> </div> Wed, 21 Oct 2020 14:02:58 +0000 Julia notebook https://lwn.net/Articles/834826/ https://lwn.net/Articles/834826/ Paf <div class="FormattedComment"> Given the apparent connections to the existing Jupyter project, can you say why this wasn’t done as an extension to Jupyter?<br> </div> Wed, 21 Oct 2020 14:00:59 +0000 The accelerating adoption of Julia https://lwn.net/Articles/834825/ https://lwn.net/Articles/834825/ BirAdam <div class="FormattedComment"> I forgot to note, this particular article was not of the ad type that I have seen elsewhere, I am just at this point somewhat repulsed by the language in general due to ad-like news articles elsewhere.<br> </div> Wed, 21 Oct 2020 12:50:48 +0000 The accelerating adoption of Julia https://lwn.net/Articles/834824/ https://lwn.net/Articles/834824/ BirAdam <div class="FormattedComment"> I have been seeing &quot;news&quot; about Julia out of nowhere recently, and a lot of it seems like cleverly disguised ads. I personally do not see any reason to use Julia, and I generally don&#x27;t care much about hypelangs.<br> </div> Wed, 21 Oct 2020 12:49:21 +0000 The accelerating adoption of Julia https://lwn.net/Articles/834818/ https://lwn.net/Articles/834818/ rsidd Indeed. And the infrastructure is growing rapidly -- right now almost everything I want seems to be there in terms of libraries, often much better than python. For the IDE, I have been using jupyter; but will check out pluto. <P> My workflow is, roughly: <UL> <LI>prototype quickly in jupyter <LI>save the "done" functions to a library file; delete from the jupyter notebook and import the library <LI>at the end of the day, if I want a commandline program, just write it as a wrapper around the library file. </UL> <P> It looks like pluto will make this sort of iterative development even easier. On my next-to-try list. <P> And the performance, for such an easy-to-write language, is incredible. And when it isn't, the Julia people take notice. See <A HREF="https://biojulia.net/post/seq-lang/">this</A> for a very interesting example: Julia folks got their biosequences package to run as fast as Seq, a highly optimised special purpose language for bioinformatics (helped by the transparency and accessibility of the Seq folks, to their great credit). Wed, 21 Oct 2020 08:05:29 +0000 Julia notebook https://lwn.net/Articles/834816/ https://lwn.net/Articles/834816/ rsidd <div class="FormattedComment"> I love Julia; I use jupyter; julia with jupyter is buggy (randomly disappearing cell content; I&#x27;m not able to reproduce predictably). Python with the same jupyter install is fine. So I wonder how actively the julia frontend is being used by julia folks. I didn&#x27;t know about pluto until now. Will definitely give it a try. <br> <p> </div> Wed, 21 Oct 2020 07:54:02 +0000 Julia notebook https://lwn.net/Articles/834813/ https://lwn.net/Articles/834813/ tnoo <div class="FormattedComment"> This sounds very promising. Personally, I don&#x27;t like the Jupyter notebooks, mainly for the reasons outlined in this thread. The sad thing is, that Pluto will work for one language only, and thus split the development efforts and communities again.<br> <p> Now, I&#x27;m looking very much forward to your next article.<br> <p> Thanks<br> </div> Wed, 21 Oct 2020 06:25:31 +0000 The accelerating adoption of Julia https://lwn.net/Articles/834808/ https://lwn.net/Articles/834808/ gerdesj <div class="FormattedComment"> &quot;I have a rather strong opinion that a language is useless if it doesn&#x27;t have a ...&quot;<br> <p> Take a long hard look at that statement and consider why it might be bollocks. Julia is a programming language. It was conceived, designed and coded by some people who want to do &lt;something&gt;. If you don&#x27;t like it then please feel free to not contribute.<br> </div> Wed, 21 Oct 2020 00:29:34 +0000 Julia notebook https://lwn.net/Articles/834796/ https://lwn.net/Articles/834796/ leephillips <div class="FormattedComment"> Well, now I don’t have to write it. You just concisely described the main point!<br> </div> Tue, 20 Oct 2020 21:52:06 +0000 Julia notebook https://lwn.net/Articles/834795/ https://lwn.net/Articles/834795/ leephillips <div class="FormattedComment"> I wrote about Jupyterlab here at <a href="https://lwn.net/Articles/748937/">https://lwn.net/Articles/748937/</a>.<br> <p> As you will learn in the followup article, there are some longstanding shortcomings in Jupyter notebooks, nice as they are, that are fixed in Pluto. Some of the differences go deep enough that I don’t think Jupyter would have been likely to evolve in this direction.<br> </div> Tue, 20 Oct 2020 21:50:02 +0000 Julia notebook https://lwn.net/Articles/834791/ https://lwn.net/Articles/834791/ garrison Pluto is an important innovation beyond Jupyter notebooks: as the project describes, it is "reactive - when changing a function or variable, Pluto automatically updates all affected cells." <blockquote> Pluto offers an environment where changed code takes effect instantly and where deleted code leaves no trace. Unlike Jupyter or Matlab, there is no mutable workspace, but rather, an important guarantee: <blockquote> At any instant, the program state is completely described by the code you see. </blockquote> No hidden state, no hidden bugs.</blockquote> Pluto works the way I always wished Jupyter would work, and as a bonus, its notebooks are plain text files, easy to store and work with in git (including git-diff). I expect the forthcoming LWN article will explore the differences with Jupyter in depth. Tue, 20 Oct 2020 21:39:29 +0000 Julia notebook https://lwn.net/Articles/834790/ https://lwn.net/Articles/834790/ joib <div class="FormattedComment"> I haven&#x27;t heard of Pluto before, but from a brief look at the github page, it does seem to have slightly different goals than jupyter.<br> <p> Jupyterlab is just the next generation web UI for jupyter. All the other jupyter infrastructure remains the same.<br> </div> Tue, 20 Oct 2020 21:35:27 +0000 Julia notebook https://lwn.net/Articles/834788/ https://lwn.net/Articles/834788/ tnoo <div class="FormattedComment"> <font class="QuotedText">&gt; new computational notebook for Julia, called Pluto, that is akin to Jupyter notebooks. </font><br> <p> This is ironic, since the &quot;Ju&quot; in &quot;Jupyter&quot; stands for &quot;Julia&quot; (actually Julia, Python, R). Is there a NIH syndrome at work?<br> <p> And now there&#x27;s even Jupyterlab. Why are they splitting efforts?<br> </div> Tue, 20 Oct 2020 21:09:59 +0000 The accelerating adoption of Julia https://lwn.net/Articles/834781/ https://lwn.net/Articles/834781/ Cyberax <div class="FormattedComment"> I have a rather strong opinion that a language is useless if it doesn&#x27;t have a good infrastructure around it. And so far I&#x27;m just not seeing it from Julia, the IDE integrations are not at all polished and debugger support is lacking (remote debugging is a PITA for one thing).<br> <p> The other problem with Julia is that error messages (a dreaded &quot;method not found&quot;) can compete with C++ template errors in being incomprehensible.<br> <p> </div> Tue, 20 Oct 2020 18:42:23 +0000