On Tue, Apr 05 2016, Páll Haraldsson wrote: > On Tuesday, April 5, 2016 at 1:46:10 PM UTC, Tamas Papp wrote: > >> "First" language for which group? > > Kid[s], that [I] have already taught/learned Scratch and Alice (or past > that "age"), now a 12 year old. Scott Jones, is also teaching similar age. > >> For CS students who need to learn >> about concepts, Julia has a lot of features (and thus complexity) that >> is simply not needed would be a distraction in a first language. > > That is a perspective (that I disagree with). You do not have to learn > everything at once. I'm not talking about teaching making or even using > @simd, @inbounds etc.
It is very easy to maneuver yourself into a situation that is hard to understand in Julia if you don't know quite a few concepts (eg for understanding how method signatures are matched). Sure, you could stick to a subset, say, Julia as a kind of fancy R with fewer (or other?) quirks. Also, the workflow is not as friendly as Python and other less-performance oriented languages: compare http://docs.julialang.org/en/release-0.4/manual/workflow-tips/ with a fully dynamic REPL-based language; eg issue #265 is particularly inconvenient when compared to Python, R, etc. These are all things one can live with, in exchange for amazing features, but why pay the price when you don't need those features? >> But it is hard to imagine a scenario where Julia would be a good >> first language in its current state. > > You would agree, with it as a second language? But why not first? Error > messages? See above, + some other things: language and libraries are moving target, friendly debugger interfaces are just in the process of evolving. I don't think the terminology of "nth language" is very useful. IMO Julia should be used for a course in its current state when the benefits outweigh the cost, which, at present, seems to apply to courses with an emphasis on numerical methods (see, again, http://julialang.org/teaching/ ). That said, I like Julia very much, and I am transitioning to it for my research, but its comparative advantage is not being a first language for children. Best, Tamas