Re: Evaluation Annotations: are they needed?

From: Michael Hanus <>
Date: Mon, 15 Nov 2004 17:41:42 +0100

Julio =?iso-8859-1?Q?Mari=F1o_y_Carballo?= wrote:
> My view is that the type declaration, the evaluation annotation and other
> kinds of annotations (e.g. those for expressing demand) are actually part of
> the documentation -- in fact a "hard" part, as they affect the compilation
> process -- which must be completed with a "soft" part which includes natural
> language explanations, and other constraints that might not be checkable or
> inferred automatically.

I agree, but the question remains whether evaluation annotations
are strictly necessary and so important that they should be
included as an explicit syntactic construct, or whether it is
sufficient to provide a single primitive function which use
is analyzed to derive appropriate documentation.

> By the way, if the solution completeness property was inferred automatically
> via program analysis (and a trivial analyzer based on a sticky bit is not
> difficult to imagine) then I see no problem in making that part of the hard
> documentation, i.e. giving the appropriate warnings at compile time and
> allowing the programmer to declare a given function as solution complete.

In principle, there is no problem. However, every additional syntactic
construct complicates the language processing tools and, therefore,
I am very much in favor to languages with a reduced set of constructs.

> [Are you using the trivial sticky bit algorithm or a more ellaborate one? In
> the latter case, where is it explained?]

It is a trivial sticky bit algorithm.

> Which type system are you using for the determinism types? Are you considering
> making it into the standard?

No, the type system is still under development and is used only
for the purpose of program analysis. Thus, there is no plan
to include such kind of types in the source code.
You will find more details in our PPDP 2000 paper
where we describe a type (for groundness) and effect (for determinism)
system for analyzing non-determinism in Curry.



curry mailing list
Received on Mo Nov 15 2004 - 18:04:15 CET

This archive was generated by hypermail 2.3.0 : So Sep 20 2020 - 07:15:03 CEST