Live data from Hacker News

Julia 0.5 Highlights

julialang.org

41–50 of 64 posts

Re: Julia 0.5 Highlights

#41

Earlier quoted context omitted.

"Functional language" is ill-defined, hence my specific question about static typing and purity. I would really like to have a language for scientific computing that had good scalable performance as well as static types and referential transparency.

As far as I know, no such system exists. Strict static typing and numerical computing are, I suspect, more at odds with each other than they casually appear to be. The seemingly simple `+` operator is the most polymorphic and overloaded function-like entity in many static languages (and often can't be defined as a normal function for that very reason). And `+` doesn't hold a candle to the polymorphism of array indexi…

Thanks for your reply.

Someday, Haskell will get a good matrix library, and then I'll be happy.

Re: Julia 0.5 Highlights

#42
post #17
post #8

5 years ago I thought for sure I would be using Julia today. (I mostly use R) I have found that news tools have come into play that I haven't really felt the need for a faster language then R for my work. I'm interested in people's everyday use of Julia and how it has impacted your workflow. I don't work with "Big Data" most of my data sets are bellow 100k in size. Anyone using Julia for medium and small data sets?

I have found that news tools have come into play that I haven't really felt the need for a faster language then R for my work Could you elaborate? Which new tools?

Hadley verse in general. dplyr/tidyr and piping %>% has made things so seemless that I would hate to lose them for the ability to run faster. I swear I have forgotten 75% of what I learned in base R because these libraries (Outside of data.table) just work so well with one another.

RStudio has also been a God send for me. RMarkdown and now R Notebooks just amaze me. Then I work in a very MS Office environment that ReportRs (http://davidgohel.github.io/ReporteRs/) is the most under valued library right now.

I didn't have these things 5 years ago. (RStudio was initially released Feb 2011 but didn't start with it till 2013.

Re: Julia 0.5 Highlights

#43

Earlier quoted context omitted.

I realize that your use of the phrase "functional language" seems to entail having a static type system and purity, but most people seem to consider Lisp to be the original functional language and it doesn't have either property. If one considers Lisp to be functional then it seems like Julia should be as well. Do you not consider Lisp to be functional? Real question, not a rhetorical one – I'm trying to assess where…

"Functional language" is ill-defined, hence my specific question about static typing and purity. I would really like to have a language for scientific computing that had good scalable performance as well as static types and referential transparency.

Fortran?

Re: Julia 0.5 Highlights

#44

Earlier quoted context omitted.

I realize that your use of the phrase "functional language" seems to entail having a static type system and purity, but most people seem to consider Lisp to be the original functional language and it doesn't have either property. If one considers Lisp to be functional then it seems like Julia should be as well. Do you not consider Lisp to be functional? Real question, not a rhetorical one – I'm trying to assess where…

"Functional language" is ill-defined, hence my specific question about static typing and purity. I would really like to have a language for scientific computing that had good scalable performance as well as static types and referential transparency.

Oh, you meant static typing when you wrote strong typing above? That makes more sense.

Re: Julia 0.5 Highlights

#45

Earlier quoted context omitted.

"Functional language" is ill-defined, hence my specific question about static typing and purity. I would really like to have a language for scientific computing that had good scalable performance as well as static types and referential transparency.

Fortran?

Modern Fortran is an awesome power tool and I love it. But it's hardly a pure functional programming language!

Re: Julia 0.5 Highlights

#46

Why does the returned value (100, 100) consume 208 bytes?

The counter reports all heap-allocated memory, not just memory that persists after the function call, and the description in the post doesn't look quite right. The 208 bytes come almost entirely from calling the function from the global scope. Inside a function, there would only be 16 bytes of memory allocated on the heap, for the generator itself (which we desperately want to get rid of, but that is still WIP) and t…

> which we desperately want to get rid of

Would that be covered by https://github.com/JuliaLang/julia/pull/18632 or is it a separate issue? I have some really ugly code that ought to be built out of nested generators, but I can't afford the millions of heap allocations.

Re: Julia 0.5 Highlights

#47

Earlier quoted context omitted.

"Functional language" is ill-defined, hence my specific question about static typing and purity. I would really like to have a language for scientific computing that had good scalable performance as well as static types and referential transparency.

Oh, you meant static typing when you wrote strong typing above? That makes more sense.

Yes, I sure did. Sorry for the confusion.

Re: Julia 0.5 Highlights

#48

Can anybody explain the remark about LLVM towards the end of the post? What were the difficulties of updating it, especially with respect the intermediate versions?

LLVM can bet a very good optimized compiler toolchain, but is complex, hard to use and break easily (your code).

I have tried to use it several times for toy compilers, and each time is a pain for do simple things. I can't imagine how much pain is for depend your project on it.

Certainly worth the effort, but as expected of a C++ tech: You need a army of specialist to make it work.

Re: Julia 0.5 Highlights

#49
post #18
post #7

Earlier quoted context omitted.

1-based for statistics is a STRONG reason to use it. 0 based is ridiculous for a statistics program and the reason why I left Python. I understand for looping and the arras to be internally 0 but when doing statistics I should have to use two different index.

1-based for statistics is a STRONG reason to use it. 0 based is ridiculous for a statistics program Could you elaborate on that? What about statistics do you feel makes it necessary to have 1-based indexing?

Mathematical notation is almost always 1 based. Let $v = 1 \dots n$, that sort of thing. So I find translating mathematics into code (which I seem to do quite frequently) much easier with 1 based indexing. (One exception being if you have a lot of modulo arithmetic.)

I've used both 0 based (python, C++), and 1 based (R, matlab, mathematica), but I really belive 1 based is the right choice for Julia. It isn't necessary, but it feels better.

Re: Julia 0.5 Highlights

#50
post #18
post #7

Earlier quoted context omitted.

1-based for statistics is a STRONG reason to use it. 0 based is ridiculous for a statistics program and the reason why I left Python. I understand for looping and the arras to be internally 0 but when doing statistics I should have to use two different index.

1-based for statistics is a STRONG reason to use it. 0 based is ridiculous for a statistics program Could you elaborate on that? What about statistics do you feel makes it necessary to have 1-based indexing?

My flippant answer: "No one is ever assigned Patient ID 0"

It's mostly about expectations. Users of statistical software, who may or may not be programmers by inclination, use 1-based indexing. The program they came from uses 1-based indexing (R, SAS, Stata, etc.). When you talk about data, you rarely talk about the 0th observation. It's just a recipe for errors to have to code switch between 0 and 1-based indexing.

Post reply on HN