TECH 으로 돌아가기
TECH HACKER NEWS 2026.10.29 10:04 7분 읽기 45 READS

Emacs 50주년: 반세기를 살아남은 에디터의 비밀은 ‘Lisp’에 있었다

Emacs 50주년: 반세기를 살아남은 에디터의 비밀은 ‘Lisp’에 있었다
SOURCE IMAGE · HACKER NEWS
Emacs 50주년: 반세기를 살아남은 에디터의 비밀은 ‘Lisp’에 있었다

1976년 MIT 인공지능 연구소에서 시작된 텍스트 에디터가 올해로 50살이 됐어요. 바로 Emacs예요. 개인용 컴퓨터도 제대로 없던 시절에 태어난 소프트웨어가 지금도 현역으로 업데이트되고 있다는 건, 소프트웨어 역사 전체를 봐도 손에 꼽을 만한 일이거든요.

“요즘 누가 Emacs를 써?” 싶으실 수도 있는데요, 사실 여러분도 매일 Emacs의 흔적을 쓰고 계세요. 터미널에서 Ctrl+A로 줄 맨 앞으로 가고, Ctrl+E로 줄 끝으로 가고, Ctrl+K로 커서 뒤를 지우는 단축키가 전부 Emacs에서 왔어요. bash와 zsh의 기본 줄 편집 방식이 Emacs 스타일이고, macOS의 텍스트 입력창에서도 똑같이 동작하거든요.

매크로 묶음에서 시작된 에디터

Emacs라는 이름은 Editor MACroS, 그러니까 ‘에디터 매크로 모음’의 줄임말이에요. 당시 MIT에서는 TECO라는 에디터를 썼는데, 명령어가 암호문처럼 난해했어요. 그래서 다들 각자 편하게 쓰려고 TECO 위에 매크로를 잔뜩 만들어 썼고, 그러다 보니 사람마다 사용법이 제각각이 됐어요. 리처드 스톨먼(Richard Stallman)과 가이 스틸(Guy Steele) 등이 이걸 하나의 체계로 정리한 게 Emacs의 시작이에요.

그 뒤로 Lisp로 작성된 Multics Emacs, 유닉스용 Gosling Emacs(자바를 만든 제임스 고슬링의 작품이에요) 같은 여러 갈래가 나왔어요. 그리고 1984년 스톨먼이 GNU 프로젝트의 하나로 GNU Emacs를 새로 만들면서 지금 우리가 아는 Emacs가 자리를 잡았어요.

50년을 버틴 비결: 에디터가 아니라 ‘Lisp 실행 환경’

Emacs가 이렇게 오래 살아남은 이유는 구조에 있어요. 화면 출력, 텍스트 버퍼 관리, Lisp 인터프리터만 C로 작게 만들고, 나머지 기능 대부분은 Emacs Lisp(Elisp)로 구현했거든요.

이게 뭐냐면, Emacs는 에디터라기보다 텍스트를 다루는 데 특화된 Lisp 실행 환경이라는 뜻이에요. 내가 짠 코드와 Emacs 자체의 코드가 같은 언어로, 같은 공간에서 돌아가요. 그래서 실행 중인 에디터의 거의 모든 동작을 재시작 없이 그 자리에서 바꿀 수 있어요.

(defun my-insert-date ()
"커서 위치에 오늘 날짜를 넣어요."
(interactive)
(insert (format-time-string "%Y-%m-%d")))
(global-set-key (kbd "C-c d") #'my-insert-date)

이 몇 줄을 실행하는 순간부터 Ctrl+C 다음에 d를 누르면 날짜가 입력돼요. 플러그인 설치도, 빌드도, 재시작도 필요 없어요. 게다가 C-h f(함수 설명 보기)나 C-h k(이 단축키가 무슨 일을 하는지 보기)로 모든 기능의 문서와 소스 코드까지 바로 따라갈 수 있어요. 스스로를 설명하는 소프트웨어인 셈이죠. “Emacs는 훌륭한 운영체제인데 쓸 만한 에디터만 없다”는 오래된 농담도 여기서 나왔어요.

VS Code 시대의 Emacs

물론 지금 대세는 VS Code죠. 재미있는 건 두 도구의 철학이 정반대라는 점이에요. VS Code 확장은 정해진 API 안에서만 움직이도록 격리돼 있어서 안정적이고 안전한 대신, 할 수 있는 일에 한계가 있어요. Emacs는 모든 걸 열어둔 대신, 설정이 꼬이면 그 책임도 사용자 몫이고요.

Emacs도 꾸준히 변해왔어요. Emacs 28에서는 Elisp를 네이티브 코드로 컴파일하는 기능이 들어와서 속도가 크게 빨라졌어요. Emacs 29에서는 LSP 클라이언트(eglot)와 tree-sitter 기반 구문 분석이 기본으로 들어갔고요. LSP(Language Server Protocol)는 에디터와 언어 분석 도구가 대화하는 표준 규약인데요, 이게 나온 뒤로 자동완성이나 정의 이동 같은 기능은 어떤 에디터에서든 비슷한 품질로 쓸 수 있게 됐어요. Emacs 30부터는 안드로이드에서도 공식적으로 돌아가요.

Org-mode(일정, 메모, 문서를 평범한 텍스트로 관리하는 도구)와 Magit(Git을 가장 편하게 다루는 인터페이스로 꼽히는 패키지)는 이것 때문에 Emacs를 배운다는 사람이 있을 정도예요. 요즘은 gptel 같은 패키지로 에디터 안에서 바로 LLM을 부르는 사람도 늘었어요. 텍스트를 코드로 자유롭게 다룰 수 있는 환경이라 AI 도구와도 궁합이 좋거든요.

한국 개발자에게는요

당장 VS Code를 버리고 Emacs로 갈아타라는 얘기는 아니에요. 그래도 이런 건 배워둘 가치가 있어요.

마무리

Emacs가 50년을 버틴 건 좋은 에디터여서가 아니라, 사용자가 에디터를 직접 다시 만들 수 있게 해줬기 때문이에요.

지금 쓰는 개발 도구 중에 10년 뒤에도 쓰고 있을 것 같은 건 뭔가요? Emacs나 Vim을 써보다가 포기했거나 아예 정착한 경험이 있다면 들려주세요.


🔗 출처: Hacker News

SOURCE · HACKER NEWS
원문 전체 보기 → https://www.technologyreview.com/2026/10/20/1145399/emacs-tu...
SHARE
NEXT · CHOOSE

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

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

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