The CPL package

[Tags:bsd3, program]

An interpreter of Hagino's Categorical Programming Language (CPL).

[Skip to Readme]


Versions 0.0.5, 0.0.6, 0.0.7, 0.0.8
Change log NEWS
Dependencies array, base (==4.*), containers, haskeline, mtl, parsec, readline [details]
License BSD3
Author Masahiro Sakai (
Category Compilers/Interpreters
Uploaded Mon Oct 26 12:56:40 UTC 2009 by MasahiroSakai
Distributions NixOS:0.0.8
Downloads 1164 total (11 in the last 30 days)
0 []
Status Docs not available [build log]
Successful builds reported [all 7 reports]
Hackage Matrix CI


readlineUse ReadlineDisabledAutomatic
haskelineUse HaskelineDisabledAutomatic

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info


Maintainer's Corner

For package maintainers and hackage trustees

Readme for CPL

Readme for CPL-0.0.6

An implementation of "A Categorical Programing Language".
version 0.0.5

  This package is an implementation of "A Categorical Programing Language"
  (CPL for short)[1][2] written in Haskell.

  CPL is a functional programming language based on category
  theory[3]. Data types are declared in a categorical manner by
  adjunctions. Data types that can be handled include the terminal
  object, the initial object, the binary product functor, the binary
  coproduct functor, the exponential functor, the natural number object,
  the functor for finite lists, and the functor for infinite lists.
  Each data type is declared with its basic operations or
  morphisms. Programs consist of these morphisms, and execution of
  programs is the reduction of elements (i.e. special morphisms) to
  their canonical form.


  * GHC-6.10


  De-Compress archive and enter its top directory.
  Then type:

    $ runhaskell Setup.hs configure
    $ runhaskell Setup.hs build
    $ runhaskell Setup.hs install

  If you want to compile with readline or haskeline, add -fReadline or
  -fHaskeline respectively to configure command.


  See chapter 5 of [1]

  This program is licenced under the BSD-style license.
  (See the file 'COPYING'.)

  Copyright (C) 2004-2009 Masahiro Sakai <>

  Masahiro Sakai <>


[1]  Tatsuya Hagino, ``A Categorical Programming Languge''.
     Ph.D. Thesis, University of Edinburgh, 1987
     available at <>

[2]  Tatsuya Hagino, ``Categorical Functional Programming Language''
     Computer Software, Vol 7, No.1.
     Advances in Software Science and Technology 4, 1992
     ISBN 0-12-037104-9