Julia

Jacob Gonzalez
Jacob Gonzalez

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.

Good
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
Subjective
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
Bad
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.
In particular, do not sexualize the term "Julia" or any other aspects of the project. While "Julia" is a female name in many parts of the world, the programming language is not a person and does not have a gender.
Don't sexualize the Julia, can't make this up

Attached: julia.png (33.93 KB, 800x541)

Other urls found in this thread:

youtube.com/watch?v=4igzy3bGVkQ
zverovich.net/2016/05/13/giving-up-on-julia.html
github.com/root-project/cling
julialang.org/benchmarks/
docs.julialang.org/en/stable/manual/performance-tips/
docs.julialang.org/en/stable/manual/noteworthy-differences/
youtube.com/watch?v=ecIWPzGEbFc
skillsmatter.com/skillscasts/2323-bobs-last-language
github.com/jarble/transpiler
docs.scipy.org/doc/numpy-1.13.0/reference/c-api.types-and-structures.html#new-python-types-defined.
youtu.be/4igzy3bGVkQ?t=4195
youtu.be/4igzy3bGVkQ?t=4346

Cameron Adams
Cameron Adams

Will it replace R or Matlab in some of their usecases?
I always thought that they are trying to replace Python.

Don't sexualize the Julia, can't make this up
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
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.

Easton Thomas
Easton Thomas

<coc-whiners can't go 5 mintues without bitching
wew neo/tech/ lmao

Attached: 9d31051195ba3ac6f31be57865b4c8f1a7c6d8a0dee0ea14a743babeeb81ef87.jpg (78.4 KB, 851x623)

Daniel Ramirez
Daniel Ramirez

I use mawk and I have no shame.

Joseph Peterson
Joseph Peterson

I always thought that they are trying to replace Python
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.
Julia could be female name but in context of programming language you want to use 'it' and not 'her' when you write
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.
GNU Octave
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.

Attached: 25649846549.jpg (24.69 KB, 482x490)

Aiden Barnes
Aiden Barnes

If you have no idea why that's the case, then I can't help you.
cool reddit-tier argument, smooth brain.

William Price
William Price

You can shove as many CoCs down your throat as you want - how about you stop derailing and tell me what you think about Julia?

Attached: 1450692975126.jpg (46.82 KB, 275x266)

Alexander Garcia
Alexander Garcia

youtube.com/watch?v=4igzy3bGVkQ
Skip to 2:58

Jace Garcia
Jace Garcia

Oh god, yet another CoC lang

Lincoln Gutierrez
Lincoln Gutierrez

is it the most important part of a language?

Gavin Gutierrez
Gavin Gutierrez

lol
Comments are disabled for this video.
lol * 2

David Hill
David Hill

whoops

Jose Green
Jose Green

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
Connor Cooper

(((diversity director))) is doing introduction videos to the language
skip ahead to random points in video
At one point, she actually called a tildi "this squiggly thing"

Chase Watson
Chase Watson

CoCs destroys project.
See: Ruby, Red, Rust, NodeJS

Joseph Fisher
Joseph Fisher

but what happened to Rust?
seems fine, everybody likes it, and things get done in it.

Charles Thomas
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.
To be honest, I haven't heard it mentioned for a couple years now
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.

Attached: Csefalvay-Julia-MEAP-HI.png (137.36 KB, 720x903)

Anthony Sanders
Anthony Sanders

promo and talk about under the table languages nobody but a niche group uses
go away please
C and C++ can do everything here with less resources and headaches

John Stewart
John Stewart

C and C++ have a REPL now?

Xavier Torres
Xavier Torres

tildi

Blake Thompson
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.

C and C++ can do everything here with less resources and headaches
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.

You don't know what you're talking about.

Attached: 345234589347953.jpg (16.54 KB, 650x366)

Christopher Cook
Christopher Cook

They're not trying to replace python, just scipy.

Christopher Hall
Christopher Hall

Father, forgive them, for they do not know what they say.

Christian Walker
Christian Walker

zverovich.net/2016/05/13/giving-up-on-julia.html
Thoughts?

Ian Wright
Ian Wright

github.com/root-project/cling

Jayden Cruz
Jayden Cruz

