PySTEMM: Executable Concept Modeling for K-12 STEM Learning
  Modeling should play a central role in K-12 STEM education, where it could make classes much more engaging. A model underlies every scientific theory, and models are central to all the STEM disciplines (Science, Technology, Engineering, Math). This paper describes executable concept modeling of STEM concepts using immutable objects and pure functions in Python. I present examples in math, physics, chemistry, and engineering, built using a proof-of-concept tool called PySTEMM . The approach applies to all STEM areas and supports learning with pictures, narrative, animation, and graph plots. Models can extend each other, simplifying getting started. The functional-programming style reduces incidental complexity and code debugging. 
Kelsey D'Souza
cs.CY cs.PL