On Sun, May 12, 2002, Oliver George wrote:
perl like things...
msg' = replace "s/love/lust/" msg
or, nice regex stuff...
main = case match "^(\d+)" of Nothing -> 0 Just (i) -> i
Ick! regexes can be handled much better than that. Imagine something like: q = case x of /"^$" -> "Empty Line." /"^(foo@\d+)" -> foo ++ "hello!" /"confusion (foo@?) (bar@*)" -> "foo is" ++ foo ++ "And bar is" ++bar /"(a@*)" -> error "Sorry: I don't know what to do with "++a I don't know if this sort of syntax could work, but something similar would seem sensible. If it's not clear: the regex is used as a pattern. If it matches the string, that path is taken in the case statement. Also, wherever there are parenthesis with a "variable @", that variable is bound to the relevent string portion.
the python string notation (str % tuple) would fit really well too...
putStrLn "hello %s, you got %d right" % ("oliver", 5)
Might be nice.
Am I the only one who sees this as being a really valuable extension to haskell? or does it exist and i've just never noticed?
cheers, Oliver. _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
-- Night. An owl flies o'er rooftops. The moon sheds its soft light upon the trees. David Feuer