performance
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
On the first call (@time f(1)), f gets compiled. (If you've not yet used @time in this session, it will also compile functions needed for timing.) You should not take the results of this run seriously.
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.
syntax
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.
1 based indexing
one might argue that Julia is not intended to be a general-purpose programming language, but a language for numerical computing
I'd argue exactly that. It does not use pointers afaik.
A little mistake in your C call and you just happily segfaulted
continues to argue how interfacing with C may be unsafe
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.

Here's the documentation on performance I was talking about. May be an interesting read even if you don't intend to use the language:
docs.julialang.org/en/stable/manual/performance-tips/

Attached: julia-Plotsjl.gif (5.73 MB, 600x400)

Jordan James
Jordan James

C and C++ can do everything here with less resources and headaches
less resources, and headaches

Levi Reed
Levi Reed

In particular, do not sexualize the term "Julia" or any other aspects of the project. While "Julia" is a female name in many parts of the world, the programming language is not a person and does not have a gender.
Don't sexualize the Julia, can't make this up
THEN DON'T FUCKING NAME IT 'JULIA', YOU'RE BEGGING PEOPLE TO CALL IT 'HER' AND MAKE LEWDS

Nathaniel Reed
Nathaniel Reed

Intro to Julia
IntroJulia
Entering Julia
Inside Julia
They're baiting for sure, they want to manufacture some outrage that badly.

Levi Gutierrez
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.

libunwind project
The primary goal of this project is to define a portable and efficient C programming interface (API) to determine the call-chain of a program.
Well, not limitless portability it seems.

Isaiah Morris
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
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.

They made a comparison for people considering to give it a try - at least that's what I think the audience is:
docs.julialang.org/en/stable/manual/noteworthy-differences/

Julia and R will die
Python3 will rise
Remember when everyone used Perl for scripting? You never know what's next. And Python wasn't exactly made for numerical computing.

Attached: matpyjl.png (50.77 KB, 950x683)

Carter Howard
Carter Howard

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
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
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
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
Noah Lee

data scientists go for python
R will die in the next 5 years
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
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
Caleb Reyes

They're for doing math

Elijah Carter
Elijah Carter

R's downsides
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.

Ian Davis
Ian Davis

read it; didn't care-- wrote what I want

Owen Gomez
Owen Gomez

I didn't pretend to retarded, I AM actually retarded
Well, congratulations.

Attached: 1439395645543.jpg (101.95 KB, 500x500)

Nathaniel Hernandez
Nathaniel Hernandez

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
Caleb Kelly

why are R and Matlab are popular?
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.
any old brainlet can use Matlab and J takes a bit of thought.
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?

Attached: DXsz-O-VoAAqWoA.jpg (103.5 KB, 806x1200)

Tyler Evans
Tyler Evans

It's slow
All the important stuff runs in C. Agreed about the syntax and type conversion though, very annoying someitmes.

Colton Davis
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"

Josiah Russell
Josiah Russell

Also skillsmatter.com/skillscasts/2323-bobs-last-language

Jaxon Anderson
Jaxon Anderson

The universal transpiler does exist... wow
github.com/jarble/transpiler

Cameron White
Cameron White

J is like K and Q, except not proprietary

Dominic Kelly
Dominic Kelly

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
James Brown

Can you elaborate?

Wyatt Robinson
Wyatt Robinson

Finally someone who has used the language to some degree - please tell more

Jace Wood
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 Holla 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
Austin Gutierrez

Yes. And?

Christopher Morales
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
Ryder Brooks

While "Julia" is a female name in many parts of the world, the programming language is not a person and does not have a gender.
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.

Attached: julius.jpg (15.74 KB, 300x300)

Gavin Gomez
Gavin Gomez

Honestly, Python. No shit.

Juan Hernandez
Juan Hernandez

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.

Attached: r.jpg (334.49 KB, 2335x1379)

Grayson Russell
Grayson Russell

Just skipped through it now.
youtu.be/4igzy3bGVkQ?t=4195
HurDurr DOUBLE AS FAST AS C WRITTEN BY US WOMEN AND NIGGERS
youtu.be/4igzy3bGVkQ?t=4346
women needs a fucking toilet break and can't even cut it out of the vid
Language is trash made for women and pajeets. LuaJIT is better in EVERY WAY. REEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE