# typelead/eta

The Eta Programming Language, a dialect of Haskell on the JVM

Repository: https://github.com/typelead/eta
Canonical: https://ross.abutalabs.com/products/eta
Homepage: https://eta-lang.org
Language: Haskell
License: BSD-3-Clause
License Family: permissive
Topics: eta, jvm, haskell, functional-programming
Last push: 2022-07-31T17:14:19+00:00

## Health v2 (maintenance only)
Score: 23/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 0, release rhythm 8, longevity 100
- inputs: {"age_days": 3800, "days_push": 1494, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 2634, forks 142 (observed 2026-08-28T04:07:06.203509+00:00)

## What it is
Eta is a dialect of Haskell that compiles to and runs on the JVM, forked from GHC 7.10.3 with strong Java interoperability via a typed FFI. It ships with the Etlas build tool, Gradle/sbt plugins, and a REPL, and supports concurrency features like STM, MVars, and fibers.

## Use cases
- run haskell on the jvm
- write functional code that interoperates with java
- build concurrent and distributed services with stm
- use hackage libraries in a jvm project
- add haskell to a mixed-language gradle or scala project
- learn functional programming with strong type inference

## When to choose
- you want Haskell semantics but must deploy on the JVM
- you need typed interop with Java, Scala, or Clojure codebases
- you want GHC-style type safety with JVM tooling

## When to avoid
- you need GHC 8+ features or current Hackage compatibility
- you need an actively maintained language with recent releases
- you want non-JVM targets like native binaries or .NET

## Facets
- artifact type: cli-tool
- maturity: maintenance
- function: compiler, programming-language, interpreter, build-tool
- domain: programming-languages, compilers
- platform: jvm, cross-platform, cli
- tags: haskell, eta, jvm-languages, functional-programming, java-interop, etlas, ghc-fork, stm, jvm, docker

## Member repositories
- typelead/eta (main) score 23

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:07:06.203509+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T02:19:34.416000+00:00, confidence not recorded.
  - readme: https://github.com/typelead/eta (fetched 2026-08-28T04:07:06.203509+00:00, sha 9618e2b2c89d)
  - homepage: https://eta-lang.org (fetched 2026-08-29T10:02:30.471941+00:00, sha df53a229b3e2)
  - site_page: https://eta-lang.org/docs (fetched 2026-08-29T10:02:30.474397+00:00, sha 5269027acae6)
  - site_page: https://eta-lang.org/docs/user-guides (fetched 2026-08-29T10:02:30.476461+00:00, sha a1f05b43d5fa)
  - site_page: https://eta-lang.org/docs/tutorials (fetched 2026-08-29T10:02:30.478050+00:00, sha 20610d65ffb7)
  - site_page: https://eta-lang.org/docs/cheatsheets (fetched 2026-08-29T10:02:30.479540+00:00, sha 210883fc90af)
  - site_page: https://eta-lang.org/docs/faq (fetched 2026-08-29T10:02:30.481145+00:00, sha 24b68702aca9)
  - site_page: https://eta-lang.org/docs/user-guides/eta-user-guide/installation/methods (fetched 2026-08-29T10:02:30.483627+00:00, sha bc5a95d2a942)
  - site_page: https://eta-lang.org/docs/user-guides/eta-user-guide/introduction/what-is-eta (fetched 2026-08-29T10:02:30.485730+00:00, sha 6bf96f4185bf)
  - site_page: https://eta-lang.org/docs/tutorials/web-services/overview (fetched 2026-08-29T10:02:30.487923+00:00, sha 054e1f720514)
- Data as of 2026-08-30T08:39:29.467469+00:00.
