Lazy Evaluation

Gustavo A. Ospina gos at info.fundp.ac.be
Sat Mar 13 04:09:09 AEDT 1999


Hi all,

I'm a fun of Mercury and my main interests is to contribute to strenghten
this language. Actually i'm participating in the project ARGO in the team
of Baudouin Le Charlier, whose main goal is to build a methodology to
Mercury program development which can be applied to development of real
software systems. In this way, I am studing and researching about the
behaviour of Mercury compiler to represents logic descriptions of procedures.

One of our specific efforts is to assess the proposal of the methodology
with the development of (really, one part of) one real application. The
(part) of the application is the scanning and parsing of terms (whose token
list can be potentially huge) over grammars describing a language
"lisp-like". One possible solution to this problem is using lazy
evaluation, since it allows handle data structres potentially infinites
accessing just one subpart of the structure at time, and delaying the
"producing" of a new subpart (e.g. the next token) until it's ready, or so.
We restrict our problem domain to linear data structures (lists) although
it could be interesting to investigate this in the general case.

I read in your mailing lists about the Mercury Team have developed one
module to handle lazy evaluation. I need to know what is the actual state
of this module and what is the semantics you used to implements it. Also if
you have bibliography I would like to know it.

Thank you very much for all your attention. My best regards.

+ Gustavo.



More information about the developers mailing list