Tag Archives: tutorial

core.logic 한글 튜토리얼

내가 Clojure 언어에 관심을 갖게된 데는 core.logic의 영향이 가장 컸다. 개인적으로 logic programming과 declarative programming에 관심이 있어 Prolog도 고려했지만, 실용적인 면에서는 거리가 멀어 다른 언어를 알아보던 중 Clojure를 만나게 됐다.

어느덧 Clojure 번역서도 출간했고, 이제 본격적으로 core.logic을 들여다 볼 차례인데 Clojure 관련 도서에도 단편적으로만 소개되어 있고, 한글 문서는 물론 찾아볼 수 없거니와 온라인 상의 영문 문서들도 잘 정리되어 있지 않아 Github에 공개된 소개 내용, 튜토리얼과 그 소스코드들을 모아 번역을 해나가면서 정리하려 한다. Clojure 자체 뿐 아니라 core.logic 자체 버전도 몇 번의 revision이 되었는데 튜토리얼들의 소스코드는 아직 업데이트되어 있지 않은 것 같아 테스트를 해가면서 업데이트해야 할 것 같다. 

이제 첫 세팅만 해둔 상태라 내용이 거의 없지만 차츰 업데이트할 계획이다. 요즘 인공지능 관련해서 머신러닝이나 딥러닝에만 관심들이 많지만 언젠가는 논리적 추론이 결합되어 엄청난 시너지를 내는 날이 오리라 믿고 있는데, 그 때 이 자료가 유용하게 사용될 수 있으면 좋겠다. 

 


 

튜토리얼 문서 발행은 GitBook은 Markup을 그대로 활용할 수 있어서 편리하긴 한데, 검색 기능이나 TOC를 구성하는 한계가 있어 Read the Docs를 활용하기로 했다. 처음엔 Python 문서화를 위해 개발된 Sphinx를 활용한 documentation server를 제공하는 서비스인데, 일반적인 문서화에도 괜찮게 적용할 수 있는 것 같다.

 

core-logic-tutorial main

 

restructuredText 포맷으로 작성해서 Github에 커밋하면 테마를 적용해서 이 그림처럼 발행해주는데, 계속 실패하는 바람에 상당히 애를 먹었다. 알고 보니 pdflatex 실행시에 한글 캐릭터를 인식하지 못해 일정 횟수 이상의 에러가 나면 아예 발행 자체가 되지 않았던 것. pdf 발행은 필요없는데 Read the Docs에 이를 제외하는 옵션은 제공하지 않기 때문에, conf.py의 latex 관련 옵션을 수정해주어야 한다.