Re: Evaluation Annotations: are they needed?

From: Wolfgang Lux <wlux_at_uni-muenster.de>
Date: Sun, 14 Nov 2004 22:33:28 +0100

Julio Mariņo y Carballo wrote:

> Well, my example tried to be compliant with the familiar form of
> evaluation
> annotations, but a more flexible syntax can be considered. An
> annotation like
>
> map f eval spineRigid
>
> would desugar every instance of (map f xs) into (map f (spineRigid
> xs)) and,
> more generally, annotations of the form
>
> f eval rp1 ... rpN
>
> would desugar every application (f x1 ... xN) into
> (f (rp1 x1) ... (rpN xN)).

Well, this looks like a reasonable proposal to me. Yet, the open
question
(in order to leave the purely syntactic level :-) is which functions
qualify as rigidness projections in such a kind of evaluation
annotations.
I assume that you do not want to leave this set unrestricted. On the
other
hand, I'm not sure whether one can reasonably restrict it to a
predefined
set of functions (though at present I would be happy with
whatever_this_rigid_primitive_is_called_today and the rigidSpine
function.)

> You are absolutely right. I would like to stress there are two parts
> in my
> proposal. The first one is just a sugaring that aims at helping you
> keep your
> code as tidy as possible, without forbidding other uses of the
> primitive. I
> feel that implementing that preprocessing and characterizing a wide
> range of
> "reasonable" uses via the projections is feasible.
>
> The other part is the hard one, of course. I was intentionaly vague in
> stating
> the wish of "tracking down the use of rigidness primitives" because I
> do not
> know whether something as a rigidness type may exist...
>
> Suggestions?

Unfortunately not yet.

Regards
Wolfgang



_______________________________________________
curry mailing list
curry_at_lists.RWTH-Aachen.DE
http://MailMan.RWTH-Aachen.DE/mailman/listinfo/curry
Received on Mon Nov 15 2004 - 09:55:11 CET

This archive was generated by hypermail 2.3.0 : Mon Sep 23 2019 - 07:15:05 CEST