Re: Bob's 'Self-aggrandizing ignorant' Count: Was: What databases have taught me
Date: 30 Jun 2006 08:35:00 -0700
Message-ID: <1151681700.675484.59430_at_h44g2000cwa.googlegroups.com>
David Barrett-Lennard wrote:
>
> However, in certain domains I choose C++. I may spend lots of time
> away from the code editor developing highly tailored imperative
> algorithms that are provably correct, and then carefully implement to
> get the best possible performance. This can be justified in some
> areas of systems programming where you are confident that the problem
> is well defined, you've done a proper analysis, and your tailored
> solution will stand the test of time.
C++ is a perfectly reasonable choice for that sort of work. However, what I find, well, sad really, is how our ability to reuse code is so poor, that all that hard work you did benefits you and you alone, and every *other* programmer in the world, even if working on the exact same algorithm, has to write it over again for himself.
With a sufficiently smart platform, it would be possible at least sometimes that such work could be shared among different declarative code. The low level C++ imperative implementations of the world could be harnessed with a generic, relational interface, such that at least manual algorithmic choice would be enabled.
> However, I don't think declarative approaches will ever completely
> displace imperative approaches.
It is, I believe, an open question, and likely to remain so for some time.
> But let's see more declarative code
> than we have now.
For sure!
> There seems to be a lack of science going on. For example, what work
> has been done to determine whether a given algorithm is best
> represented declaratively or imperatively? In my (limited) reading on
> comp.object, I haven't seen anyone discuss such an important question.
> Instead everyone seems to hand wave with all too generic, meaningless
> statements.
Alas, thas has been my experiece as well.
Marshall Received on Fri Jun 30 2006 - 17:35:00 CEST