dovetail: A PureScript interpreter with a Haskell FFI.

[ bsd3, language, library ] [ Propose Tags ]

Dovetail is a general-purpose PureScript corefn interpreter with an FFI to Haskell. Please see the README on GitHub at, or check out the examples directory, to learn how to use the library.

[Skip to Readme]


[Last Documentation]

  • Dovetail
    • Dovetail.Build
    • Dovetail.Evaluate
    • Dovetail.FFI
      • Dovetail.FFI.Builder
      • Dovetail.FFI.Internal
    • Dovetail.Prelude
    • Dovetail.REPL
    • Dovetail.Types


Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


  • No Candidates
Versions [RSS],
Dependencies ansi-terminal, base (>=4.7 && <5), containers, exceptions, haskeline, mtl, purescript, purescript-cst, semialign, text, these, transformers, unordered-containers, vector [details]
License BSD-3-Clause
Copyright 2021 Phil Freeman
Author Phil Freeman
Category Language
Home page
Bug tracker
Source repo head: git clone
Uploaded by PhilFreeman at 2021-11-18T06:44:24Z
Reverse Dependencies 1 direct, 0 indirect [details]
Downloads 223 total (6 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
All reported builds failed as of 2021-11-18 [all 2 reports]

Readme for dovetail-

[back to package description]


Dovetail is a general-purpose PureScript interpreter written in Haskell.

It has excellent support for interop with Haskell code via PureScript's foreign function interface, along with a high-level Haskell API for integrating such code.

As such, it is possible to write low-level or domain-specific code in Haskell, and then to write the "glue code" in PureScript. In this way, Dovetail is a tool for reusing the frontend of the PureScript compiler (its syntax and type checker) to build domain specific languages in Haskell.

Getting Started

To understand the library and how to use it, it is recommended that you read through the Haddock documentation, alongside the provided examples:

You can build the code and examples in this repository using stack build, and run the test suite with stack test.