완고한 개발자의 언어 서버 도전기

A curmudgeon tries a language server

완고한 개발자의 언어 서버 도전기

이 글은 Haskell 개발자가 언어 서버(LSP)와 ghcid, foreign-store를 결합해 Lisp 스타일의 대화형 개발 워크플로를 구현하려는 시도를 다룹니다. 저자는 기존의 편집-컴파일-실행 사이클을 벗어나, 코드를 저장할 때마다 자동으로 재컴파일하고 테스트를 실행하며 애플리케이션 상태를 유지하는 방법을 소개합니다. Emacs에서 Eglot과 Haskell Language Server를 설정하는 과정의 세부 단계와 겪은 어려움도 공유합니다.

우리는 결국 편집기에서 코드를 작성하고, LSP 서버가 코드에 대한 정보를 제공하는 프로세스를 갖게 됩니다. REPL에서 실험하는 대신, 실험을 단위 테스트로 작성합니다. 변경 사항을 저장하면 ghcid가 코드를 다시 로드하고, 테스트를 실행하고, 중요한 상태를 잃지 않고 애플리케이션을 재시작합니다. 우리는 편집기를 떠나지 않습니다.

이 날의 다른 글

2026-08-26