Safe Haskell | None |
---|
- type Signature m a r = (() -> a, Char -> a -> a, a -> Char -> a, Char -> a -> Char -> a, a -> a -> a, Stream m a -> m r)
- gNussinov :: (Monad m, Build x, Build b, Build b1, Build (TransTo b1), StreamElement (BuildStack x), StreamElement (:. (BuildStack b) b1), StreamElement (:. (BuildStack b1) b), StreamElement (:. (:. (BuildStack b) b1) b), StreamElement (:. (BuildStack (TransTo b1)) (TransTo b1)), MkStream m (BuildStack x), MkStream m (:. (BuildStack b) b1), MkStream m (:. (BuildStack b1) b), MkStream m (:. (:. (BuildStack b) b1) b), MkStream m (:. (BuildStack (TransTo b1)) (TransTo b1)), TransToN b1, Apply (StreamArg (BuildStack x) -> a), Apply (StreamArg (:. (BuildStack b) b1) -> a), Apply (StreamArg (:. (BuildStack b1) b) -> a), Apply (StreamArg (:. (:. (BuildStack b) b1) b) -> a), Apply (StreamArg (:. (BuildStack (TransTo b1)) (TransTo b1)) -> a)) => (Fun (StreamArg (BuildStack x) -> a), Fun (StreamArg (:. (BuildStack b) b1) -> a), Fun (StreamArg (:. (BuildStack b1) b) -> a), Fun (StreamArg (:. (:. (BuildStack b) b1) b) -> a), Fun (StreamArg (:. (BuildStack (TransTo b1)) (TransTo b1)) -> a), Stream m a -> t) -> b1 -> b -> x -> (b1, (Int, Int) -> t)
- aPairmax :: Monad m => Signature m Int Int
- aPretty :: Monad m => Signature m String (Stream m String)
- type CombSignature m e b = (() -> (e, m (Stream m b)), Char -> (e, m (Stream m b)) -> (e, m (Stream m b)), (e, m (Stream m b)) -> Char -> (e, m (Stream m b)), Char -> (e, m (Stream m b)) -> Char -> (e, m (Stream m b)), (e, m (Stream m b)) -> (e, m (Stream m b)) -> (e, m (Stream m b)), Stream m (e, m (Stream m b)) -> m (Stream m b))
- (<**) :: (Monad m, Eq b, Eq e, Show e, Show (m [b])) => Signature m e e -> Signature m b (Stream m b) -> CombSignature m e b
- nussinov78 :: [Char] -> (Int, [String])
- nussinov78Fill :: forall s. Vector Char -> ST s (Arr0 DIM2 Int)
- fillTable :: PrimMonad m => (MTbl E (MArr0 (PrimState m) DIM2 Int), (Int, Int) -> m Int) -> m ()
- backtrack :: Vector Char -> Arr0 DIM2 Int -> [String]
Documentation
type Signature m a r = (() -> a, Char -> a -> a, a -> Char -> a, Char -> a -> Char -> a, a -> a -> a, Stream m a -> m r)Source
gNussinov :: (Monad m, Build x, Build b, Build b1, Build (TransTo b1), StreamElement (BuildStack x), StreamElement (:. (BuildStack b) b1), StreamElement (:. (BuildStack b1) b), StreamElement (:. (:. (BuildStack b) b1) b), StreamElement (:. (BuildStack (TransTo b1)) (TransTo b1)), MkStream m (BuildStack x), MkStream m (:. (BuildStack b) b1), MkStream m (:. (BuildStack b1) b), MkStream m (:. (:. (BuildStack b) b1) b), MkStream m (:. (BuildStack (TransTo b1)) (TransTo b1)), TransToN b1, Apply (StreamArg (BuildStack x) -> a), Apply (StreamArg (:. (BuildStack b) b1) -> a), Apply (StreamArg (:. (BuildStack b1) b) -> a), Apply (StreamArg (:. (:. (BuildStack b) b1) b) -> a), Apply (StreamArg (:. (BuildStack (TransTo b1)) (TransTo b1)) -> a)) => (Fun (StreamArg (BuildStack x) -> a), Fun (StreamArg (:. (BuildStack b) b1) -> a), Fun (StreamArg (:. (BuildStack b1) b) -> a), Fun (StreamArg (:. (:. (BuildStack b) b1) b) -> a), Fun (StreamArg (:. (BuildStack (TransTo b1)) (TransTo b1)) -> a), Stream m a -> t) -> b1 -> b -> x -> (b1, (Int, Int) -> t)Source
type CombSignature m e b = (() -> (e, m (Stream m b)), Char -> (e, m (Stream m b)) -> (e, m (Stream m b)), (e, m (Stream m b)) -> Char -> (e, m (Stream m b)), Char -> (e, m (Stream m b)) -> Char -> (e, m (Stream m b)), (e, m (Stream m b)) -> (e, m (Stream m b)) -> (e, m (Stream m b)), Stream m (e, m (Stream m b)) -> m (Stream m b))Source
(<**) :: (Monad m, Eq b, Eq e, Show e, Show (m [b])) => Signature m e e -> Signature m b (Stream m b) -> CombSignature m e bSource
Boilerplate and driver, will be moved to library
nussinov78 :: [Char] -> (Int, [String])Source
fillTable :: PrimMonad m => (MTbl E (MArr0 (PrimState m) DIM2 Int), (Int, Int) -> m Int) -> m ()Source