TECH 으로 돌아가기
TECH HACKER NEWS 오늘 2분 읽기 22 READS

노빅이 보여주는 파이썬 100줄짜리 Lisp 인터프리터

구글 연구이사 피터 노빅이 파이썬 약 100줄로 Scheme(Lisp 방언) 인터프리터 'Lispy'를 만드는 과정을 보여주는 고전 글입니다. 핵심은 인터프리터가 결국 두 단계로 나뉜다는 통찰입니다. 첫째, 파싱(parse): 소스 문자열을 토큰으로 쪼개고 괄호 구조를 따라 중첩 리스트로 바꿉니다. Lisp는 코드가 곧 리스트라는 동형성(homoiconicity) 덕분에 이 과정이 놀랍도록 단순합니다. 둘째, 평가(eval): 변수, 조건문(if), 정의(define), 함수 호출 같은 소수의 규칙만으로 재귀적으로 표현식을 계산합니다. 변수 스코프는 딕셔너리 기반 '환경(Environment)'으로 처리하고, 함수는 클로저로 표현합니다. 복잡해 보이는 언어 처리기가 사실은 재귀와 자료구조 매핑의 조합임을 명료하게 드러냅니다. 컴파일러·인터프리터를 어렵게만 느꼈던 개발자에게, 언어가 어떻게 동작하는지 밑바닥부터 이해하게 해주는 최고의 입문 자료입니다. 후속 글 'lispy2'에서는 매크로와 꼬리재귀까지 확장합니다.

SOURCE · HACKER NEWS
원문 전체 보기 → https://norvig.com/lispy.html
SHARE
처리 중...