Updated Curry Report

From: Michael Hanus <hanus_at_informatik.rwth-aachen.de>
Date: Wed, 4 Feb 1998 17:42:41 +0100

Dear Colleague,

due to the silence of the Curry mailing list during the
last months, one could get the impression that there are
no further activities concerning the development of Curry.
This is not true and, therefore, I send you this message
to inform you about recent developments.

The main new information is that I have found some time
to update the Curry report where I have included some
sections which were missing in the previous report.
You can find the new version in via the Curry homepage
or directly at

To simplify the access to the changes for you, I summarize
the most important points:

- Section 2.3 on local declarations (describing "let" and "where")
  has been added.

- Section 2.4 on free variables is new. After some discussion with
  Sergio Antoy, we propose to declare free variables (existentially
  quantified) variables similarly to other local objects by "let"
  and "where" declarations so that the same scoping rules are used.

- Section 2.5 on constraints and equality has been updated (in particular,
  all references to the internal constant "Valid" have been dropped
  since this caused some misunderstanding in the previous version).
  Moreover, the "and" alternatives in evaluation annotations are also
  deleted, i.e., concurrent evaluation is expressed now only
  through concurrent conjunction of constraints (which seems to be
  enough in practice and is also used in Goffin or Oz).

- Section 3 on the operational semantics has been simplified
  (usually, only the evaluation annotations "flex" and
  "rigid" are important; thus, the explanation of the other
  more specialized annotations has been moved into the appendix).

- Section 5 describing the module system has been added.

- Section 7 describing the encapsulated search facilities has been added.
  This is the most important new feature. Since the report describes
  the feature only in a small section, you might be interested
  in a more detailed description to see how to use it to define
  your own search strategies. In this case, take a look at the paper

- Pragmas (Section 9) slightly modified, Prelude and syntax updated.

- Operational semantics (Appendix D) updated according to the new
  features (equational constraints, concurrent conjunction,
  encapsulated search).

Our current prototype implements most of the features described
in this report. In particular, the encapsulated search facilities
are implemented. If you want to "play" with them, take a look
at our WWW interface where you can run small programs:

If you want to run more examples or if you want to use
our new Curry-to-Java compiler (see
for more infos), we can also provide
a distribution of our complete system (but note that
it is still a prototype not intended for serious use,
we are still working on it...)

Note that the new version of our prototype supports
also a nearly Haskell-like syntax (thanks to Sergio Antoy
for providing the parser). Examples and further documents
can be found in the WWW pages.

As usual, comments are always welcome!

Best regards,

Received on Mi Feb 04 1998 - 17:50:00 CET

This archive was generated by hypermail 2.3.0 : Do Jun 20 2024 - 07:15:05 CEST