Live data from Hacker News

JuliaCon 2019 Videos

youtube.com

21–26 of 26 posts

Re: JuliaCon 2019 Videos

#21

It would be great if Julia were to take a page from the Rust playbook and have some focused initiatives around making the language more accessible to its potential audience. I've been impressed with how introspective and constructively self-critical the Rust stewardship has been. I don't get the same sense from Julia, but maybe I'm missing things. The "time to first plot" issue bothers me far less than the weak docum…

I agree. More focus on differential equations! :)

Re: JuliaCon 2019 Videos

#22
post #19

I have been willing to try Julia for a long time now. Yesterday I finally put time aside to port some stuff I have been doing in Python to Julia. 1st: install Julia - used a snap on Ubuntu, fine 2nd: get jupyter to work with Julia: a bit complex, but achievable 3rd: install Julia support for vscode: Julia kernel keeps crashing in vscode 4th: Port a routine from Python to Julia: some nice language features, some scary…

Use import instead of using if you don't want things in your namespace.

Ah, thank you! That was a very rookie mistake from my part then.

Re: JuliaCon 2019 Videos

#23
post #19

I have been willing to try Julia for a long time now. Yesterday I finally put time aside to port some stuff I have been doing in Python to Julia. 1st: install Julia - used a snap on Ubuntu, fine 2nd: get jupyter to work with Julia: a bit complex, but achievable 3rd: install Julia support for vscode: Julia kernel keeps crashing in vscode 4th: Port a routine from Python to Julia: some nice language features, some scary…

As Chris said, `using` is mostly for interactive usage where having to import each name you use is annoying. If you want to import specific names, do `import SomePackage: name1, name2`.

When doing `using SomePackage` it only imports the names that are explicitly exported by `SomePackage`. Even collisions don't cause problems very often because exported type names tend to be fairly unique and when two packages use the same name for a function, there's a strong chance it's actually the same generic function shared between the packages so there's no collision. When that's not the case and the name is fairly generic, e.g. `connect`, then it's quite common to use the API as `SomePackage.connect` rather than as just `connect`. This is quite a bit different from class-based object-oriented languages, so it takes a little while to get used to.

The issues with Parquet files are likely to get sorted out in the near future (a few months), so try again soon.

Re: JuliaCon 2019 Videos

#24

It would be great if Julia were to take a page from the Rust playbook and have some focused initiatives around making the language more accessible to its potential audience. I've been impressed with how introspective and constructively self-critical the Rust stewardship has been. I don't get the same sense from Julia, but maybe I'm missing things. The "time to first plot" issue bothers me far less than the weak docum…

Thank you, this is great constructive feedback. Now that fully working composable multithreading has been merged to master (that was the top compiler team priority previously), the next two priorities are "time to first plot" and friendlier error messages. The specific plan for better error messages is to use the Julia-native CSTParser ("concrete syntax tree parser") to give Clang/Rust-style diagnostics telling you exactly where in an expression an error happened [1].

There's already work in progress to improve Documenter.jl (the package that generates Julia docs) to change the TOC style to something less annoyingly detailed and different from Sphinx [2]. Julia's own manual has grown incrementally, written by various people and definitely needs a once-over by someone who is good at clear technical writing; it's hard to find the time when there's so much other work to be done.

[1] https://github.com/JuliaLang/julia/pull/31954

[2] can't find the PR now but part of a GSoC project

Re: JuliaCon 2019 Videos

#25

It would be great if Julia were to take a page from the Rust playbook and have some focused initiatives around making the language more accessible to its potential audience. I've been impressed with how introspective and constructively self-critical the Rust stewardship has been. I don't get the same sense from Julia, but maybe I'm missing things. The "time to first plot" issue bothers me far less than the weak docum…

The documentation style (permanent TOC on the right) seems to copy python's Sphinx style. And you are quite right about the lack of visible effort in making error messages more useful.

Until very recently, there have been higher priority issues such as complete multithreading support. Now that we have that, error messages are now a top priority (see my other comment). Some work has already been done but not yet merged: https://github.com/JuliaLang/julia/pull/31954.

Re: JuliaCon 2019 Videos

#26

Earlier quoted context omitted.

The documentation style (permanent TOC on the right) seems to copy python's Sphinx style. And you are quite right about the lack of visible effort in making error messages more useful.

Until very recently, there have been higher priority issues such as complete multithreading support. Now that we have that, error messages are now a top priority (see my other comment). Some work has already been done but not yet merged: https://github.com/JuliaLang/julia/pull/31954 .

Thanks for all the great effort and progress. Better error messages would be awesome, but this composable multi-thread support makes Julia even more absurdly powerful and versatile! The priority makes complete sense.

The Julia team and community are constantly advancing the frontiers of language design while grounding it in real number crunching applications. I wouldn't be too concerned about trying to have the same documentation and content approach as the Rust community as their goals were to usurp the mindshare of systems programmers (C/C++) with a novel ownership paradigm.

Looking forward to the progress on error messages.

Post reply on HN