function-as-a-value is hard abstraction to explain...
# random
o
function-as-a-value is hard abstraction to explain, but if you explain variables as “boxes”, mutable or not, then attach types to them, then say “a box can hold some code”, it just works in simple way. No lambda calculus, of course.