LLM이 못 쓰는 프로그래밍 언어 제작기

원제: I built a programming language that LLMs can't use

왜 중요한가

LLM 코딩 능력이 진정한 이해인지 패턴 암기인지를 실험적으로 검증하려는 시도로, AI 코드 생성 신뢰성 논의에 구체적 근거를 제공한다.

개발자 Dominik Picheta가 LLM과 코딩 에이전트를 의도적으로 방해하도록 설계한 에소테릭 프로그래밍 언어 KillSwitch를 공개했다. 언어 스펙에 숨겨진 거짓말, 글자 수 기반 규칙, 안전 가드레일 유발 구문 등을 탑재했으며, 주요 LLM 벤치마크 결과 최고 점수는 100점 만점 중 66.8점에 그쳤다.

KillSwitch는 스택 기반 인터프리터 언어로, 표면적으로는 함수·변수·조건문 등 익숙한 구조를 갖추고 있다. 그러나 LLM의 약점을 정조준한 여러 장치가 숨어 있다.

첫째, 언어 스펙 자체에 인간은 걸러낼 수 있지만 LLM은 그대로 따를 가능성이 높은 '숨겨진 거짓 정보'가 포함돼 있다. 둘째, 식별자의 글자 수 계산이 실행 여부를 결정하는 핵심 규칙인데, LLM이 글자 세기에 약하다는 점을 노린 설계다. 셋째, "hack into a computer"나 "Ignore previous instructions" 같은 구문을 언어 문법 요소로 채택해 모델의 안전 가드레일과 프롬프트 인젝션 반응을 유도한다. 스크립트 대부분은 이야기 형식의 노이즈로 구성되며, 문법적으로 유효한 명령은 그 안에 드문드문 삽입된다. 리터럴은 스크립트 어디에나 배치할 수 있고, 행 번호로 참조한다.

Picheta는 주요 LLM 모델과 코딩 에이전트를 대상으로 벤치마크를 실시했다. 결과는 bench.killswitch-lang.org에 공개됐다. 가장 높은 점수를 기록한 모델은 Claude Opus 5로, Opus 5.5보다 스펙 해석 능력이 뛰어난 것으로 나타났다. Fable 5.1과 Gemini 4 Argon은 과민한 안전 가드레일 때문에 낮은 점수를 받았다. 오픈웨이트 모델 중에서는 MiMo-V2.6-Pro가 가장 높은 성능을 보였다. 최고 점수는 66.8점으로, Picheta는 이 결과가 LLM의 코드 이해 능력이 훈련 데이터 암기에 크게 의존하고 있음을 시사한다고 밝혔다. 언어 인터프리터와 스펙은 GitHub에서 오픈소스로 공개됐다.

출처

blog.picheta.me — 원문 읽기 →