For what it's worth, I was programming in Logo (a LISP derivative) in school at 8 years old.
Being kids, everything had to be made a lot less abstract for us, so we actually had a physical "turtle" with a few different coloured pens and massive great sheets of paper. (one of these: http://gallery.e2bn.org/image79097.html) This would suggest that 8 year-olds can happily start with FP, but OO is still a bit of a struggle (variance is not that easy a concept), so that comes after procedural programming. While on the subject of school, I probably encountered the terminology that a function will 'map' an input value to an output value when I was about 12 years old... On 13 July 2010 13:48, Lyle <[email protected]> wrote: > On Tue, Jul 13, 2010 at 5:01 AM, Wildam Martin <[email protected]> wrote: > > On Tue, Jul 13, 2010 at 10:59, Kevin Wright <[email protected]> > wrote: > >> Having IDEs write boilerplate for you is NEVER the correct solution, not > >> until they can read it for you as well. > > > > I think there is a difference between boilerplate and meaningful > > variable and function names! > > There is nothing preventing you from writing meaningful identifiers in > non-Java languages. > > Is a type somehow more meaningful if you write it twice on the same > line? You don't trust the reader to believe that you really meant it > the first time? And I'm not saying this because I'm a victim of > language hype, many Java libraries' APIs are designed to let you avoid > stuttering. What's so bad about that being baked into a language? > > >> You forgot my favourite! > >> scala: val list2 = list map (_ + 1) > > > > A very good example of code that is difficult to read. If you are not > > into Scala you can't understand. I like languages, where you look at a > > code example and you understand already without really knowing the > > language. > > Really? What about that is any harder than an uninitiated person > grokking Java's for loop syntax? The underscore requires a guess, but > if you know what a map function does and have ever used one in any > language, it's not too great a leap to guess. > > > Imagine a school boy learning the language. I mean, I > > wrote my first program, when I was about 8 years old using BASIC. > > That's a fine property to have for a language to teach 8-year-olds, > but we don't have to restrict language design to what an 8-year-old > can understand (but here I'm falling for a bit of a straw man - just > because a language isn't on the "my first language" level does not > also mean it's needlessly complex). The object oriented paradigm was > notably absent from the programs you wrote in BASIC, should we resist > using that as well? > > -Lyle > > -- > You received this message because you are subscribed to the Google Groups > "The Java Posse" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]<javaposse%[email protected]> > . > For more options, visit this group at > http://groups.google.com/group/javaposse?hl=en. > > -- Kevin Wright mail/google talk: [email protected] wave: [email protected] skype: kev.lee.wright twitter: @thecoda -- You received this message because you are subscribed to the Google Groups "The Java Posse" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/javaposse?hl=en.
