GHCJS is a Haskell-to-JavaScript compiler that reuses GHC’s front end to compile Haskell source into JavaScript for execution in browsers and Node.js. It aims to preserve Haskell’s semantics—including laziness and rich types—by shipping a small runtime and shims for core libraries. Developers write normal Haskell, use Cabal/Stack to build, then bundle the generated JavaScript alongside required support code. Interoperability with the JavaScript world is provided through a foreign-function interface, allowing Haskell code to call browser APIs or Node modules and to be called back from JS. The ecosystem includes packages tailored to GHCJS (for example DOM bindings and FRP libraries), enabling full single-page apps written in Haskell. Because it mirrors GHC closely, many pure Haskell libraries “just work,” making it practical to share code between server and client.

Features

  • Compilation from Haskell (GHC) to JavaScript
  • Support for standard Haskell libraries and code, with JS backend
  • Interoperability with JavaScript (FFI, calling JS from Haskell)
  • Runtime support (garbage collection, threading abstraction)
  • Integration with GHC build system and toolchain
  • Ability to run rich UI/web logic or browser applications written in Haskell

Project Samples

Project Activity

See All Activity >

Categories

Compilers

License

MIT License

Follow GHCJS

GHCJS Web Site

Other Useful Business Software
Gemini 3 and 200+ AI Models on One Platform Icon
Gemini 3 and 200+ AI Models on One Platform

Access Google's best plus Claude, Llama, and Gemma. Fine-tune and deploy from one console.

Build generative AI apps with Vertex AI. Switch between models without switching platforms.
Start Free
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of GHCJS!

Additional Project Details

Operating Systems

Linux, Mac, Windows

Programming Language

Haskell

Related Categories

Haskell Compilers

Registered

2025-09-26