What do you think about Julia? Will it replace R or Matlab in some of their usecases? What do you think is an appropriate use for the language? I'm particularly interested in hearing if someone made the switch from R and if yes, why.
faster for large datasets - if needed, has REPL, can call R if you need functions from your packages, seems to also compile on Open and FreeBSD, community seems eager to produce useful packages, plotting tools seem to be capable, syntax doesn't seem to be a mishmash of ideas like R, parallelism if you need it python-style indentation, package system uses github, function overloading, there's a C transpiler, not made to be general-purpose, dynamic typing, not 1.0 yet takes actually longer for small amounts of data (because of JIT compiler) than similiar slower languages, development seems to break packages as of now
On a sidenote: their community guidelines seem reasonable, but I've become allergic to those. Don't sexualize the Julia, can't make this up
I always thought that they are trying to replace Python.
That seems like good writing tip for non-english people. Julia could be female name but in context of programming language you want to use 'it' and not 'her' when you write.
Jack Wood
For some reason I am suspicious of any project affiliated with NumFOCUS as they have to automatically accept CoC if they want to be part of that "community". Personally I use GNU Octave. Julia doesn't convince me enough to switch to her.
Their focus seems to be numerical computing, from what I've read - and that seems to be a lot more reasonable goal. But it can certainly be used for something else. You can interface with a lot, but why not use Guile then, or something. Didn't seem to me that that's what they mean - but I could be wrong. I just thought it was more funny than anything.
Seems to be even slower than R is, but with a larger focus. I didn't really look into it, tbh. For a free Matlab clone it's probably fairly good.
I said it seems reasonable, although it is better to be cautious with CoCs in general. If you have no idea why that's the case, then I can't help you. Thanks for your informative post, you faggot.
I remember when they announced, but the momentum quickly dropped off as the hype died down. To be honest, I haven't heard it mentioned for a couple years now.
Connor Cooper
>(((diversity director))) is doing introduction videos to the language At one point, she actually called a tildi "this squiggly thing"
but what happened to Rust? seems fine, everybody likes it, and things get done in it.
Charles Thomas
The author of pic related will merge his book with the community driven Learning Julia the Hard Way, since Manning said they will not publish it.
I see nobody of you has actually read -or even found - the Julia community guidelines. While I'm not a fan of those, they do seem reasonable. It's nowhere near the insanity that is the FreeBSD CoC for example.
How about you start discussing the subject.
Development is active and it's usable as it is. There are packages for a lot of things - it just didn't hit 1.0 yet. It doesn't have as broad of a focus as, let's say, Rust, but that's not a bad thing as I see it. That might have something to do with not hearing about it.
go away please C and C++ can do everything here with less resources and headaches
John Stewart
C and C++ have a REPL now?
Xavier Torres
...
Blake Thompson
I thought I'd summed up enough about the language in the OP to talk about it - but it turns out nobody reads it.
Despite the syntax looking like a bit of a mess - analyzing data in R and creating good looking plots is really easy and you have the benefit of immediately seeing the results. A REPL is good for these kind of things. If you don't have to do stringparsing over huge amounts of the same kind of data with the same functions over and over again, I don't see the benefit of C for this usecase. You can use gnuplot, if you really want to - but what's the point here? Try evaluating simple factorial DoE stuff using C and gnuplot and then post again. The plots are a useful tool to see correlation in your data - so doing it on the fly is really a benefit.
The reason for the slow first time run seems to be the JIT compiler - subsequent runs are much faster, because it only has to compile once. They even have extensive documentation on how to improve performance when writing programs (and also stuff on the JIT warmup), so I don't think that performance caveats is something they will ignore during development. The manual states that I'm not sure if it's fair to say "well, he also didn't add the time it took for C to compile", but he completely disregarded what Julia actually is. He takes compilation time into the equation. They have micro benchmarks at julialang.org/benchmarks/ - which compare already compiled programs if you're interested. Very subjective if you ask me. I think OCaml looks great, others might be turned off by even a simple thing like +. operator for floats. Some like Go, some don't. Let's not even go into Rust territory. Looks good enough for me, for what it is, but that's subjective too. I personally don't like the pythonesque indentation syntax, but many seem to really have a thing for it. I'd argue exactly that. It does not use pointers afaik. Surprise. I don't know what else to say.
He goes on about other things after that, but it looks like he wants to replace Python with Julia and is surprised that the language doesn't accomodate everything he wants from Python. I never recommended or suggested Julia for that, I explicitly said I'm interested in replacing R (since it can also use its libraries) with it, or Matlab, if that's what you use. I even stated in the OP that it doesn't seem to be intended as a general purpose language.
THEN DON'T FUCKING NAME IT 'JULIA', YOU'RE BEGGING PEOPLE TO CALL IT 'HER' AND MAKE LEWDS
Nathaniel Reed
They're baiting for sure, they want to manufacture some outrage that badly.
Levi Gutierrez
I tried to compile on OpenBSD, but it came to a stop on the dependency of libunwind - which in turn seems to need a libc extension that will probably not find its way into OpenBSD anytime soon. So unless someone here has found a way I'm not aware of, it can't compile on OpenBSD. Seems to work out of the box on FreeBSD though, so that's a plus.
Well, not limitless portability it seems.
Isaiah Morris
It seems nice, but as with many other things, what matters is the time and place.
People who go into Maths and the like go with Matlab/Octave (because they need it but "real" programming isn't something they want to indulge themselves in), data scientists go for python, and the people in the middle go for python+numpy+matplotlib and all the other gorillion libaries I don't know about. When all that matters is the result and not the way or time needed to get there, which is the case in these fields, runtime does not matter.
Both Julia and R will die in the next 5 years, python3 will rise and in 5-10 years people will complain about it how they do with Java for dev and JS for webdev now.
Ayden Morris
Actually, most of these things can be done in all of the languages: it seems to be a matter of what is taught first. And maybe personal preference - if there are even attempts to try out something else.
R is actually pretty good for analysis of numerical data, conveniently manipulating datastructures and creating good looking plots easily, despite its downsides. It has repositories and lots of mirrors with a shitload of packages - they are usually well enough documented, so you don't have to do a lot by yourself if you don't want to. It's also a plus that many statisticians use it, because they can always provide examples to what you want to know (if that is the area you are likely to have some questions in). They syntax is weird - I don't really like it - but it's easy to read. I know a lot of people that use it and the development seems pretty active - so I have to wonder, on what basis do you predict a languages death?
For Julia it's too early to say, I think. The idea seems to have some potential. Intel has forked it to have it compile on their own compilers and they have made a few packages available.
Users of Matlab/Octave/R/numpy need a really good incentive to change, which depends on what you're doing with the language. It can already interface with Python and R stuff, so I guess that's a plus for transitioning.
Creators are retards that know nothing about programming languages. Claimed to have dependent types, didn't even know what the term meant. Shitty meme language trying to sell itself to graduate students in the hard sciences.
Asher Garcia
when will we have language transpiles that allows Python3 R? Or any language with similar enough syntax/uses? Haxe and Nim are already there with some languages, people should try making transpiled Domain-Specific Languages.
Jaxson Davis
Why are multiple people in this thread saying Julia has Python-style indentation syntax, when it doesn't? It has ALGOL-like syntax. Like sh.
Gabriel Bailey
Julia can already access R packages and call Pythyon functions. And R, Python, MATLAB should have similiar interfaces, I think. So what would the point of transpiling be, if the languages are all domain specific anyway? The functions, that you really need, you can call from other languages already - why change the language then? It seems like the ecosystems are what makes these languages attractive. Not their speed, or syntax, or whatever. Actually I'd guess that's why people still use Python for numerical computation and MATLAB for everything that they can. They weren't made for that. It's just that it is convenient and you don't have to learn a new language.
Yeah, true. Indentation is not significant. No {}, but tabs just looks bewildering.
Noah Lee
Which reality do you live in exactly user? R has established a critical mass of libraries at this point and it did it before scipy. With stuff like ggplot and knitr it's not going anywhere anytime soon.
Curious what you think R's downsides are.
Nathan Perez
Maybe I don't math hard enough but I don't get the point of these heavily math-based 'programming' languages
Caleb Reyes
They're for doing math
Elijah Carter
Ad hoc the following comes to mind: It's slow (only really matters for computation intensive stuff, for loops etc., large amounts of data, probably not that bad if you mainly use REPL for statistics and plots), I subjectively find the syntax not to be that nice, subjectively don't like implicit type conversion (may or may not lead to unexpected problems), may encourage shitting up the workspace (again, subjective). It probably depends on what you're doing. There's probably more, this is just what immediately came to mind.
I don’t get why R and Matlab are popular when we have J. I get how Simulink is useful but for math? Maybe because any old brainlet can use Matlab and J takes a bit of thought.
Caleb Kelly
Excellent ecosystem and they're often the first languages people come in contact with. Also code is somewhat easy to read and reuse. Combine that and students of anything not CS don't see a reason to change. CSS/JS abominations are also not the best that could be possible, but the majority of people like it how it is. R has the additional plus of being free. That's not necessarily a downside
I've not even once heard of J before, to be honest. Syntax looks not exactly easy on the eyes, on first glance. How's array handling?
All the important stuff runs in C. Agreed about the syntax and type conversion though, very annoying someitmes.
Colton Davis
Well having a standard language ran by a benevolent dictator sure sound nice, but Py3, R and Julia all have different syntax from different eras. "One language to rule them all in education" sounded impossible, so a universal language/package set that transpiles is the next best thing. youtube.com/watch?v=ecIWPzGEbFc "Uncle" Bob Martin - "The Future of Programming"
I'm taking linear algebra with the professor being one of the designers and he's making us use it and it's b a d.
James Brown
Can you elaborate?
Wyatt Robinson
Finally someone who has used the language to some degree - please tell more
Jace Wood
I do machine learning for my job and everyone uses Python. Facebook originally launched Torch based on Lua but then release PyTorch later based on Python.
I know a lot of Zig Forums hate Python but one thing people need to understand is that at a purely technical level, Python and C work very well together. This is because Python is implemented directly in C, so there is no overhead when talking between Python and C. For example a numpy array is literally an extension of the C struct that implement a Python object (PyObject), see docs.scipy.org/doc/numpy-1.13.0/reference/c-api.types-and-structures.html#new-python-types-defined. For this reason it's really natural to do numeric programming by mixing Python and C. This is what numpy, scipy (which also wraps some fortran), PyTorch and TensorFlow all do.
Now Julia takes a different approach, which is to use the same language for high and low level (numeric) code. While generally it's good to use the same language for everything, for the reasons I outlined above, mixing Python and C is very computationally efficient and so the advantage of Julia isn't as great as you might think. On the other hand, Julia will never have the maturity of Python or C so it will lose out as both a high level and low level language.
tl;dr Julia will never compete with Python ad a high level language or C as a low level language. While using a single language for everything is itself an advantage, Python and C work so well together that this advantage is small.
Austin Gutierrez
Yes. And?
Christopher Morales
im not an academic or scientist, i just want to screw around, calculate really simple correlations between stuff (data from google or oecd etc) where to start? really 101 stuff, im only familiar with programming at a basic level (unity stuff)
Ryder Brooks
The whole point of giving something, be it a car, gun, guitar, ship or whatever the fuck, a female name is because you care for the object, if you don't want that don't fucking give it a human name and absolutely not a female name. People don't sexualize C, nor do they sexualize Pascal (although he may have been sexy, can't recall his face). These kind of faggots want people to "sexualize" it just so they can be "nice guys" and call other people "bad". I had no opinion on Julia before, but they can fuck right off. Bunch of fucktards, doubt they could even overflow Julia's buffers.
If most of what you want is related to statistics learn R. It's a weird programming language since it's made by statisticians, but any statistical method you can think of is there.
Just skipped through it now. youtu.be/4igzy3bGVkQ?t=4195 youtu.be/4igzy3bGVkQ?t=4346 Language is trash made for women and pajeets. LuaJIT is better in EVERY WAY. REEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
Alexander Taylor
No, it won't. Not much. I've used R; Julia isn't a replacement for R by any means.
Mason Ramirez
I mean, are you going to prove them wrong or just spaz out like Zig Forumstards usually do
Dominic Harris
What usecases? Why? Your whole post contains no information at all.
Aiden Gomez
R (professional) > SciPy (simple) > MATLAB (proprietary) > Octave (slow) > Julia (Pozzed)
* Wolfram Alpha > R (professional) > SciPy (simple) > MATLAB (proprietary) > Octave (slow) > Julia (Pozzed) Fixed that for you
Kevin Moore
Why is speed of execution one of Python's setbacks when it's the second-highest according to the execution speed column?
Ian Fisher
What annoys me the most is their smugness about it. No doubt she has a raw back from all the self-patting.
Alexander Williams
dropped, jewhub
Asher Scott
Their defined points, or what those numbers should be representing, aren't equally distanced at all and they forgot to tell you. That, or it's just a subjective chart and should only be used as a basic guideline. You can choose one. Their keylibraries probably also don't make much sense. Maybe they used python extensively and had only a general idea of what makes those other languages. ?? In reality it is not that hard.
I don't want to say the chart is entirely worthless, but if you're interested in the languages you're better off forming your own opinion instead of relying someone that didn't even put much thought into his "scoring" system.
David Reed
It turns out that Julia is a HORRIBLE language. The optimizations are horrible and plain lies. In addition, the library they recommend using for SIMPLE PLOTTING takes over 15 seconds to initialize.
Leo Myers
It turns out we figured out why and when that happens weeks ago
Gavin Morales
Stop shilling a language that is just going to die anyway
Joseph Diaz
It uses git, git has nothing to do with github you stupid faggot.
Robert Barnes
I'm not shilling anything. I was asking very specific questions about it and a few good answers were drowning in a pool of poorly executed shitposts by people that, more often than not, didn't even have the attentionspan to read the OP. Even now, you weren't even able to contribute something funny, you're just wasting everyones bandwidth. Why are you even on this board? Theres, /b/, 4chan and reddit.
Aiden Rivera
Source?
Grayson Collins
This may not be the correct channel to ask, and if not I apologise, but can a mathfag make a fractal that looks like a vagina for fuck's sake?
Isaiah Wright
it says github, can't you read you dumb fag? what a lousy language, it will be dead in 3 years
Andrew Hill
Of course, you'll be the hero of the CoC community. What you can't make is a penis, because that would be harassment and patriarchal dominance whatever.
Jaxon Rivera
No. Just No
Luke Taylor
It's possible for proprietary software to be better in all other regards. It's reasonable for someone not to value the freedom status of software (much).
Xavier Clark
This about as much a naive misrepresentation as the chart above your post. Your assessment is based upon feels and therefore worthless.
True, but there's limits on how fast that can make R. I think there's an article on the Julia wiki that talks about this and is generally applicable (think about what that means for loops). I think it was somewhere in the optimization article and also compares to how things are done in R. There's interesting stuff to learn there, even if you don't intend to use their language. The wiki seems pretty good.
Colton Ward
This is why the world is beautiful, and Julia is not.