Lisp 가독성 논란: 인지과학적 관점에서 본 구문 분석 — AI 생성 일러스트AI 일러스트
리서치 뉴스

Lisp 가독성 논란: 인지과학적 관점에서 본 구문 분석

What makes Lisp difficult to read?

Hacker News9월 28일 발표 · 2분

Lisp의 가독성 문제는 단순히 사용자의 익숙도 차이가 아닌, 인간의 인지과학적 처리 방식과 관련이 있다는 이론을 제시합니다.

세 줄 요약Hacker News 원문 기반
  1. C 스타일 언어는 공백 배치나 구조가 게슈탈트 법칙(근접성 등)에 더 잘 맞아 시각적으로 토큰 그룹화가 용이하며, Lisp의 균일한 구문보다 읽기 쉽다는 분석입니다.
  2. 코드를 설계할 때는 문법적 정확성 외에도 인간의 작업 기억 용량이나 시각 처리 한계 같은 인지과학적 원리를 고려해야 함을 강조합니다.
  3. 다만, 제시된 가독성 이론은 스트룹 효과나 근접성의 법칙 등 인지 현상에 기반한 설계 원칙이며, 모든 상황에 객관적으로 적용되는 절대 기준은 아닐 수 있습니다.

Lisp 계열 언어는 괄호(parenthesis)를 많이 사용하는 문법으로 인해 가독성이 떨어진다는 평가를 받습니다. 이러한 낮은 가독성은 단순히 사용자의 익숙도 문제라기보다는, 인간의 인지과학적 처리 방식과 관련이 있다는 이론이 제시됩니다. 글쓴이는 Lisp의 표기법이 왜 파싱에 더 많은 노력을 요구하는지에 대한 자신의 이론을 설명하며, 시각적 인식 메커니즘을 분석 근거로 활용합니다.

C 스타일 언어는 문법적으로 다양한 형태의 표기법(예: 중위 표기법, 키워드 등)을 사용하는데, 이러한 변이가 가독성에 영향을 미칩니다. 특히 게슈탈트 심리학의 '근접성의 법칙'에 따르면, C-스타일 언어는 공백 배치나 구조가 이 법칙을 더 잘 따르는 경향이 있습니다. 반면 Lisp 스타일은 모든 함수와 인자가 동일한 간격으로 분리되어 있어 시각적 그룹화를 전달하는 데 어려움이 있다는 분석입니다.

또한, 괄호의 배치 거리는 가독성에 중요한 영향을 미칩니다. Lisp는 함수 이름과 여는 괄호 사이에 거리가 있어, C 스타일 표기법에 비해 닫는 괄호를 시각적으로 매칭하기 어렵게 만듭니다. 더 나아가, 중첩된 표현식을 읽을 때는 작업 기억(working memory)의 한계가 존재하며, 이로 인해 깊이 중첩된 구조를 이해하는 것이 어려워질 수 있습니다.

원문Hacker News · What makes Lisp difficult to read?같은 주제 가이드 · 바로 써 보기영어 논문, 초록부터 쉽게 읽기

평일 아침 메일로 받아 보기 ›틀린 곳 알리기