Re: The wisdom of the object mentors (Was: Searching OO Associations with RDBMS Persistence Models)

From: Christian Brunschen <>
Date: Fri, 2 Jun 2006 20:25:53 +0000 (UTC)
Message-ID: <e5q6sh$ee9$>

In article <>,  <> wrote:
>> If you have the option of using different math libraries (that might use
>> different algorithms, offer different precision or similar), then that
>> would indeed be an excellent thing to do, wouldn't it?
>Yes, in some cases it would be an excellent idea, but why don't we
>normally separate math libraries?

Um, we still do, or certainly did until recently, if using C on most Unix platforms - you had to explicitly link in a math library, 'libm', if you wanted to use anything other than simple addition, multiplication or similar.

>Because the cost is higher than the benefits in most cases.

As things like disk and memory space get less expensive and processors get faster, some such costs decrease - in the case of a math library, the extra space is hardly even noticable these days, but there may still be reasons for why you might want to use a _specific_ math library implementation (if you need to have completely repeatable results down to the least significant bit, which is somehthing where some CPUs can actually differ - or if you can sacrifice some specific accuracy in the quest for extra speed, or if you replace code that uses the floating-point processor with code that uses the vector unit, or similar).

>It's exactly the same with separating SQL
>statements. It is a cost associated with that separation. In some cases
>the it may be resonable to pay the effort, but mostly it is not.

In my experience, it's usually well worth separating out SQL into a, well, separate part of the application, for ease of maintenance if nothing else (because it keeps all the SQL code, which may be a comparatively small proportion of the total code, close together rather than spread out, which makes it easier to find, if/when it needs maintenance).

Best wishes,

>Fredrik Bertilsson

// Christian Brunschen Received on Fri Jun 02 2006 - 22:25:53 CEST

Original text of this message