Live data from Hacker News

Julia v1.0 has been released

github.com

41–50 of 63 posts

Re: Julia v1.0 has been released

#41

In the past when I’ve poked around with Julia, I used Emacs Speaks Statistics. If you’re familiar with using R in this context, you’ll probably find developing and interacting with Julia to be quite easy. If the Julia community could manage to get Julia support into RStudio, I think we’d see a more accelerated uptake. I’ve heard rumblings that RStudio has at least thought of supporting Python in RStudio (more than th…

R Markdown already supports Julia [0] and there is a JuliaCall package on CRAN.

Anyway I find Atom to be a perfectly fine editor.

[0] https://bookdown.org/yihui/rmarkdown/language-engines.html#j...

Re: Julia v1.0 has been released

#45
post #40

Earlier quoted context omitted.

I thought that was what R was meant to do? But, yes, Julia was designed with something like that in mind from what I recall.

R is actually only 3 years younger than Python (25yrs and 28yrs respectively).

And the array data type in Python is just 23 years old.

Re: Julia v1.0 has been released

#46
post #30

Are there any demos of Julia for scientific computing? I found the Documentation for Julia but are there any tutorial style demos?

A recent tutorial is at [1]. JuliaCon 2018 is happening now, and many talks with tutorial content are going up on the Julia Youtube channel.

[1] https://www.youtube.com/watch?v=b5xvVyzUnXI

[2] https://www.youtube.com/user/JuliaLanguage/videos

Re: Julia v1.0 has been released

#47

Earlier quoted context omitted.

Python is not the de-facto standard to my knowledge. It really depends on the field and task. R is huge in my research area, MatLab is king in some other areas, and Fortran is still being used for large-scale number crunching. Will Julia replace all these? That's the ambition but I doubt it's going to happen. For instance, R has a unique and vast ecosystem of extension packages. It would take decades to build somethi…

If there were pandas, sklearm and Keras equivalents (don’t even need feature compleye, just mostly there) I would abandon python literally today.

- pandas :: your choice of DataFrames or JuliaDB

- scikitlearn :: no single package since skl is a meta-package of sorts, but most of the stuff is there spread across the eco-system

- Keras :: checkout Flux or Mocha

Welcome to Julia! Also take a look here [1] for more package that might be to your interest.

[1] https://github.com/svaksha/Julia.jl/blob/e305195ab60e6859e78...

Re: Julia v1.0 has been released

#48
post #33

Is Julia a decent substitute for non numerically focused tasks? I’ve been thinking about learning a new lang recently, and while Julia does seem to be a real alternative to python for analysis, I can’t see how ergonomic it would be for simple (or convoluted, why not?) scripts. The reverse keeps me from investing more time in Go (and Rust), though

Julia was designed initially with a strong focus on numerical tasks, but over the years, especially because of the focus on flexibility, Julia has very much become an excellent general purpose programming language.

The one domain I’d say it’s not suited for is embedded systems where you have very tight memory restrictions but I expect that to improve soon as well.

Re: Julia v1.0 has been released

#49
post #33

Is Julia a decent substitute for non numerically focused tasks? I’ve been thinking about learning a new lang recently, and while Julia does seem to be a real alternative to python for analysis, I can’t see how ergonomic it would be for simple (or convoluted, why not?) scripts. The reverse keeps me from investing more time in Go (and Rust), though

ScottPJones uses it for string processing, and I have seen him comment on hackernews a few times. He's a big advocate for using it for things other than crunching numbers.

For scripts, the JIT overhead has gotten a lot better, and I think it will continue to improve. The strategy is saving more so that it doesn't have to get recompiled on launch. That currently doesn't happen for packages. Which means while R and Python run much slower, they feel much snappier -- and will be much faster if you're just running a bunch of short scripts that wont amortize compilation. So in the short term, I wouldn't use Julia for speed.

Multiple dispatch and powerful meta-programming are two other major highlights. Multiple dispatch can make for much simpler, cleaner looking syntax, while often making it easier to remember too -- you only need one name per concept. I briefly compared explicit SIMD vectorization in Julia and C here: https://bayeswatch.org/2018/08/08/matrix-multiplication-kern... were I to change the vector size, all that'd take in Julia is changing the number of elements, and it'll dispatch correctly. In C... I don't have too much experience with object oriented programming which gives single dispatch, but I like the separation of functions from objects, and freedom of dispatching on any/all of the arguments.

If metaprogramming appeals to you, Julia makes that really easy compared to many other languages, with things like the `@eval` macro or `@generated` functions. Any sort of repetitive pattern that isn't easily expressed in array operations can probably be handled pretty simply with metaprogramming. I gave an example of `@generated` in the blog post with matrix multiplication kernels, and a great example of `@eval` is: https://github.com/JuliaDiff/ForwardDiff.jl/blob/master/src/...

In that link, ForwardDiff defines a gazillion function overloads for dual numbers for automatic differentiation.

Being an interactive language, plus the helpful macro `@macroexpand`, can make it easy to explore and figure out what's going on if you like playing with that sort of stuff.

I've heard loads of great things about Rust, too. Hope this helps decide if its worth looking at. My examples were all still analysis-focused, but that's my experience.

Re: Julia v1.0 has been released

#50

Earlier quoted context omitted.

IMO industry will start switching once a Scikit-learn or Caret equivalent for Julia shows up. PyCall.jl and RCall.jl should take care of everything else until the rest of the ecosystem catches up.

Last time I tried to move all my stuff to Julia I ran into issues with the data frame equivalent package. It seemed the devs and community were in debate as to whether Julia and the dataframe should be more pure numerical focused a la matlab or python/pandas and appropriate for data analysis. As such null values were handled weird or not supported, which made it practically useless for all of my use cases. I’d love t…

Actually 0.7 made a big step in resolving these issues:

https://julialang.org/blog/2018/06/missing

Post reply on HN