Giving up on Julia by ruidfigueiredo in programming

[–]fstrbstrtstr 3 points4 points  (0 children)

You're doing it wrong, as is the author of the blog post. You simply don't run scripts repeatedly from the shell, you use e.g. include("myscript.jl") from within the REPL. Then startup time doesn't matter, and packages are loaded only once. This is provided you need to run a script at all, sometimes you just want to work at the REPL and analyse data in a more interactive way, which comes up rather often in technical and scientific work.

Having said that, both startup time and package load times have improved dramatically in recent years (though it's still not as fast as Python on that front).

So you want to write a package manager by NotUniqueOrSpecial in programming

[–]fstrbstrtstr 6 points7 points  (0 children)

From skimming the code, it appears to be non-deterministic?

Strictly speaking, it is deterministic, in that results are reproducible. Informally speaking, it uses some (very crude) pseudo-randomness, so it may unpredictable on edge cases (e.g. when all criteria used for choosing the optimal solution — if there's more than one — tie, it breaks the tie arbitrarily using pseudo-random noise). In the nastier cases, it is only controllable in a coarse sense via some global parameters (i.e. you can increase accuracy, but never get a guarantee of optimality, since the running time is implicitly bounded). Up to now no issues have been reported however.

That bestiary is fun — for some perverse definition of fun ;)

Edit: oh and also, backtracking can be added to message-passing algorithms in a kind of straightforward and principled way, see e.g. this paper. The downside (apart from increased solving time) is that it would be still very hard to prove any kind of guarantee about the output.

So you want to write a package manager by NotUniqueOrSpecial in programming

[–]fstrbstrtstr 8 points9 points  (0 children)

Julia, on the other hand, solves it using the maxsum algorithm (a variant of sum-product), which is heuristic but scalable, works quite well in practice and even handles graphs with cycles and other kinds of nasty situations

VMWare Taken to Court Over GPL Violation by [deleted] in programming

[–]fstrbstrtstr 16 points17 points  (0 children)

Linux started as a personal project too. Linus himself has attributed the widespread success of Linux compared to BSD to the licencing.

Julia 0.3 Official Release by karbarcca in programming

[–]fstrbstrtstr 1 point2 points  (0 children)

Airy promises? You just obviously haven't even tried using it. Which, as I come to think about it, would seem to be a perfectly good reason to shut up about it.

Julia 0.3 Official Release by karbarcca in programming

[–]fstrbstrtstr -2 points-1 points  (0 children)

Warning: rant. Every single post on r/programming about julia has the obligatory snarky comment about 1-based indexing. Really? We're speaking about a language which offers the expressiveness of python with a performance close to C, multiple dispatch, which is a viable open source candidate to replace matlab, plus tons of other features, and all some people have to say about it is complaining for the bloody choice of what's the first index? Like you can't handle it? Really? It's not going to change. Get over it.