I started composing a reply that segued into considering teaching kids programming (for its algebraic benefits), but then ended thinking it might deserve a thread of its own… Teaching functional programming (to kids)
p.s. DragonBox blew my mind in the innovative way it teaches algebra to 4yrs olds.