Haskell 재단, "AI 시대엔 Haskell이 답"… 10년 된 코드도 그대로 컴파일한다
A technical vision for the Haskell ecosystem
Haskell Foundation의 기술 리더십 위원회(TLC)가 공식 출범하며 비전을 공개했다. 컴파일 속도와 디버깅, 온보딩 경험을 대폭 개선하고, 보안과 공급망 강화, 그리고 10년 전 Haskell 코드를 최신 GHC로 소스 수정 없이 컴파일하는 장기 안정성을 목표로 내걸었다. 특히 AI 코드 생성 시대에 검토자에게 유리한 타입 안전성과 eDSL 기반 가드레일을 앞세워 '인간이 루프 안에 있는' 언어로 자리매김하겠다는 전략이다. 커뮤니티 제안 절차도 열어두고 기업과 기여자를 모집한다.
형식 검증이나 바이브코딩에 더 나은 언어는 있을지 몰라도, '인간이 루프 안에 있는' 일에는 Haskell보다 나은 언어가 없다.
HN 토론
77- ecshafer
최근에 Haskell을 생각하고 있었는데, 왜 AI 쪽에서 더 인기가 없을까? Haskell은 매우 간결하고 토큰 효율적이며, 표현력이 풍부한 안전 기능이 많다. Rust는 엄격함 덕분에 추가 채택이 이루어지고 있으니, 작성 시간이 같다면 JavaScript 대신 Rust를 쓰지 않을 이유가 뭐가 있겠는가?
에이전트 AI에 이상적인 언어는 극도로 엄격해서 AI가 정확성을 위해 도구를 반복적으로 사용할 수 있는 언어라고 생각한다. 아마도 더 장황하지 않고 간결해서 AI가 토큰을 더 효율적으로 사용할 수 있게 해줄 것이다.
- pmkary
S. P. Jones가 "Haskell은 쓸모없다"라고 유명하게 말한 메모 영상이 있다. 나는 Haskell을 사랑하지만, C, C++, JavaScript, Rust, C#처럼 보편적인 언어가 되었으면 했다. 그 말은 즉, 데스크톱, 모바일, 웹 앱을 만드는 데 사용할 수 있었으면 한다는 뜻이다. JavaScript는 웹 전체를 구동하고, node에서 누구나 CLI를 만들고 코드를 웹과 공유할 수 있게 하며, React Native를 통해 모바일, Electron 및 유사한 것들을 통해 데스크톱에서도 사용된다. 셀 수 없이 많은 것들을 위한 플러그인을 작성할 수 있게 하고, GNOME Shell을 위한 것도 작성할 수 있게 한다... C와 C++은 아마도 세상 모든 것의 뒤에 있으며, 끈 이론이 마침내 밝혀지면 그것들이 C로 작성되었다는 것을 알게 될 것이다. 그리고 그것들은 웹으로 컴파일될 수 있고 세상 거의 모든 것이 그렇다. Rust는 그 둘의 자리 표시자이고, C#은 Mono를 보고 스스로를 재창조해서 이제 브라우저에서도 작동한다. Haskell을 볼 때마다 CLI 앱을 만드는 것 외에 무엇을 더 할 수 있을지 궁금해지고, 더 많은 코드 재사용과 흥미로운 애플리케이션을 제공하는 다른 것을 선택하게 된다.
Haskell에 대한 내 비전이 있다면, 그것은 유용해지는 것이었다. 학술 연구와 컴파일러 만드는 것은 멋지고, 여기저기 몇 가지 CLI 것들도 멋지지만, 왜 우리는 그것으로 음악 플레이어와 게임 엔진, Flutter, 웹 페이지를 만들 수 없는가? 이 언어는 세상의 모든 JS/C 같은 언어들보다 훨씬 더 우아하고 아름다우며, 내가 하는 일에 정말로 사용할 수 있기를 바랐다. 웹을 위한 Servant/Yesod/IHP/Miso/Reflex, GTK/M[…]에 대해 알고 있다.
- carterschonwald
hasufell은 Haskell 세계에서 멋진 사람이었다. 그는 사물에 대해 매우 명확한 생각을 가지고 있다.
또한 이제 컴퓨터 지원으로 Haskell에서 만들 수 있는 것들은 엄청나다. 이번 주 초에 나는 모든 축에서 최고의 STEP 파일 형식 리더/라이터 중 하나라고 믿는 것을 세웠다. 일부 C 버전은 내가 시도할 수 있었던 가장 큰 CAD 어셈블리에서 20-30퍼센트 더 빠르다.
사람들이 고려하지 않는 중요한 축: LLM이 더 나은 코딩을 위해 확장되는 주된 방법은 메트릭 메가톤의 강화 학습 추적이며, 멋진 타입 검사는 더 저렴하고 빠른 훈련 피드백 루프를 제공한다.
LLM을 일종의 미친 듯한 매니악 인턴으로 어깨 너머로 보면서, 나는 볼 수 있지만 같은 규모로 타이핑할 수 없는 API와 디자인을 만들 수 있다. 하지만 정확한 디자인의 키스톤을 꽤 간결하게 지정할 수 있고, 에이전트는 일종의 컴파일러 역할을 하며 내가 수정하고 반복 실행해야 한다.
- nilkn
Rust 같은 경쟁자 위에 충분한 한계 가치를 추가하지 못한다. 대신 주목받고 있는 코딩 에이전트와의 더 중요한 시너지가 있다. 예를 들어 자율 형식 검증 같은 것이다. Lean 같은 언어는 완전히 새로운 엔지니어링 범주를 가능하게 하지만 Haskell은 그렇지 않다. 그래서 그것은 어려운 중간에 갇혀 있다. 이득에 비해 너무 달라서 정당화하기 어렵지만, 새로운 기회를 포착할 만큼 충분히 다르지도 않다.
- KolmogorovComp
컴파일 시간이 큰 문제라는 데 동의하지만, 초점은 정말로 증분 빌드에 맞춰져야 한다고 생각한다. Haskell 컴파일러가 해야 하는 작업량을 고려하면 전체 빌드에서 상당히 느린 것은 예상된 일이다.
하지만 증분 빌드는 느릴 이유가 없다. 범위가 함수와 타입 수준만큼 세밀하다면 말이다.