<div dir="ltr"><div>I've been doing computer science tutoring for a few years in languages like Java and Python.</div><div><br></div><div>I started teaching a 10th grade student Elm recently. I'd like to use Haskell at some point, but because he likes websites and games, Elm seemed more apropos. What I'm discovering is that a functional language like Elm is fairly natural to him and he's learning quickly!<br></div><div><br></div><div>Our lessons prior to Elm (including Python, Java, and JavaScript at this point) are extracurricular and he hasn't put much study in-between lessons, so his progress has been slow. I don't think he's developed many "programming muscles."</div><div><br></div><div>But now, his progress in Elm is faster. <br></div><div><br></div><div>One factor, I think, is how concise functional code is. He hasn't developed much "programmer's eye" up to now (by which I mean scanning a lot of code quickly) but Elm, being much shorter, is easier for him to grasp at a glance.</div><div><br></div><div>He also thinks the algebraic data model is cool. He sees how it's related to classes and subclasses, but he appreciates how relatively simple it is.<br></div><div><br></div><div>Mike</div><div><br></div></div>