Randy Bush wrote:
I.e., layering is, IMO at least, a model. Fine for describing things, but
not necessarily a good blueprint for an implementation.
compilation systems can be constructed which will procuce efficient inlined
code for nicely modularized (layered) source. just not for programs which
use type-free pointers and similar analysis-defeating features.
randy
They can also do disastrous things, e.g., creating in-lined chunks
that thrash the instruction cache.
It's not just the layers that need to be spec'd, but the
interfaces between them. Even then all you have is a specification,
not necessarily an appropriate design for an implementation.
Greg Minshall wrote:
...i value protocol model AND mechanism correctness over
some amount of last ounce optimization.
It's also not just about optimization - sometimes the best way
to think about a concept isn't the best (most flexible, simplest
to code, simplest to debug, ...) way to implement it.
Mahadevan Iyer wrote:
A problem well-stated is a problem half-solved.
Agreed - half.
Joe