TECH 으로 돌아가기
TECH HACKER NEWS 오늘 7분 읽기 31 READS

LLM이 쓸 수 없는 프로그래밍 언어? 거꾸로 가는 실험이 던지는 질문

LLM이 쓸 수 없는 프로그래밍 언어? 거꾸로 가는 실험이 던지는 질문
SOURCE IMAGE · HACKER NEWS
LLM이 쓸 수 없는 프로그래밍 언어? 거꾸로 가는 실험이 던지는 질문

거꾸로 가는 실험

요즘은 새 언어나 프레임워크가 나오면 'AI가 이거 잘 써요?'가 거의 첫 질문이에요. 문서에 llms.txt를 붙이고, AI가 학습하기 좋게 예제를 늘리는 게 마케팅의 일부가 됐을 정도죠. 그런데 한 개발자가 정반대 방향의 글을 올렸어요. 제목부터가 'LLM이 쓸 수 없는 프로그래밍 언어를 만들었다'예요. 언어 이름은 killswitch, 우리말로 하면 '비상 정지 스위치'쯤 되는 이름이에요.

이 글은 실무용 언어 소개라기보다는 사고 실험에 가까워요. 'AI가 코드를 대신 써 주는 시대에 사람만 다룰 수 있는 언어가 가능할까?', 그리고 '가능하다면 그게 좋은 언어일까?'를 묻는 글이거든요. 저자가 실제로 어떤 장치를 넣었는지는 원문에 자세히 나와 있으니 꼭 읽어 보세요. 여기서는 이 실험이 왜 흥미로운지, 그 뒤에 어떤 기술적 원리가 있는지를 풀어 볼게요.

LLM은 왜 어떤 언어는 잘하고 어떤 언어는 못할까

배경부터 볼게요. LLM이 코드를 잘 짜는 건 코드를 '이해해서'라기보다, 엄청난 양의 코드를 보고 패턴을 익혔기 때문이에요. 그래서 학습 데이터에 많이 나온 언어일수록 잘해요. 파이썬이나 자바스크립트는 술술 쓰는데 사용자가 적은 언어로 가면 정확도가 눈에 띄게 떨어져요. 같은 문제를 여러 언어로 풀게 하는 MultiPL-E 같은 벤치마크를 보면 언어의 인기도와 모델 성적이 꽤 비례하는 경향이 있어요.

그러니까 LLM이 못 쓰는 언어를 만드는 가장 단순한 방법은 학습 데이터에 없는 새 언어를 만드는 거예요. 그런데 이 방법은 금방 뚫려요. 요즘 모델에는 문맥 내 학습(in-context learning) 능력이 있거든요. 처음 보는 규칙이라도 프롬프트에 문서와 예제를 몇 개 넣어 주면 그 자리에서 따라 하는 능력이에요. 새 언어의 문법서를 통째로 붙여 넣으면 꽤 그럴듯한 코드를 뽑아내요.

그래서 LLM을 진짜로 막으려면 더 교묘한 전략이 필요해요. 이론적으로 생각해 볼 수 있는 방향은 이런 것들이에요.

그런데 그 언어, 사람은 쓸 수 있을까

여기서 아이러니가 생겨요. 위의 특징들은 대부분 사람한테도 어렵거든요. 프로그래밍 언어 역사에는 일부러 쓰기 어렵게 만든 난해한 언어(esoteric language)라는 장르가 있어요. Brainfuck이나 Malbolge가 대표적이에요. Malbolge는 너무 어려워서 첫 'Hello, World' 프로그램을 사람이 아니라 탐색 알고리즘이 만들어 냈다는 일화가 있을 정도예요.

LLM이 못 쓰는 언어를 만들다 보면 결국 '사람도 쓰기 싫은 언어'에 가까워질 위험이 있어요. 반대로 사람에게 직관적인 언어는 대체로 패턴이 일관돼서 LLM도 금방 배워요. 이 실험이 재밌는 건 좋은 언어 설계와 LLM 친화성이 상당 부분 겹친다는 걸 역설적으로 보여 준다는 점이에요.

업계 흐름에서 보면

지금 업계는 거의 반대 방향으로 가고 있어요. AI 에이전트가 쓰기 쉽게 문서를 정리하고, 타입 정보를 풍부하게 넣고, 에러 메시지를 친절하게 다듬는 게 트렌드예요. 타입스크립트나 러스트처럼 컴파일러가 피드백을 많이 주는 언어가 AI 코딩과 궁합이 좋다는 얘기도 자주 나와요. AI가 틀린 코드를 써도 컴파일러가 바로 잡아 주니까 스스로 고칠 기회가 생기는 거죠. killswitch 같은 실험은 이런 흐름에 대한 일종의 풍자이면서, AI 없이 손으로 코딩하는 즐거움을 지키고 싶은 개발자들의 마음을 대변하기도 해요.

한국 개발자에게 주는 시사점

당장 이 언어로 실무를 할 일은 없겠지만 배울 건 분명히 있어요. 첫째, 팀에서 쓰는 기술 스택이 마이너하다면 AI 도구의 품질이 기대보다 낮을 수 있다는 걸 알고 써야 해요. 사내 전용 DSL이나 오래된 레거시 언어가 대표적이에요. 이럴 때는 관련 문서와 예제 코드를 프롬프트에 같이 넣어 주기만 해도 결과가 확 좋아져요. 둘째, AI가 잘 이해하는 코드를 쓰려면 일관된 네이밍과 명확한 타입이 중요해요. 그런데 이건 결국 사람이 읽기 좋은 코드의 조건과 똑같아요.

마무리

한 줄 정리: LLM이 못 쓰는 언어를 만들려는 시도는 오히려 좋은 언어란 무엇인지를 다시 묻게 만들어요. 여러분은 AI가 잘 다루는 언어와 사람이 즐겁게 쓰는 언어 중 하나만 골라야 한다면 어느 쪽을 고르시겠어요?


🔗 출처: Hacker News

SOURCE · HACKER NEWS
원문 전체 보기 → https://blog.picheta.me/post/killswitch-lang/
SHARE
NEXT · CHOOSE

변화를 읽었다면,
내가 만들 수익 구조를 고릅니다.

정보를 더 모으는 데서 멈추지 않고, 광고·외주·판매·중개·구독 중 내 상황에 맞는 출발점을 정해보세요.

21가지 수익 구조 살펴보기 →
처리 중...