Try this: distString :: String -> String -> Int distString s0 s1 = let a = runST (difST s0 s1) in a!(1,1)
difST :: MArray (STUArray s) Int (ST s) => String -> String -> ST s (UArray (Int,Int) Int) difST s0 s1 = do b@(_,br) <- return $ (\x1 y1 -> ((0,0),(x1,y1))) (length s0) (length s1) d <- newArray b 0 :: ST s (STUArray s (Int,Int) Int) mdiff d s0 s1 -- readArray d br unsafeFreeze d Keean. _______________________________________________ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell