Haskell·GTK 4 할 일 앱 튜토리얼, Elm 구조로 상태·화면 분리
Feriel Choutri de Tarlé가 Haskell·GTK 4·Adwaita로 할 일 앱을 만드는 튜토리얼 첫 편을 공개했다. haskell-gi 바인딩으로 창과 위젯을 구성하고, Elm의 Model·View·Update 구조로 사용자 입력과 상태 변경을 연결한다. 중급 Haskell 개발자 대상이며 전체 프로젝트 코드도 공개했다.
haskell-gi는 GTK 라이브러리에서 Haskell 바인딩을 자동 생성하며, C API와 대응되는 인터페이스를 제공한다.
Adwaita는 GNOME의 접근성과 스타일 지침을 반영한 위젯을 제공하고 실행 중 밝은·어두운 테마 변경을 지원한다.
첫 편은 할 일 추가와 완료 상태 변경을 모델링한다. 저장 효과는 정의하지만 제시된 런타임 코드에서는 실행하지 않는다.
본문 코드는 주요 개념 중심으로 일부 생략됐으며 전체 프로젝트는 adwaita-todo 저장소에 제공된다.
상태가 실제로 바뀔 때만 저장 효과를 생성하도록 구성해, 같은 완료 상태를 반복 입력할 때 불필요한 저장 요청을 줄인다.
원문
- Making a GTK application in Haskell, part 1floreal.tech · 원문 2026-10-05