Anybody has any idea of some lazy lists implementation in Occaml?

  Initially I thought that ExtLib’s Enums will do the work but what I don’t like about them is that operations like map, filter etc. consume the enumeration. Now, for me it’s crucial to have a partition function. So let’s say I have list ‘l’ and I want to partition it into ‘m’ and ‘n’. I want everything to be computed in a lazy fashion so forcing ‘l’ is out of question. Also assume that computation yielding ‘l’ is expensive so cloning it and using to produce ‘m’ and ‘n’ separately (thus computing twice) is also not on option. Can I do it somehow with Enums? And if not: does anybody know, hopefully positive, answer to the question posed at the beginning of this post?

   Thanks in advance for any help,


  Adam Koprowski


-                   A.Koprowski@tue.nl,  ICQ: 3204612                  -
- The difference between impossible and possible lies in determination -
-    Tommy Lasorda                                                     -