← All packages

parsec3.1.18.0

Monadic parser combinators

Open the imported Cabal file ↗

author
Daan Leijen <daan@microsoft.com>, Paolo Martini <paolo@nemail.it>, Antoine Latter <aslatter@gmail.com>
bug-reports
https://github.com/haskell/parsec/issues
build-type
Simple
cabal-version
1.12
category
Parsing
extra-source-files
ChangeLog.md README.md
homepage
https://github.com/haskell/parsec
license
BSD2
license-file
LICENSE
maintainer
Oleg Grenrus <oleg.grenrus@iki.fi>, Herbert Valerio Riedel <hvr@gnu.org>
name
parsec
synopsis
Monadic parser combinators
tested-with
GHC ==8.6.5 || ==8.8.4 || ==8.10.7 || ==9.0.2 || ==9.2.8 || ==9.4.8 || ==9.6.7 || ==9.8.4 || ==9.10.3 || ==9.12.4 || ==9.14.1
version
3.1.18.0
x-revision
1
Show the complete metadata as JSON
{
  "schemaVersion": 1,
  "name": "parsec",
  "version": "3.1.18.0",
  "cabalVersion": "1.12",
  "buildType": "Simple",
  "fields": {
    "author": [
      "Daan Leijen <daan@microsoft.com>, Paolo Martini <paolo@nemail.it>, Antoine Latter <aslatter@gmail.com>"
    ],
    "bug-reports": [
      "https://github.com/haskell/parsec/issues"
    ],
    "build-type": [
      "Simple"
    ],
    "cabal-version": [
      "1.12"
    ],
    "category": [
      "Parsing"
    ],
    "description": [
      "Parsec is designed from scratch as an industrial-strength parser\nlibrary.  It is simple, safe, well documented (on the package\nhomepage), has extensive libraries, good error messages,\nand is fast.  It is defined as a monad transformer that can be\nstacked on arbitrary monads, and it is also parametric in the\ninput stream type.\n.\nThe main entry point is the \"Text.Parsec\" module which provides\ndefaults for parsing 'Char'acter data.\n.\nThe \"Text.ParserCombinators.Parsec\" module hierarchy contains\nthe legacy @parsec-2@ API and may be removed at some point in\nthe future."
    ],
    "extra-source-files": [
      "ChangeLog.md\nREADME.md"
    ],
    "homepage": [
      "https://github.com/haskell/parsec"
    ],
    "license": [
      "BSD2"
    ],
    "license-file": [
      "LICENSE"
    ],
    "maintainer": [
      "Oleg Grenrus <oleg.grenrus@iki.fi>, Herbert Valerio Riedel <hvr@gnu.org>"
    ],
    "name": [
      "parsec"
    ],
    "synopsis": [
      "Monadic parser combinators"
    ],
    "tested-with": [
      "GHC ==8.6.5\n|| ==8.8.4\n|| ==8.10.7\n|| ==9.0.2\n|| ==9.2.8\n|| ==9.4.8\n|| ==9.6.7\n|| ==9.8.4\n|| ==9.10.3\n|| ==9.12.4\n|| ==9.14.1"
    ],
    "version": [
      "3.1.18.0"
    ],
    "x-revision": [
      "1"
    ]
  },
  "components": [
    {
      "kind": "library",
      "name": "main",
      "tree": {
        "data": {
          "buildable": null,
          "exposedModules": [
            "Text.Parsec",
            "Text.Parsec.ByteString",
            "Text.Parsec.ByteString.Lazy",
            "Text.Parsec.Char",
            "Text.Parsec.Combinator",
            "Text.Parsec.Error",
            "Text.Parsec.Expr",
            "Text.Parsec.Language",
            "Text.Parsec.Perm",
            "Text.Parsec.Pos",
            "Text.Parsec.Prim",
            "Text.Parsec.String",
            "Text.Parsec.Text",
            "Text.Parsec.Text.Lazy",
            "Text.Parsec.Token",
            "Text.ParserCombinators.Parsec",
            "Text.ParserCombinators.Parsec.Char",
            "Text.ParserCombinators.Parsec.Combinator",
            "Text.ParserCombinators.Parsec.Error",
            "Text.ParserCombinators.Parsec.Expr",
            "Text.ParserCombinators.Parsec.Language",
            "Text.ParserCombinators.Parsec.Perm",
            "Text.ParserCombinators.Parsec.Pos",
            "Text.ParserCombinators.Parsec.Prim",
            "Text.ParserCombinators.Parsec.Token"
          ],
          "otherModules": [],
          "dependencies": [
            {
              "package": "base",
              "range": ">=4.12.0.0 && <4.23",
              "libraries": [
                "main"
              ]
            },
            {
              "package": "bytestring",
              "range": ">=0.10.8.2 && <0.13",
              "libraries": [
                "main"
              ]
            },
            {
              "package": "mtl",
              "range": ">=2.2.2 && <2.4",
              "libraries": [
                "main"
              ]
            },
            {
              "package": "text",
              "range": ">=1.2.3.0 && <1.3 || >=2.0 && <2.2",
              "libraries": [
                "main"
              ]
            }
          ],
          "fields": {}
        },
        "branches": [
          {
            "condition": {
              "compiler": "ghc",
              "range": "<8.8"
            },
            "then": {
              "data": {
                "buildable": null,
                "exposedModules": [],
                "otherModules": [],
                "dependencies": [],
                "fields": {}
              },
              "branches": []
            },
            "else": null
          }
        ]
      }
    },
    {
      "kind": "test-suite",
      "name": "parsec-tests",
      "tree": {
        "data": {
          "buildable": null,
          "exposedModules": [],
          "otherModules": [
            "Bugs",
            "Bugs.Bug2",
            "Bugs.Bug35",
            "Bugs.Bug6",
            "Bugs.Bug9",
            "Features",
            "Features.Feature150",
            "Features.Feature80",
            "Util"
          ],
          "dependencies": [
            {
              "package": "base",
              "range": "-any",
              "libraries": [
                "main"
              ]
            },
            {
              "package": "mtl",
              "range": "-any",
              "libraries": [
                "main"
              ]
            },
            {
              "package": "parsec",
              "range": "-any",
              "libraries": [
                "main"
              ]
            },
            {
              "package": "tasty",
              "range": ">=1.4 && <1.6",
              "libraries": [
                "main"
              ]
            },
            {
              "package": "tasty-hunit",
              "range": ">=0.10 && <0.11",
              "libraries": [
                "main"
              ]
            }
          ],
          "fields": {
            "type": [
              "exitcode-stdio-1.0"
            ]
          }
        },
        "branches": [
          {
            "condition": {
              "compiler": "ghc",
              "range": ">=8.0"
            },
            "then": {
              "data": {
                "buildable": null,
                "exposedModules": [],
                "otherModules": [],
                "dependencies": [],
                "fields": {}
              },
              "branches": []
            },
            "else": {
              "data": {
                "buildable": null,
                "exposedModules": [],
                "otherModules": [],
                "dependencies": [
                  {
                    "package": "semigroups",
                    "range": "-any",
                    "libraries": [
                      "main"
                    ]
                  }
                ],
                "fields": {}
              },
              "branches": []
            }
          }
        ]
      }
    },
    {
      "kind": "test-suite",
      "name": "parsec-issue127",
      "tree": {
        "data": {
          "buildable": null,
          "exposedModules": [],
          "otherModules": [],
          "dependencies": [
            {
              "package": "base",
              "range": "-any",
              "libraries": [
                "main"
              ]
            },
            {
              "package": "parsec",
              "range": "-any",
              "libraries": [
                "main"
              ]
            }
          ],
          "fields": {
            "type": [
              "exitcode-stdio-1.0"
            ]
          }
        },
        "branches": []
      }
    },
    {
      "kind": "test-suite",
      "name": "parsec-issue171",
      "tree": {
        "data": {
          "buildable": null,
          "exposedModules": [],
          "otherModules": [],
          "dependencies": [
            {
              "package": "base",
              "range": "-any",
              "libraries": [
                "main"
              ]
            },
            {
              "package": "deepseq",
              "range": "-any",
              "libraries": [
                "main"
              ]
            },
            {
              "package": "parsec",
              "range": "-any",
              "libraries": [
                "main"
              ]
            },
            {
              "package": "tasty",
              "range": "-any",
              "libraries": [
                "main"
              ]
            },
            {
              "package": "tasty-hunit",
              "range": "-any",
              "libraries": [
                "main"
              ]
            }
          ],
          "fields": {
            "type": [
              "exitcode-stdio-1.0"
            ]
          }
        },
        "branches": []
      }
    },
    {
      "kind": "test-suite",
      "name": "parsec-issue175",
      "tree": {
        "data": {
          "buildable": null,
          "exposedModules": [],
          "otherModules": [],
          "dependencies": [
            {
              "package": "base",
              "range": "-any",
              "libraries": [
                "main"
              ]
            },
            {
              "package": "parsec",
              "range": "-any",
              "libraries": [
                "main"
              ]
            },
            {
              "package": "tasty",
              "range": "-any",
              "libraries": [
                "main"
              ]
            },
            {
              "package": "tasty-hunit",
              "range": "-any",
              "libraries": [
                "main"
              ]
            }
          ],
          "fields": {
            "type": [
              "exitcode-stdio-1.0"
            ]
          }
        },
        "branches": []
      }
    }
  ],
  "setupDependencies": [],
  "flags": [],
  "sourceRepositories": [
    {
      "kind": "head",
      "fields": {
        "location": [
          "https://github.com/haskell/parsec"
        ],
        "type": [
          "git"
        ]
      }
    }
  ],
  "warnings": [],
  "sourceUrl": "https://hackage.haskell.org/package/parsec-3.1.18.0/parsec.cabal",
  "sha256": "28a0cb964cf4c14ac271982fa815bee21cb4ff39e8f2b97efe035e63ad6857aa",
  "importedAt": "2026-10-14T12:46:52.493Z",
  "dependencies": [
    {
      "package": "base",
      "range": ">=4.12.0.0 && <4.23",
      "libraries": [
        "main"
      ],
      "component": "library:main",
      "conditions": []
    },
    {
      "package": "bytestring",
      "range": ">=0.10.8.2 && <0.13",
      "libraries": [
        "main"
      ],
      "component": "library:main",
      "conditions": []
    },
    {
      "package": "mtl",
      "range": ">=2.2.2 && <2.4",
      "libraries": [
        "main"
      ],
      "component": "library:main",
      "conditions": []
    },
    {
      "package": "text",
      "range": ">=1.2.3.0 && <1.3 || >=2.0 && <2.2",
      "libraries": [
        "main"
      ],
      "component": "library:main",
      "conditions": []
    },
    {
      "package": "base",
      "range": "-any",
      "libraries": [
        "main"
      ],
      "component": "test-suite:parsec-tests",
      "conditions": []
    },
    {
      "package": "mtl",
      "range": "-any",
      "libraries": [
        "main"
      ],
      "component": "test-suite:parsec-tests",
      "conditions": []
    },
    {
      "package": "parsec",
      "range": "-any",
      "libraries": [
        "main"
      ],
      "component": "test-suite:parsec-tests",
      "conditions": []
    },
    {
      "package": "tasty",
      "range": ">=1.4 && <1.6",
      "libraries": [
        "main"
      ],
      "component": "test-suite:parsec-tests",
      "conditions": []
    },
    {
      "package": "tasty-hunit",
      "range": ">=0.10 && <0.11",
      "libraries": [
        "main"
      ],
      "component": "test-suite:parsec-tests",
      "conditions": []
    },
    {
      "package": "semigroups",
      "range": "-any",
      "libraries": [
        "main"
      ],
      "component": "test-suite:parsec-tests",
      "conditions": [
        {
          "not": {
            "compiler": "ghc",
            "range": ">=8.0"
          }
        }
      ]
    },
    {
      "package": "base",
      "range": "-any",
      "libraries": [
        "main"
      ],
      "component": "test-suite:parsec-issue127",
      "conditions": []
    },
    {
      "package": "parsec",
      "range": "-any",
      "libraries": [
        "main"
      ],
      "component": "test-suite:parsec-issue127",
      "conditions": []
    },
    {
      "package": "base",
      "range": "-any",
      "libraries": [
        "main"
      ],
      "component": "test-suite:parsec-issue171",
      "conditions": []
    },
    {
      "package": "deepseq",
      "range": "-any",
      "libraries": [
        "main"
      ],
      "component": "test-suite:parsec-issue171",
      "conditions": []
    },
    {
      "package": "parsec",
      "range": "-any",
      "libraries": [
        "main"
      ],
      "component": "test-suite:parsec-issue171",
      "conditions": []
    },
    {
      "package": "tasty",
      "range": "-any",
      "libraries": [
        "main"
      ],
      "component": "test-suite:parsec-issue171",
      "conditions": []
    },
    {
      "package": "tasty-hunit",
      "range": "-any",
      "libraries": [
        "main"
      ],
      "component": "test-suite:parsec-issue171",
      "conditions": []
    },
    {
      "package": "base",
      "range": "-any",
      "libraries": [
        "main"
      ],
      "component": "test-suite:parsec-issue175",
      "conditions": []
    },
    {
      "package": "parsec",
      "range": "-any",
      "libraries": [
        "main"
      ],
      "component": "test-suite:parsec-issue175",
      "conditions": []
    },
    {
      "package": "tasty",
      "range": "-any",
      "libraries": [
        "main"
      ],
      "component": "test-suite:parsec-issue175",
      "conditions": []
    },
    {
      "package": "tasty-hunit",
      "range": "-any",
      "libraries": [
        "main"
      ],
      "component": "test-suite:parsec-issue175",
      "conditions": []
    }
  ],
  "exposedModules": [
    "Text.Parsec",
    "Text.Parsec.ByteString",
    "Text.Parsec.ByteString.Lazy",
    "Text.Parsec.Char",
    "Text.Parsec.Combinator",
    "Text.Parsec.Error",
    "Text.Parsec.Expr",
    "Text.Parsec.Language",
    "Text.Parsec.Perm",
    "Text.Parsec.Pos",
    "Text.Parsec.Prim",
    "Text.Parsec.String",
    "Text.Parsec.Text",
    "Text.Parsec.Text.Lazy",
    "Text.Parsec.Token",
    "Text.ParserCombinators.Parsec",
    "Text.ParserCombinators.Parsec.Char",
    "Text.ParserCombinators.Parsec.Combinator",
    "Text.ParserCombinators.Parsec.Error",
    "Text.ParserCombinators.Parsec.Expr",
    "Text.ParserCombinators.Parsec.Language",
    "Text.ParserCombinators.Parsec.Perm",
    "Text.ParserCombinators.Parsec.Pos",
    "Text.ParserCombinators.Parsec.Prim",
    "Text.ParserCombinators.Parsec.Token"
  ],
  "documents": {
    "readme": {
      "status": "available",
      "sha256": "3c3f8945cd5f7ccee52cc049dc0dc5c8d141336430324a8ae2c60b63452f96c0",
      "error": null,
      "checkedAt": "2026-10-14T12:46:53.361Z"
    },
    "changelog": {
      "status": "available",
      "sha256": "4d29b3d2d3a94dfc2a069eb6160f446423f4cbb8c5430dfccdffe5d204508bee",
      "error": null,
      "checkedAt": "2026-10-14T12:46:53.296Z"
    }
  },
  "documentation": null,
  "versions": [
    {
      "version": "3.1.18.0",
      "imported_at": "2026-10-14T12:46:52.493Z"
    }
  ]
}

Import a package

Enter a package name and an exact version from Hackage. The site contains imported versions only.