Re: Storing data and code in a Db with LISP-like interface

From: Dmitry A. Kazakov <mailbox_at_dmitry-kazakov.de>
Date: Thu, 4 May 2006 19:23:17 +0200
Message-ID: <l4cqwd5som48$.nnks1yprrzut$.dlg_at_40tude.net>


On Thu, 04 May 2006 15:12:02 GMT, Bob Badour wrote:

> Dmitry A. Kazakov wrote:
>
>> On Tue, 02 May 2006 17:58:44 GMT, Bob Badour wrote:
>>
>>>With all due respect, the type 'set' defines values and operations.
>>>Without the operations, the 'set' is pretty much useless.
>>
>> Any ADT defines values (the domain set) and the operations defined on. ADT
>> "Set" does it as well.
>
> Look, pointing out that one can use sets descriptively hardly comes as a
> shock or surprize to those of us who suggest applying set theory and
> predicate logic is the appropriate way to handle data management. After
> all, if one could not use sets to describe just about anything, they
> wouldn't really work for that purpose, now would they?
>
> However, neither classes nor objects are a direct application of either
> set theory or predicate logic.

I don't know what a "direct application" is. Is functional analysis a direct application of? Types theory is or is not in exactly same sense.

>>>Container libraries are for shit. Give me mathematics over some crappy
>>>physical implementation.
>>
>> What kind of mathematics you need?
>
> Predicate logic. Set theory. Anything else that applies to the problem
> at hand.

Fine, abstract data types theory (not to mix with Russell-Whitehead's and constructivist's ones) does.

>> 1. Problem space? Program objects are not mathematical ones.
>
> But relations are. Which is why your original assertions are nonsense.

Should it mean that RM is used to solve set-theoretic problems? Are you guys proving continuum hypothesis in SQL, or what? I take my hat off! Alas, my customers have money for other problems, and navigate other spaces...

>>>A supertype is a superset of values
>>
>> This is a common misconception. The domain set of a supertype is not a
>> subset of the domain set of its subtype.
>
> No, it is a superset. I thought I was clear on that.

OK, you share that misconception.

>>>and a subset of operations.
>>
>> Not quite. To be a suprtype means to export operations to the subtype. If
>> all operations are exported, then they from a proper subset.
>
> I don't give a shit about physical implementation details. Correctness
> is a completely separate concern. You seem totally oblivious to this
> important fact. If we are applying mathematics, then quite clearly a
> supertype is a superset of values and a subset of operations.

No, if subsets were considered in place of injective mappings, that wouldn't be sufficient to create a powerful enough type system. That's my personal opinion, as I said, there is no agreement on the issue.

Anyway, can we agree on that types theory can be formalized? Then we can proceed to the next point: both RM and OO are covered by that theory.

>>> Think about tables of tables and operations
>>>
>>>>defined on them. That would be an RM equivalent of generic programming.
>>>
>>>Yes, it would. However, you have failed to establish that OO is an
>>>application of set theory. At best, you have suggested one can use sets
>>>to describe the ad hoc shit the OO disciples promote.
>>
>> Which is exactly an application of.
>
> OO is not a direct application of set theory.

Yet it is based on that.

> One can apply set theory to describe anything,

This is technically wrong. See Hilbert's program.

> which is why applying it to data management is so
> appropriate. Applying set theory to the task of describing some ad hoc
> shit doesn't make the ad hoc shit an application of anything.

It is an application of and for the ad-hoc shit. Scatology is a science, for that matter, and mathematical formalism can perfectly be applied there. This has nothing to do with the question of foundations of OO.

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de
Received on Thu May 04 2006 - 19:23:17 CEST

Original text of this message