ADPfusion-0.6.0.0: Efficient, high-level dynamic programming.

Safe HaskellNone
LanguageHaskell2010

ADP.Fusion.PointL.Term.Chr

Contents

Orphan instances

(TermStream m (Z :. pos) (TermSymbol M (Chr r x)) (Elm (Term1 (Elm ls (PointL i))) (Z :. PointL i)) (Z :. PointL i), posLeft ~ LeftPosTy pos (Chr r x) (PointL i), TermStaticVar pos (Chr r x) (PointL i), MkStream m posLeft ls (PointL i)) => MkStream m (pos :: Type) (ls :!: Chr r x) (PointL i) Source #

First try in getting this right with a termStream.

TODO use PointL i since this is probably the same for all single-tape instances with ElmChr.

TODO it might even be possible to auto-generate this code via TH.

Instance details

Methods

mkStream :: Proxy pos -> (ls :!: Chr r x) -> Int# -> LimitType (PointL i) -> PointL i -> Stream m (Elm (ls :!: Chr r x) (PointL i)) Source #

TermStreamContext m ps ts s x0 i0 is (PointL O) => TermStream m (ps :. OStatic d :: Type) (TermSymbol ts (Chr r x)) s (is :. PointL O) Source # 
Instance details

Methods

termStream :: Proxy (ps :. OStatic d) -> TermSymbol ts (Chr r x) -> LimitType (is :. PointL O) -> (is :. PointL O) -> Stream m (TermState s Z Z) -> Stream m (TermState s (is :. PointL O) (TermArg (TermSymbol ts (Chr r x)))) Source #

TermStreamContext m ps ts s x0 i0 is (PointL I) => TermStream m (ps :. IStatic d :: Type) (TermSymbol ts (Chr r x)) s (is :. PointL I) Source # 
Instance details

Methods

termStream :: Proxy (ps :. IStatic d) -> TermSymbol ts (Chr r x) -> LimitType (is :. PointL I) -> (is :. PointL I) -> Stream m (TermState s Z Z) -> Stream m (TermState s (is :. PointL I) (TermArg (TermSymbol ts (Chr r x)))) Source #

TermStaticVar (IStatic d :: Type) (Chr r x) (PointL I) Source # 
Instance details

TermStaticVar (OStatic d :: Type) (Chr r x) (PointL O) Source # 
Instance details