awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
valderman avatar

valderman/haste-compiler

0
View on GitHub↗
1,482 stars·107 forks·Haskell·BSD-3-Clause·17 viewshaste-lang.org↗

Haste Compiler

Haste-compiler is a source-to-source compiler and web framework that translates Haskell source code into JavaScript programs for execution in web browsers and server environments. It enables the creation of unified web applications from a single type-safe codebase, automatically generating communicating client and server binaries while preserving static type guarantees across tiers.

The system translates high-level code through an existing compiler infrastructure paired with custom code generators, supported by an AST-based optimization and minification pipeline for producing lean deployment assets. It incorporates file-extension-based module resolution to handle platform-specific dependencies automatically during the build phase.

Integration capabilities include binding native script functions and exporting compiled routines to interact with external environments, alongside browser API bindings for low-level document manipulation, canvas rendering, local storage, and networking. The runtime environment supports concurrent execution and low-level memory handling through unboxed and byte arrays, while bundled command-line utilities manage package dependencies and standard library configuration.

Features

  • Source Code Compilers - Translates high-level functional code into efficient JavaScript programs for browsers and command lines.
  • Haskell Compilation - Converts Haskell source code into efficient JavaScript programs for execution in browsers and servers.
  • Client-Server Architecture - Generates communicating client and server binaries from a single unified codebase.
  • GHC-Based Translators - Translates high-level functional source code into optimized JavaScript scripts via custom code generators.
  • Type-Safe Interface Architectures - Preserves static type guarantees across client and server tiers from a single program.
  • Full-Stack Web Development - Enables writing client and server logic within a single type-safe codebase.
  • Type-Safe Web Frameworks - Builds unified web applications with shared type-safe logic across client and server tiers.
  • Web API Integration - Interacts directly with modern browser features including WebSockets, local storage, canvas rendering, and the DOM.
  • Production Asset Optimizations - Generates lean deployment assets by stripping unnecessary code and optimizing compilation outputs.
  • AST Optimizations - Applies optimizations to abstract syntax trees to eliminate dead code and simplify logic.
  • JavaScript Interoperability - Exchanges data and invokes functions between compiled functional programs and the native JavaScript runtime.
  • Foreign Function Interfaces - Binds native script functions and exports compiled routines to integrate with external environments.

Star history

Star history chart for valderman/haste-compilerStar history chart for valderman/haste-compiler

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Haste Compiler

Similar open-source projects, ranked by how many features they share with Haste Compiler.
  • reasonml/reasonreasonml avatar

    reasonml/reason

    10,313View on GitHub↗

    Reason is a strongly typed functional language and multi-target compiler designed to produce either JavaScript for web environments or native machine code for operating systems. It serves as an OCaml-compatible language that shares an abstract syntax tree with OCaml, providing a practical syntax for the OCaml ecosystem. The project functions as a type-safe frontend language, incorporating JSX support to build user interfaces through structural elements that translate into type-safe function calls. It enables deep integration with the JavaScript ecosystem, allowing the use of existing librarie

    OCamljavascriptocamlprogramming-language
    View on GitHub↗10,313
  • elm/compilerelm avatar

    elm/compiler

    7,794View on GitHub↗

    This project is a functional programming compiler and JavaScript transpiler that transforms a statically typed language into optimized JavaScript for web browsers. It serves as a frontend architecture framework, providing a static type system and a package manager that enforces semantic versioning. The compiler uses a type-checking engine with automatic type inference to prevent runtime errors and guide code refactoring. It implements a structural pattern for managing application state and rendering user interfaces through a virtual DOM, utilizing immutable data and purity-based state transit

    Haskellcompilerelm
    View on GitHub↗7,794
  • commercialhaskell/stackcommercialhaskell avatar

    commercialhaskell/stack

    4,047View on GitHub↗

    Stack is a build tool, package manager, and project bootstrapper for the Haskell language. It provides a consistent environment for compiling source code, managing project binaries, and executing programs. The system ensures reproducible builds through snapshot-based dependency resolution and manages the installation of specific compiler binaries to match project requirements. It utilizes content-addressable package storage and local-path caching to maintain the integrity of source code and avoid redundant downloads across different projects. The toolset covers the full development lifecycle

    Haskell
    View on GitHub↗4,047
  • crystal-lang/crystalcrystal-lang avatar

    crystal-lang/crystal

    20,299View on GitHub↗

    Crystal is a statically typed, compiled programming language designed for high performance and memory safety. It leverages an LLVM-based compiler to translate source code into optimized machine-executable binaries, while its type-inference-based static analysis enforces strict safety rules during the build process. The language distinguishes itself through a fiber-based concurrent runtime that manages lightweight execution units for asynchronous input and output without blocking the main process. It also features a powerful compile-time macro system that allows for the inspection and transfor

    Crystalcompilercrystalcrystal-language
    View on GitHub↗20,299
See all 30 alternatives to Haste Compiler→

Curated searches featuring Haste Compiler

Hand-picked collections where Haste Compiler appears.
  • Source compiler

Frequently asked questions

What does valderman/haste-compiler do?

Haste-compiler is a source-to-source compiler and web framework that translates Haskell source code into JavaScript programs for execution in web browsers and server environments. It enables the creation of unified web applications from a single type-safe codebase, automatically generating communicating client and server binaries while preserving static type guarantees across tiers.

What are the main features of valderman/haste-compiler?

The main features of valderman/haste-compiler are: Source Code Compilers, Haskell Compilation, Client-Server Architecture, GHC-Based Translators, Type-Safe Interface Architectures, Full-Stack Web Development, Type-Safe Web Frameworks, Web API Integration.

What are some open-source alternatives to valderman/haste-compiler?

Open-source alternatives to valderman/haste-compiler include: reasonml/reason — Reason is a strongly typed functional language and multi-target compiler designed to produce either JavaScript for web… elm/compiler — This project is a functional programming compiler and JavaScript transpiler that transforms a statically typed… commercialhaskell/stack — Stack is a build tool, package manager, and project bootstrapper for the Haskell language. It provides a consistent… nim-lang/nim — Nim is a statically typed, compiled systems programming language designed for high performance and cross-platform… crystal-lang/crystal — Crystal is a statically typed, compiled programming language designed for high performance and memory safety. It… facebook/reason — Reason is a statically typed programming language and compiler based on the OCaml ecosystem. It translates high-level,…