| Yicho: A Combinator Library for Program Transformation | Contents | Index |
|
Yicho.HMatch | Portability | portable | Stability | experimental | Maintainer | yokoyama@ipl.t.u-tokyo.ac.jp |
|
|
|
|
|
Description |
|
|
Synopsis |
|
|
|
Documentation |
|
hmatch |
:: Exp | Pattern
| -> Exp | Term
| -> HM Subst | | Higher-order matching
|
|
|
hm |
|
|
infix2prefix :: Exp -> HM Exp |
Converting an infix expression into a prefix expression
|
|
data ArgStatus |
Constructors | | Instances | |
|
|
patternize |
|
|
detargs :: ([Name], [Name]) -> [Exp] -> Bool |
|
validLTargs :: [Name] -> [Exp] -> Bool |
Whether are they valid arguments for A_{LT} patterns
|
|
replacesLT :: CL -> StateT ([ArgStatus], Subst) (ErrorT String Q) Exp |
p (x y -> body) we assume body does not contain lambda abstraction
|
|
replaceLT :: CL -> StateT ([ArgStatus], Subst) (ErrorT String Q) Exp |
|
compatibleCompose :: Subst -> Subst -> HM Subst |
|
dreplaces :: CL -> [(CL, CL)] -> HM (CL, Subst) |
|
dreplace :: CL -> (CL, CL) -> HM (CL, Subst) |
|
betareduce :: Exp -> Exp |
|
patexpmatch :: Pat -> Exp -> Maybe Subst |
For beta reduction
|
|
Produced by Haddock version 0.6 |