|
Kyley
wrote:
True.
Well, I wrote the database engine, so when it's doing
index and table rebuilds (uncommon but important to optimise for) and
data-mining analysis runs - large chunks of that database have to pass through
memory and when memory is functioning like a secondary cache for disk, the cache
footprint of each element becomes pretty critical to avoid any
thrashing.
Whilst it's
true that computer double in power every 18 months, the customers are somehow on
to this (OK - will the person who told them stand up :-) and their expectations
of what computers can or should do seems to rise to more than make up for it
:-(
As for
maintenance (consistent abstract interfaces) vs performance (optimised actual
code) - this is a hoary old chestnut in computer science and has generated more
heat than light on many an occasion - so we're in good company chewing over it
here :-)
A
solution of sorts has emerged over the last 10 years - Generic programming
frameworks (aka Templates) like the C++ STL. Pretty mind-bending stuff but an
awesome concept when you get your head around it.
Nice
abstract interface to methods, containers, and algorithms - pure optimised code
out with any unnecessary abstraction removed.
Unfortunately, Delphi doesn't have integrated support
for Generics or Templates (yet) - I wrote a stand-alone template processor and
there are others who have played tricks with {$INCLUDE}. These can be quite
useful for producing optimised containers as needed but it's nothing like
directly having them in the language itself.
Delphi
might 'inherit' (no pun intended :-) Generics from the Delphi for .NET
initiative. Once C# has Generics support (it's only a draft proposal and
reference implementation at this point), Borland's .NET tools will need to to
offer support for them (at least in their C# compiler) and let's all hope it
flows from their to Delphi for .NET and then from there to
Delphi.
TTFN,
Paul.
|
Title: Message
- [DUG]: Delete a variable from a Dynamic Array Jason Coley
- RE: [DUG]: Delete a variable from a Dynamic... Paul Heinz
- RE: [DUG]: Delete a variable from a Dynamic... Kyley Harris
- RE: [DUG]: Delete a variable from a Dyn... Paul Heinz
- RE: [DUG]: Delete a variable from a... Kyley Harris
- RE: [DUG]: Delete a variable fr... Paul Heinz
- RE: [DUG]: Delete a variab... Kyley Harris
- [DUG]: window identifi... Paul Heinz
- [DUG]: window iden... Alistair George
- RE: RE: [DUG]: Delete a variable from a Dy... Jason Coley
- RE: [DUG]: Delete a variable from a Dyn... Carl Reynolds \(E-mail\)
- RE: [DUG]: Delete a variable from a... Jason Coley
- RE: RE: RE: [DUG]: Delete a variable from... Allan, Samuel
- RE: RE: RE: RE: [DUG]: Delete a variable... Allan, Samuel
