curry-frontend-1.0.3: Compile the functional logic language Curry to several intermediate formats

Copyright(c) 2011 - 2015 Björn Peemöller
LicenseBSD-3-clause
Maintainerbjp@informatik.uni-kiel.de
Stabilityexperimental
Portabilityportable
Safe HaskellNone
LanguageHaskell2010

CompilerEnv

Description

This module defines the compilation environment for a single module, containing the information needed throughout the compilation process.

Synopsis

Documentation

type CompEnv a = (CompilerEnv, a) Source #

data CompilerEnv Source #

A compiler environment contains information about the module currently compiled. The information is updated during the different stages of compilation.

Constructors

CompilerEnv 

Fields

ppMap :: (Show a, Pretty a, Show b, Pretty b) => Bool -> Map a b -> Doc Source #

Pretty print a Map

ppMapShow :: (Show a, Show b) => Map a b -> Doc Source #

ppMapPretty :: (Pretty a, Pretty b) => Map a b -> Doc Source #

ppAL :: (Show a, Pretty a, Show b, Pretty b) => Bool -> [(a, b)] -> Doc Source #

Pretty print an association list

ppALShow :: (Show a, Show b) => [(a, b)] -> Doc Source #

ppALPretty :: (Pretty a, Pretty b) => [(a, b)] -> Doc Source #