On 21/11/2018 03:05, Avi Gross wrote: > <> is not currently used as a matched set as it has many other uses like in > comparisons.> Some languages even use <> as the same as != or ~= to mean not > equals.
Indeed, Python used to do the same but it was removed in, I think, v2. > A simple teaching language that uses English words children know Probably the best example of that I have seen is Logo. Although it does use [] and () But otherwise its quite child friendly. But ultimately that makes it less likeable in the "grown up world"... > Python can still be a great teaching language if kept to a subset That is true and it is still one of the very few languages that I'd recommend for teaching. But sadly its underbelly shows through very early for beginners. For example in v1 Python range() returned a list. That was easy to understand. Now range() returns a "range object" - what the heck is that? and why do we need it? Similarly with iterators. Things that could easily be iterated over without thought now require "iterators" and/or evaluate to iterators. And the error messages tell you so - but iterators are a concept wholly alien to most beginners. And are quite hard to explain. Those are just the two things that beginners most frequently mail e about from my tutorial. There are lots of other areas where Python implementation now shines through in ways that trip beginners up. > What is easy to teach to children? I'm not sure we should even focus on children. It's more about teaching anyone(regardless of age) who has no prior experience, and especially little or no formal math background. Someone with good high school math can be taught programming fairly easily. But with no math foundation even basic concepts like expressions and assignment become very difficult. It may even be impossible. I used to think that anyone could learn to program but over the last 30 years of trying I've come to the conclusion that its not true. You need a brain that's wired a certain way otherwise it just doesn't make any kind of sense. Its like math. Some folks just can't understand mathematical concepts, they are illogical and non-sensical to them. They might learn some basic principles by rote but they never really see how or why it is so. Same with programming. Some people just don't get it. Thankfully those are a very small minority! -- Alan G Author of the Learn to Program web site http://www.alan-g.me.uk/ http://www.amazon.com/author/alan_gauld Follow my photo-blog on Flickr at: http://www.flickr.com/photos/alangauldphotos _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: https://mail.python.org/mailman/listinfo/tutor