[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Strong Typing, Dynamic Languages, What to do?
Oscar Fuentes wrote:
> Abbreviating: it has no sense to say that somebody that doesn't know
> what are you doing is capable of providing a better solution for your
> problem than yourself.
Duh. This is the basic fact underlying all of optimization theory.
So what? You haven't even begun to address my question.
- Your "logical demonstration" is only a proof of possibility, not
certainty. (To be utterly pedantic, you've only used the dia
modality, not box.) As Keith Cooper, a compiler optimization
wizard, memorably put it, "Information is not optimization." Think
that over.
- In a sufficiently complex domain, even the implementor of the
special-purpose collector may not understand the details to know (a)
how to exploit them or (b) that he has done so soundly.
- The engineering of special-purpose collectors is highly
non-trivial. In many domains, it will take a while to match, much
less beat, the performance of a finely-tuned general-purpose GC.
- Even if you could come up with a customized mechanism, there's no
guarantee that it will necessarily be better. For instance, even if
your domain guaranteed the exclusion of cycles, reference counting
will not *necessarily* be better than a copying GC.
- As a real-world programmer, you know all about cost-benefit
analysis. Do the obvious thing here (analysis cost, creativity
cost, development cost, maintenance cost, ...).
- Even when you've done all this and decided you can build a better
mousetrap, your manager may come along and demand that your language
run-time interact closely with code written in C++ by a guy who
insists C++ has _two_ features he absolutely needs. Now what will
you do?
So instead of getting sidetracked into analyzing an empirical question
through logic, let's get back to my question: how about some evidence?
Shriram