One of the advantages I do think that Julia has for teaching is that it makes 
it unusually easy to see what's happening on many levels. Teaching with 
high-level languages like Python or Java – anything but C for that matter – 
tends to construct a wall between the safe "walled garden" and the lower levels 
where "dark magic" happens. There is still some dark magic at the heart of 
Julia, of course, but it's way deeper down. Want to understand how integers are 
represented? Use the bits function and see. Ditto for floating-point numbers. 
Want to know how different kinds of strings are represented? Just look at their 
.data field. Want know how Dicts work? Just call dump on a dict. Want to know 
how the computer executes your function? Call code_native on it. This ability 
is very powerful for teaching how computers work – and it's all available 
without the difficulties that teaching with C entails.


> On May 7, 2015, at 10:16 AM, Tamas Papp <[email protected]> wrote:
> 
> Julia is a great language, but I am wondering why you think it is the right 
> match for children. IMO the comparative advantages of Julia are
> 1. parametric polymorphism,
> 2. macros,
> 3. ability to generate very fast code with very little help.
> I don't think that any of these appeal very much to beginners, and especially 
> not to children.
> 
> At the moment Julia is comparatively weak in
> a. graphics,
> b. debugging (especially the kind aided by the IDE),
> c. progressive interactive development.
> I imagine that these would be very important to anyone learning to program, 
> including children. Several languages have variations that provide these, eg 
> Scheme (Racket, formerly PLT Scheme), or Python; there are corresponding 
> books for children, etc.
> 
> Best,
> 
> Tamas
> 
>> On Thursday, May 7, 2015 at 2:00:30 PM UTC+2, Scott Jones wrote:
>> Has anybody had any experience teaching Julia to kids?
>> This is *not* a joke, my almost 9 year old son has a science project due 
>> next week.
>> He knows some Lua (which he originally learned from the ComputerCraft mod in 
>> MineCraft, and then using the Codea
>> app for the iPad), but he's seen how I've fallen in love with Julia, and he 
>> wants to use Julia for his project
>> (which is doing some tests of peoples visual and auditory memory, using 
>> random 7 digit sequences,
>> and then doing some simple calculations on the results...).
>> He's basically a lazy boy [see the following link, to understand that that 
>> is the highest complement I pay people :-) (see 
>> http://en.wikipedia.org/wiki/Time_Enough_for_Love#The_Tale_of_the_Man_Who_Was_Too_Lazy_to_Fail]
>> and he wants the computer to do a lot of his work for him...
>> 
>> 

Reply via email to