Edward Kmett, 장난으로 시작한 Turbo Haskell로 GHC 자체를 JVM에서 실행하다

Edward Kmett이 휴가 중 장난삼아 시작한 THC(Turbo Haskell Compiler)가 GHC 9.14.1의 모든 prim-op을 구현하고 GHC Core를 JVM에서 JIT 실행하는 수준으로 성장했다. GHC가 파싱·타입체킹·최적화를 맡고, THC가 Truffle/GraalVM 런타임에서 실행을 담당한다. Template Haskell과 Linear Haskell을 지원하며, Python·Ruby·R·JavaScript와의 polyglot FFI, SIMD, 테일콜 최적화, Project Loom 기반 그린 스레딩까지 갖췄다. pandoc, happy, alex는 물론 GHC 자체도 컴파일 가능하다.

THC는 여러 Haskell 프로그램을 JIT 또는 AOT 컴파일할 수 있는데, pandoc, happy, alex는 물론 오늘부로 GHC 자체까지 가능하다!
  1. cosmic_quanta

    우연히도, 작성자가 방금 Haskell Interlude 팟캐스트에서 인터뷰를 했더군요:

    https://haskell.foundation/podcast/87/

  2. zerr

    나는 Turbo Vision 기반의 TUI IDE를 기대했는데.

  3. BalinKing

    약간만 관련된 얘기지만, 예전에 우연히 발견해서 정말 멋져 보인다고 생각했던 JVM용 Haskell 방언인 Frege[0]가 떠오르네요.... 최근 커밋은 보이는데 릴리스는 전부 아주 오래된 거라, 프로젝트 상태가 어떤지 알 수가 없네요.

    [0] https://github.com/frege/frege

  4. woadwarrior01

    polyglot FFI 기능(GraalVM 덕분)은 "functional core, imperative shell" 스타일 설계를 구현하는 데 매우 유용할지도 모르겠네요.

  5. draven

    참고로 그 글은 Reddit의 토론을 링크하고 있는데, 거기에 여기 올라온 여러 댓글에 대한 답변이 있습니다.

이 날의 다른 글

2026-10-02