[plt-scheme] to define, or to let
If it's of any consolation, my view's are born predominantly out of over 20
years of commercial experience in micro-electronic system design, analysis,
and possibly somewhat less relevant, strategic business/market analysis; and
have learned (often the hard way), that simple and tractable is good, and
that under-specification enables ambiguity, which often ultimately leads to
intractable complexity (which is worse than very bad, it's intolerable, as
it becomes counter productive to the process of being able to simply and
clearly specify a desired and/or required behavior in an clear, unambiguous,
and reliably repeatable manor; which ironically are prerequisites to enable
the reliable, and analyzable specification of complex systems).
Lastly, I'm not at all opposed to parallelism (optimal microelectronic
architectures rely on it's exploitation), but have simply learned that it is
far more reliable for machine driven analysis to identify it's most optimum
exploitation, rather than require it's identification by the user; and under
all circumstances, it's specification (when truly required to steer physical
implementations for example) should never be enabled through mechanisms
which lead to ambiguity.
(sorry, I don't mean to preach, but did want to clarify that there is
actually a strong intersection between desirable academic, and industrial
requirements of a programming language).
Thanks, -paul-