>>3
Lambda-calculus already gravitates towards a simple "environment" argument, which holds "dynamic" state.
why?
Why would you implement some external module/namespace hack? Do you miss C++ so much?
when you have thousands of functions defined, you might need a way to manage them and avoid name collisions in an effective way. There's no reason that functional stuff can't scale to the same level as seeples. You should check out ocaml. objective stuff and functional actually mixes pretty well.