로컬에 Common Lisp 설치하기

내 컴퓨터에서 Exercism의 연습 문제를 풀 수 있도록 로컬에 Common Lisp을 설치하는 방법을 배워요.


필요한 것들

Common Lisp으로 개발하는 데 기본적으로 필요한 것은 다음과 같아요:

  • 코드를 컴파일하고 실행할 수 있게 해 주고 REPL도 제공하는 Lisp "구현체"
  • Lisp 코드를 다루는 기능을 갖춘 텍스트 편집기
  • (있으면 좋아요) Common Lisp 언어에서 자주 쓰이는 참고 자료인 "Common Lisp Hyperspec"

Roswell

Roswell은 Common Lisp 구현체를 설치하고 관리하는 명령이자, Lisp 애플리케이션을 쉽게 개발하고 배포할 수 있게 해 주는 여러 기능을 모아 놓은 도구예요. 설치와 테스트 단계를 간단하게 하기 위해 Roswell을 사용해요.

Roswell 설치

설치 안내서를 보고 사용하는 플랫폼에 맞는 지침을 따라요. 대부분의 사용자에게는 다음이면 충분해요:

  • MacOS와 Linux에서는 Homebrew를 쓰면 간단해요:
    brew install roswell
    
  • Windows에서는 Scoop을 사용해요:
    scoop install roswell
    

Roswell을 처음 사용하면 SBCL과 Quicklisp를 내려받아 설치해요. 다음을 실행해 봐요:

ros help

REPL에 들어가려면 다음을 실행해요

ros run

텍스트 편집기 설정

Common Lisp이 처음인 분들, 특히 Emacs을 써 본 경험이 있는 분들은 Portacle, 포터블 Common Lisp 환경을 설치하면 쉽고 빠르게 시작할 수 있어요. 무료이고 기능도 충분하며, 모든 주요 플랫폼에서 동작하고 "바로 쓸 수 있게" 미리 설정되어 있어요. 다음을 제공해요:

  • Lisp 구현체: Quicklisp과 ASDF가 포함된 SBCL
  • 텍스트 편집기: Emacs

...그리고 Lisp 코드를 작성하기 위한 다양한 부가 기능도 함께요:

  • SLIME("Superior Lisp Interaction Mode for Emacs")은 Emacs를 Common Lisp IDE로 만들어 줘요
  • ParEdit은 괄호를 다루는 일을 쉽게 해 줘요.

모든 것이 이미 설정된 상태로 제공돼요. 첫 페이지에서 내려받아 Portacle을 설치해요.

참고: Emacs(텍스트 편집기)에 익숙하지 않다면 처음에는 어리둥절할 수 있어요. 다행히 Emacs와 SLIME에 관한 입문 자료가 온라인에 많이 있어요.

전통적인 시작 방법

필요한 도구를 각각 따로 설치하는 편이 좋다면, 다음을 설치하고 설정해야 해요:

  • Lisp을 이해하는 텍스트 편집기: Emacs에 Slime이나 Sly 패키지를 함께 쓰는 것이 흔한 선택이지만, VIM에 SLIMV, Atom에 SLIMA, 또는 VSCode에 Common Lisp 플러그인을 쓰는 것도 좋아요.
  • Common Lisp 구현체: SBCL은 Linux, MacOS, Windows에서 모두 동작하는 "안전한" 선택이에요. 이 언어는 표준을 따르므로 다른 표준을 준수하는 구현체도 잘 동작해요.
  • 라이브러리 관리를 위한 Quicklisp. 내려받은 뒤에는 안내를 따라 Common Lisp 구현체와 제대로 연동되도록 해요.