syntactic-0.1: Generic abstract syntax, and utilities for embedded languages

Language.Syntactic.Features.PrimFunc

Description

Primitive functions

Documentation

primFunc :: (Typeable a, PrimFunc :<: expr) => String -> (a -> b) -> ASTF expr a -> ASTF expr bSource

primFunc2 :: (Typeable a, Typeable b, PrimFunc :<: expr) => String -> (a -> b -> c) -> ASTF expr a -> ASTF expr b -> ASTF expr cSource

primFunc3 :: (Typeable a, Typeable b, Typeable c, PrimFunc :<: expr) => String -> (a -> b -> c -> d) -> ASTF expr a -> ASTF expr b -> ASTF expr c -> ASTF expr dSource

primFunc4 :: (Typeable a, Typeable b, Typeable c, Typeable d, PrimFunc :<: expr) => String -> (a -> b -> c -> d -> e) -> ASTF expr a -> ASTF expr b -> ASTF expr c -> ASTF expr d -> ASTF expr eSource