  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.
