yozm.tech
피드로 돌아가기
news.hada.ioHOTAI 재작성

Lisp, 왜 읽기 어려울까? 괄호 너머의 인지과학적 분석

오랜 시간 프로그래머들 사이에서 Lisp(리스프) 언어의 가독성 논란은 뜨거웠습니다. 단순히 익숙함의 문제를 넘어, 괄호 배치와 코드 구조가 인간의 시각적 지각 및 작업 기억에 미치는 영향을 인지과학적으로 분석한 글이 주목받고 있습니다. 이 분석은 Lisp의 전위 표기법과 중첩 구조가 가독성을 떨어뜨리는 이유를 설명하며, 더 읽기 쉬운 문법 설계를 위한 네 가지 원칙을 제시합니다.

3일 전·2026.09.29·읽기 2분·neo https://news.hada.io/user/neo

오랜 시간 Lisp(리스프) 언어는 강력한 기능에도 불구하고 특유의 괄호 중심 문법 때문에 '읽기 어렵다'는 인식을 받아왔습니다. 많은 Lisp 개발자들은 익숙해지면 문제가 없다고 말하지만, 최근에는 단순히 익숙함의 문제를 넘어 인간의 지각과 기억 방식에 기반한 인지과학적 관점에서 Lisp 문법의 가독성 문제를 분석한 글이 주목받고 있습니다. 이 분석은 괄호 배치, 시각적 그룹화, 중첩 깊이, 그리고 코드 읽는 순서가 가독성에 미치는 영향을 심층적으로 다룹니다.

이 글은 C 스타일 언어의 `함수(인자)` 형태와 Lisp의 `(함수 인자)` 형태를 비교하며, Lisp의 전위 표기법이 괄호 사이의 거리를 멀게 만들어 시각적 그룹화를 방해한다고 지적합니다. 게슈탈트 심리학의 근접성 법칙에 따르면 가까이 있는 요소들이 더 관련성 높게 지각되는데, Lisp는 함수 이름까지 괄호 안에 넣어 인자들과 같은 공백으로 구분하므로 시각적으로 덩어리를 파악하기 어렵다는 것입니다. 또한, 대응하는 괄호가 멀리 떨어져 있으면 작업 기억(working memory)에 부담을 주며, 깊은 중첩은 '정신적 스택(mental stack)'에 과부하를 줄 수 있습니다. 특히 Lisp의 관례적인 닫는 괄호 몰아쓰기는 괄호 수를 세기 어렵게 만들어 구조 파악을 더욱 힘들게 합니다. 반면, C 스타일 언어의 `f(a)(b)(c)` 같은 왼쪽 결합 방식이나 `f[a][b][c]` 같은 배열 접근은 중첩을 줄이고 대응 괄호를 가깝게 유지하여 가독성을 높입니다.

또한, Lisp의 오른쪽으로 깊게 중첩된 호출은 평가 순서와 읽는 순서가 달라 독자가 코드를 역순으로 읽거나 바깥 호출을 기억해야 하는 부담을 줍니다. 이는 코드를 의미적으로 이해하는 데 추가적인 인지 부하를 발생시킵니다. 이러한 문제점들을 바탕으로, 더 읽기 쉬운 문법 설계를 위한 네 가지 원칙이 제시되었습니다. 첫째, 관련된 토큰(구분자)을 최대한 가깝게 배치하고, 둘째, 코드의 시각적 모양으로 그룹 구조를 명확히 전달하며, 셋째, 결합법칙을 활용해 구분자 중첩을 줄이고, 넷째, 문법과 의미 체계를 설계할 때 읽는 순서와 평가 순서를 일치시키는 것입니다. 이러한 원칙들은 Lisp의 메타프로그래밍 장점은 유지하면서도 가독성을 개선할 수 있는 새로운 Lisp 계열 언어 설계의 기반이 될 수 있습니다.

1인 창업자를 위한 기회 분석
AI 분석 · 참고용이며 검증이 필요합니다
3/10
약한 신호
왜 3점인가

기존 언어의 문법 개선은 매우 어려운 일이며, 시장 규모도 작습니다. 1인 창업자가 새로운 언어 또는 문법을 성공적으로 안착시키기에는 진입 장벽이 높습니다.

문제 / 미충족 수요

Lisp와 같은 괄호 중심 언어의 가독성 문제는 여전히 존재하며, 개발자의 인지 부하를 줄이는 문법 설계에 대한 수요가 있습니다.

한국 시장
국내 있음한국에서도 Lisp 사용자는 소수이지만, 함수형 프로그래밍에 대한 관심은 꾸준히 있습니다. 가독성 개선은 잠재적 사용자 유입에 도움이 될 수 있습니다.
수익 모델

B2B 개발 도구 구독, 교육 콘텐츠 판매 · 돈 내는 주체: Lisp 기반 시스템을 운영하는 기업, 함수형 프로그래밍 교육 기관, Lisp 개발자

1인 실현 가능성
2/5

언어 문법 설계 및 관련 도구 개발은 상당한 전문성과 노력이 필요하며, 기존 Lisp 생태계에 대한 이해와 통합이 중요합니다. 1인이 하기에는 난이도가 높습니다.

진입 지점 (Wedge)

특정 도메인(예: 금융, 데이터 분석)에 최적화된 Lisp 대체 문법을 제안하고, 이를 지원하는 코드 변환 도구 또는 IDE 플러그인을 개발하여 생산성 향상을 목표로 합니다.

이번 주 첫 실험

Lisp 사용자 커뮤니티에서 가독성 문제로 가장 많이 언급되는 코드 패턴을 수집하고, 개선된 문법으로 변환했을 때의 가독성 향상 효과를 측정하는 설문조사를 진행합니다.

Original source
이 글은 news.hada.io의 기사를 yozm.tech가 한국어로 재작성한 버전입니다.
원문 보기