Russ Abbott wrote:
[...]
> In the view expressed here, execution is not deduction. Execution is asking
> whether a statement about to be executed is consistent with the set of
> statements already executed. If execution succeeds, the statement is
> consistent, and the new statement is added to the set of executed
> statements. If execution fails, computation along that path fails.
>
> Traditionally, one considers a logic program to be a collection of axioms
> and a computation to be deduction based on those axioms. This is a reductive
> process: can one reduce a query to a collection of ground clauses through
> the use of the axioms.
>
>>From our perspective, a program is not a collection of axioms. It is nothing
> other than the what any other program is: the expression of the imagination
> of the programmer. As a program executes, the system checks to see if the
> statements that it encounters are consistent with each other. If so it
> continues; if not it fails. This is a creative rather than a reductive
> process.
>
> What do you think of this? Right, wrong, boring?
Useful, because it works for programs that use nondeclarative constructs [*].
But also obvious :-)
[*] It also works even for programs using don't-care-nondeterministic
constructs within a script. Mixing don't-care and don't-know nondeterminism
probably makes for programs that are difficult to understand, although it's
still good to be able to define what the language semantics are in this
case.
--
David Hopwood <[EMAIL PROTECTED]>
_________________________________________________________________________________
mozart-users mailing list
[email protected]
http://www.mozart-oz.org/mailman/listinfo/mozart-users