Re: Notions of Type
From: Bob Badour <bbadour_at_pei.sympatico.ca>
Date: Thu, 17 Aug 2006 02:32:33 GMT
Message-ID: <5zQEg.49381$pu3.582773_at_ursa-nb00s0.nbnet.nb.ca>
> ...
>
>
> What a refreshing change of topic, back to basics (instead of
> anti-existentialist mumbo-jumbo and extravagant philosophy as well as
> big words that don't seem necessary to learn the cdt topic) is okay with
> me. Not being a mathematician or engineer or for that matter not being
> much of anything, in my old assembler days I unconsciously eliminated
> all domains that included zero. This was partly because I didn't know
> how to get the OS to trap divide-by-zero (in some cases, even the OS
> didn't know how to do that!) - I just made sure all numbers had a very
> small fractional part. For reading anything tabular, I prefer blanks
> over zeroes any day.
>
> Most of that programming had to do with market research and I can't
> remember a customer ever complaining. (What they did complain about was
> being told their market share was declining while their business was
> increasing - president of Loblaws regularly refused to pay for reports
> unless we bumped his share! Similar attitude from big-name accountants
> who got rid of the rounding errors in their books by zeroing all penny
> amounts.)
>
> I haven't met a user yet who didn't understand at some level that the
> use of any computer software involves some mental suspension of reality.
> They typically put up with consultants who stated otherwise out of fear
> of the boss or the consultant's shareholder uncle. In the mundane biz
> world that pays for most of the db hokum, there are a few times when
> high precision matters but I'd say it's economical to handle those
> specially.
>
> As for the 'empty algebra', I think in an ideal world this appl'n pgmr
> would prefer a string domain that didn't even support length and was
> limited to only 'member of' and 'equals' operators. That's assuming
> complete disjunction and negation aren't supported, which for a mundane
> appl'n they don't need to be. (I seem to remember some people here
> think an equality test is part of the RM, so please don't bother flaming
> me with objections to the above, on this point I'd had to say I'm a
> fairly quiet ignorami whose mind is pretty much made up.)
Date: Thu, 17 Aug 2006 02:32:33 GMT
Message-ID: <5zQEg.49381$pu3.582773_at_ursa-nb00s0.nbnet.nb.ca>
paul c wrote:
> Bob Badour wrote:
>
>> Keith H Duggar wrote: >> >>> Bob Badour wrote: >>> >>>> JOG wrote: >>>>
> ...
>
>> My only objection to "type = algebraic structure" is the requirement >> for closure within a single type. For any type, we can define the >> algebra as the type and the subset of the type's operations that >> exhibit closure. In my view, the type includes the entire set of >> operations defined on the values of the type including those not >> exhibiting closure. >> >> For instance, an operation might have a single character string >> operand with non-negative integers as result as is the case with the >> length operation. That operation is certainly part of the character >> string type and arguably part of the non-negative integer type. It is >> not part of any algebraic structure. Or do I misunderstand something? >> >> Square root is part of the algebra for non-negative reals and for >> perfect squares but not for integers. It is, however, a valid >> operation on integers resulting in values of a different type. >> >> Division is not part of the algebra for any type that includes zero as >> one of its values. Or is it? >> >> Other than possibly the _Principle of Cautious Design_, I can think of >> no immediate objection to a type where the set of operations in the >> algebra is empty. On the other hand, it might be difficult to devise >> such a type that has any use.
>
> What a refreshing change of topic, back to basics (instead of
> anti-existentialist mumbo-jumbo and extravagant philosophy as well as
> big words that don't seem necessary to learn the cdt topic) is okay with
> me. Not being a mathematician or engineer or for that matter not being
> much of anything, in my old assembler days I unconsciously eliminated
> all domains that included zero. This was partly because I didn't know
> how to get the OS to trap divide-by-zero (in some cases, even the OS
> didn't know how to do that!) - I just made sure all numbers had a very
> small fractional part. For reading anything tabular, I prefer blanks
> over zeroes any day.
>
> Most of that programming had to do with market research and I can't
> remember a customer ever complaining. (What they did complain about was
> being told their market share was declining while their business was
> increasing - president of Loblaws regularly refused to pay for reports
> unless we bumped his share! Similar attitude from big-name accountants
> who got rid of the rounding errors in their books by zeroing all penny
> amounts.)
>
> I haven't met a user yet who didn't understand at some level that the
> use of any computer software involves some mental suspension of reality.
> They typically put up with consultants who stated otherwise out of fear
> of the boss or the consultant's shareholder uncle. In the mundane biz
> world that pays for most of the db hokum, there are a few times when
> high precision matters but I'd say it's economical to handle those
> specially.
>
> As for the 'empty algebra', I think in an ideal world this appl'n pgmr
> would prefer a string domain that didn't even support length and was
> limited to only 'member of' and 'equals' operators. That's assuming
> complete disjunction and negation aren't supported, which for a mundane
> appl'n they don't need to be. (I seem to remember some people here
> think an equality test is part of the RM, so please don't bother flaming
> me with objections to the above, on this point I'd had to say I'm a
> fairly quiet ignorami whose mind is pretty much made up.)
Um, I don't know why anyone would want to flame you, but if it makes you feel better, hereby consider yourself flamed. Received on Thu Aug 17 2006 - 04:32:33 CEST