Browse thread
Pattern matching over lazy values
- Jon Harrop
[
Home
]
[ Index:
by date
|
by threads
]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
| Date: | -- (:) |
| From: | Jon Harrop <jon@f...> |
| Subject: | Pattern matching over lazy values |
Incidentally, would it not be enormously beneficial to be able to pattern
match over lazy values?
This syntax is never used:
# fun (x y) -> true;;
Syntax error: ')' expected, the highlighted '(' might be unmatched
so you can allow "lazy foo" as a pattern:
# let force (lazy n) = n;;
val force : 'a lazy_t -> 'a
and then make the pattern match force lazy values only as it comes across
them, so you can pattern match over lazy trees. I can't see any way to do
this without hacking the compiler...
--
Dr Jon D Harrop, Flying Frog Consultancy Ltd.
OCaml for Scientists
http://www.ffconsultancy.com/products/ocaml_for_scientists/?e