# Documentation

Types that represent core language programs

Converts a program to a Graph

Computable a => Program a | |

(Computable a, Computable b, Computable c, Computable d, Computable e) => Program (a -> b -> c -> d -> e) | |

(Computable a, Computable b, Computable c, Computable d) => Program (a -> b -> c -> d) | |

(Computable a, Computable b, Computable c) => Program (a -> b -> c) | |

(Computable a, Computable b) => Program (a -> b) | |

(Computable a, Computable b) => Program (a, b) | |

(Computable a, Computable b, Computable c) => Program (a, b, c) | |

(Computable a, Computable b, Computable c, Computable d) => Program (a, b, c, d) |

showCoreWithSize :: forall a. Program a => a -> StringSource

Shows the core code with size information as comments.

printCoreWithSize :: Program a => a -> IO ()Source

printCoreWithSize = putStrLn . showCoreWithSize