packages feed

flite-0.1: flite.cabal

Name:               flite
Version:            0.1
Synopsis:           f-lite compiler, interpreter and libraries
License:            BSD3
License-file:       LICENSE
Author:             Matthew Naylor
Maintainer:         Jason Reich <jason@cs.york.ac.uk>, Matthew Naylor <mfn@cs.york.ac.uk>
Stability:          provisional
Homepage:           http://www.cs.york.ac.uk/fp/reduceron/
Build-Type:         Simple
Cabal-Version:      >=1.6
Description:        The f-lite language is a subset of Haskell 98 and Clean consisting of function
                    definitions, pattern matching, limited let expressions, function applications and
                    constructor applications expressed in the explicit 'braces' layout-insensitive format.
                    
                    See README for more information.
Category:           Compiler
Extra-Source-Files: README examples/*.hs

Flag Pure
    Description:   Use the pure parser instead of the Parsec
    Default:       False

Executable flite-pure
    Main-is:       fl-pure.hs
    if flag(pure)
        Build-Depends: base >= 3 && < 5, haskell98 >= 1 && < 2,
                       array >= 0 && < 1, containers >= 0 && < 1
    else
        buildable:     False

Executable flite
    Main-is:       fl-parsec.hs
    if flag(pure)
        buildable:     False
    else
        Build-Depends: base >= 3 && < 5, haskell98 >= 1 && < 2,
                       array >= 0 && < 1, containers >= 0 && < 1,
                       parsec >= 2.1.0.1 && < 3
    
Library
    Build-Depends:   base >= 3 && < 5, haskell98 >= 1 && < 2,
                     array >= 0 && < 1, containers >= 0 && < 1,
                     parsec >= 2.1.0.1 && < 3
    Exposed-modules: Flite.CallGraph, Flite.Case, Flite.ConcatApp,
                     Flite.Descend, Flite.Fresh, Flite.Identify, Flite.Identity,
                     Flite.Inline, Flite.Let, Flite.Matching, Flite.Pretty,
                     Flite.Syntax, Flite.Traversals, Flite.Writer,
                     Flite.Parsec.Parse