Re: One Ring to Bind Them

From: Gene Wirchenko <genew_at_mail.ocis.net>
Date: Tue, 15 Jun 2004 14:01:01 -0700
Message-ID: <rfeuc0tbtrf684nm02dama1e4bs94avn89_at_4ax.com>


"Dawn M. Wolthuis" <dwolt_at_tincat-group.com> wrote:

[snip]

>Both relational and declarative seem rather obvious choices to you and
>neither does to me. My issues with declarative include:
>
>1) There seem to be no standards for the black box that does something with
>the declarations. I don't need standards-committees with years of process
>to adopt a standard -- I don't even know anything that would help ensure
>portability of such declarations. SQL has come the closest and does have
>standards, but we all know you can't just take any code you write against
>one database and run it against another.

     Let it be implemented in the manner that the implementer determines is best for the given implementation. Not having to deal with the physical level helps considerably with abstraction.

>2) It doesn't read like English -- the verbs are missing, for example. I'd
>like to keep some of Grace Hopper's goal alive of writing code that human
>beings can read

     Because it is not English? French does not read like English either.

     I can read a lot of code much more easily than English. English can be very ambiguous.

>3) While hiding much that should be hidden, it "feels like" so much gets
>hidden that people spend time trying to figure out how it does things in
>order to be good at writing declarations

     Typically, a waste of time. Take variable declarations. All I need know is the behaviour of that type. I do not need to know the details of implementation in order to use the type. If someone wants to get to that level of detail, fine, but it is not required.

     I think it is a confusion of not knowing the appropriate theory and thinking that examining the implementation will give that information. It will not.

>4) Invariably functions become one of the things to get specified. If we
>are going to specify both data and functions, which, afterall, is what needs
>to happen, then what benefit is there to specifying a function and
>specifying where it is to be used rather than specifying the function and
>then using it where it needs to be used?

     You do not get bit when the function[ality] is required in four places and you put it in only three of them. With declaration, the programming system takes care of where.

[snip]

Sincerely,

Gene Wirchenko

Computerese Irregular Verb Conjugation:

     I have preferences.
     You have biases.
     He/She has prejudices.
Received on Tue Jun 15 2004 - 23:01:01 CEST

Original text of this message