Dear Michael,
>Dear Colleagues,
>
>after having implemented the module system of Curry in PAKCS,
>we detected a couple of minor syntactic problems for which
>a propose a slight change in the syntax of Curry.
>
>In the current report, "as", "hiding", and "qualified"
>are keywords and, thus, cannot be used as identifiers.
>However, some Haskell programmers using Curry seem to like
>the use of "as" as identifiers. Looking at the Haskell syntax,
>I realized that the above keywords are not keywords in Haskell
>so that they can be used as ordinary identifiers in Haskell.
>Since these words have only a special meaning in module headers,
>there is no risk of ambiguity. Thus, I propose to follow the
>same rules in Curry, i.e.:
>
>Proposal 1:
>"as", "hiding", and "qualified" are not keywords and can be used
>as ordinary identifiers.
>
>
>Furthermore, there is a problem with qualified names and the
>function composition operator. Consider the definition
>
>f i = [i..]
>
>The right-hand side can be interpreted in two ways:
>
>- an arithmetic sequence (i.e., (enumFrom i)), or
>
>- the list consisting of the operator "." imported from module "i"
>
>To avoid this ambiguity, I propose the first alternative
>since this is often used in existing programs.
>This alternative can be enforced by the following
>
>Poroposal 2:
>Qualifications of the operator "." are syntactically not allowed.
>
>
>Of course, this restricts the current language definition
>but I think the programs where this restriction become relevant
>can be easily avoided.
>
>Please let me know if you have any comments or objections,
>otherwise I'll add these changes to the current language report.
>
>Best regards,
>
>Michael
>
>_______________________________________________
>curry mailing list
>curry_at_lists.RWTH-Aachen.DE
>http://MailMan.RWTH-Aachen.DE/mailman/listinfo/curry
your proposals seem natural and cconvenient to me.
Best Regards,
Mario.
--
Received on Sa Aug 30 2003 - 19:23:32 CEST