Re: The fable of DEMETRIUS, CONSTRAINTICUS, and AUTOMATICUS
From: Kenneth Downs <firstinit.lastname_at_lastnameplusfam.net>
Date: Wed, 20 Oct 2004 12:49:35 -0400
Message-ID: <0v46lc.r9h.ln_at_mercury.downsfam.net>
>
> I must say I am impressed with your creativity. However, I find this
> exact solution unsatisfying, but I have a *related* idea which you
> may find interesting.
>
> What if we could *declare* a set according to its properties (constraints,
> really) and use them as if they were regular sets? So we could have
> a set ValidSalaries that was declarad as the set of all integers between
> 0 and 100,000?
>
> I dunno. If the constraints are declarative and not procedural, the
> change is about as easy either way.
>
>
Date: Wed, 20 Oct 2004 12:49:35 -0400
Message-ID: <0v46lc.r9h.ln_at_mercury.downsfam.net>
Marshall Spight wrote:
> "Kenneth Downs" <firstinit.lastname_at_lastnameplusfam.net> wrote in message
> news:b2f3lc.8t6.ln_at_mercury.downsfam.net...
>> >> Laconic2's reply with Marshall's reply to that actually gives the insight >> better than I have: you want to provide the constraints structurally. >> >> I'll do the details here. >> >> CASE 1: CONSTRAINT SALARY <= 100,000 (from your other post). >> >> All discreet finite range constraints can be converted to RI by having a >> table of allowed values. Salary codes with dollar values (or direct >> salary values in a table). >> >> Some will knee-jerk react against the idea of a table with 100,000 rows, >> but of course that is silly, we only enter the ones we are going to use.
>
> I must say I am impressed with your creativity. However, I find this
> exact solution unsatisfying, but I have a *related* idea which you
> may find interesting.
>
> What if we could *declare* a set according to its properties (constraints,
> really) and use them as if they were regular sets? So we could have
> a set ValidSalaries that was declarad as the set of all integers between
> 0 and 100,000?
>
>
>> Advantage 1: With a constraint, policy changes require a programmer. >> Now >> you are truly Constrainticus, preventing things from getting done. If >> the salary values are in a table, policy changes can be implemented as >> soon as >> they are authorized, the top dog goes in and types it in. Keeping to the >> Greek philosophy idiom, this is much more virtuous, i.e, it conforms to >> The Good.
>
> I dunno. If the constraints are declarative and not procedural, the
> change is about as easy either way.
>
>
Hmmmm. Let's define:
$(DDL) = Expense required to use DDL
If I understand your statement, it is that
$(DDL)(Declarative) << $(DDL)(Procedural)
My claim is that this is only true if you are a programmer, if you are a user then:
$(USR) << $(DDL) for all values of $(USR) and $(DDL)
Hence, any time that you can put something in the user's control through direct data maintenance, it is a Good Thing.
-- Kenneth Downs Use first initial plus last name at last name plus literal "fam.net" to email meReceived on Wed Oct 20 2004 - 18:49:35 CEST