Common Lisp

읽어볼 만한 글

참고 서적

Common Lisp을 직접 다룬 국내 서적은 거의 보기 드물고 대부분 원서인데, 그 중에서도 인터넷 상에서 무료로 제공되는 좋은 eBook들이 꽤 있다. 아래는 그 중 몇 가지를 추린 목록이다.

  • Successful Lisp - HTML 형식으로 무료 eBook이 제공됨. Common Lisp에 대해 두루 살펴볼 수 있는 좋은 책. 특정 부분에 대해선 깊이가 조금 얕을 수도 있지만, 오히려 그때문에 입문서로서 꽤 적당한 것 같음.

  • Practical Common Lisp - 역시 HTML 형식으로 무료 eBook을 제공함. 아직 내용을 상세히 읽어보지 못했지만, Common Lisp에 관심이 있는 많은 사람들이 추천하는 책.

  • On Lisp - Paul Graham 저. PDF 또는 PS 형식의 무료 eBook을 제공한다.

  • Common Lisp: A Gentle Introduction to Symbolic Computation - Common Lisp의 기본적인 내용들을 비교적 쉽게 잘 설명해주는 책. PDF와 PS 형식의 무료 eBook 제공됨.

  • 뭐... 이것들 외에도 Google 등에서 검색해보면 많이 나온다. 결국 문제는 자료의 양이 아니라 질이다. 제한된 시간이라는 자원을 적절하게 잘 활용하려면 선택이 중요하다. 시간이 문제가 되지 않는다면 일단 아무 것이나 하나 잡고 끝까지 읽어본 다음 나머지 것들과 비교해보면서 그 다음 읽을 것을 선택하는 것도 좋은 방법일 것임.

Common Lisp 구현체

산업용으로 사용되는 고가의 상용 Common Lisp 구현체 중 가장 유명한 것 두 가지는 Franz의 Allegro CLLispWorks일 것이다. 그러나, 공부 또는 작은 규모의 프로젝트가 목적이라면 open source 또는 무료(free) 구현체도 나쁘지 않을 것이다. 아래에 제법 쓸만한 것들 몇 가지를 나열해보았다.

  • SBCL - Steel Bank Common Lisp. 무료 Common Lisp 구현체 중에서 꽤 많은 지지를 받고 있다. 다양한 OS 상에 이식이 되어 있고, Windows 용도 있지만, 아직 완전하지는 않다. 속도만 보면 지존급.

  • CLISP - SBCL을 알기 전 Common Lisp 입문 때 공부를 위해 주로 사용하던 구현체. 상당한 역사를 가지고 있고, 다양한 OS 상에 이식되어 있다.

  • Clozure CL - 상용 구현체인 OpenMCL이 open source로 전환되면서 이름도 함께 바뀌었다. 상용 구현체였던 만큼 꽤 안정적이고 빠른 속도를 보인다. Windows 환경에서 SBCL이 불완전해 걱정된다면 이놈이 적절한 대안이 될 수 있을 듯.

  • ECL

  • ABCL - Java로 구현된 Common Lisp 구현체. Clojure가 새로운 형태의 Lisp 방언이라면 ABCL은 JVM 상에서 동작하는 Common Lisp 구현체이다.

Lisp IDE

  • LispIDE - Windows 환경에서 사용할 수 있는 간단한 IDE. Common Lisp과 Scheme에 대한 Syntax highlighting을 지원하고, 다양한 Lisp 방언 구현체들에 대한 연동을 지원한다.

  • Emacs + SLIME - 아마도 상용 IDE 환경을 제외하면 최적의 Common Lisp 개발 환경이 아닐까 싶다. Windows 상에서 설정하기가 꽤 까다롭다는 점만 빼면 매우 훌륭함.