처리중입니다. 잠시만 기다려주세요.
TTJ 코딩클래스
정규반 단과 자료실 테크 뉴스 코딩 퀴즈
테크 뉴스
Hacker News 2026.06.18 31

Go 위에서 Lisp가 돌아간다고? 'Glojure' 이야기

Hacker News 원문 보기
Go 위에서 Lisp가 돌아간다고? 'Glojure' 이야기

Go 위에서 Lisp가 돌아간다고요?

혹시 Clojure(클로저)라는 언어 들어보셨어요? 괄호가 잔뜩 들어가는 게 특징인 Lisp(리스프) 계열의 함수형 언어인데요. 원래는 자바 가상머신, 즉 JVM 위에서 돌아가는 언어예요. 그런데 이번에 소개할 Glojure(글로저) 는 이 Clojure를 자바가 아니라 Go 런타임 위에서 돌릴 수 있게 만든 프로젝트예요. 이름도 Go랑 Clojure를 합쳐서 Glojure인 거죠.

이게 왜 신기하냐면요, Clojure는 처음 만들어질 때부터 좀 독특한 철학을 가지고 있었거든요. 보통 새 언어를 만들면 그 언어 전용 런타임(실행 엔진)을 밑바닥부터 새로 만들어요. 그런데 Clojure를 만든 리치 히키(Rich Hickey)는 "그러지 말고 이미 잘 만들어진 플랫폼 위에 얹자"고 생각했어요. 이걸 호스트 언어(hosted language) 라고 불러요. 집을 새로 짓는 대신 이미 있는 튼튼한 건물에 세 들어 사는 느낌이라고 보면 돼요.

호스트 언어가 뭐길래

그래서 Clojure는 JVM이라는 건물에 세 들어 살아요. JVM이 제공하는 가비지 컬렉터(메모리 자동 청소), 수많은 자바 라이브러리, 스레드 같은 걸 그대로 빌려 쓰는 거죠. 덕분에 Clojure는 자바 코드를 거의 그대로 불러다 쓸 수 있어요. 이걸 상호운용(interop, 인터롭) 이라고 해요.

이 철학 덕분에 Clojure는 여러 플랫폼으로 퍼져나갔어요. 브라우저의 자바스크립트 위에서 도는 ClojureScript, 빠른 시작이 필요한 스크립트용 Babashka, 얼랭(Erlang) 위의 clojerl, 파이썬 위의 Basilisp 같은 식이죠. Glojure는 여기에 'Go판'을 하나 더한 거예요.

어떻게 동작하나요

Glojure의 핵심은 Go로 작성된 인터프리터예요. Clojure 소스 코드를 읽어서 한 줄씩 해석하고 실행하는데, 중요한 건 이 과정에서 Go의 표준 라이브러리나 함수를 직접 호출할 수 있다는 거예요. 예를 들어 Go의 fmt.Println 같은 함수를 Clojure 문법으로 부를 수 있고, Go의 강점인 고루틴(goroutine, 아주 가벼운 동시 실행 단위)이나 채널(channel)도 활용하는 방향을 노리고 있어요.

쉽게 비유하면, 평소엔 딱딱하게 컴파일해서 쓰는 Go 코드를, Glojure를 쓰면 REPL(코드를 한 줄씩 바로 쳐보고 결과를 즉시 확인하는 대화형 환경)에서 살아있는 채로 만지작거릴 수 있게 되는 셈이에요.

업계 흐름에서의 위치

Go 생태계는 지금 클라우드 인프라의 중심이에요. 쿠버네티스, 도커, 수많은 CLI 도구가 Go로 짜여 있죠. 그런데 Go는 의도적으로 단순하게 설계돼서, 매크로(macro)나 동적인 코드 생성 같은 메타프로그래밍이 약해요. Glojure는 바로 그 빈틈을 Lisp의 강력한 매크로와 동적 평가로 메우려는 시도라고 볼 수 있어요. "Go의 탄탄한 생태계 + Lisp의 유연함"을 한 번에 노리는 거죠. 이미 GraalVM 위에서 도는 Babashka가 비슷한 자리를 잡았는데, Glojure가 Go 진영에서 그런 위치를 만들 수 있을지가 관전 포인트예요.

한국 개발자에게는

솔직히 지금 당장 실무 프로덕션에 쓰라고 권하긴 어려워요. 아직 실험적인 단계고 안정성 면에서 JVM Clojure와는 비교가 안 되거든요. 하지만 챙겨볼 가치는 있어요. Go로 인프라 도구를 많이 짜는 분이라면 동적인 글루 코드나 설정 스크립트를 짤 때 영감을 받을 수 있고요. 무엇보다 '언어가 플랫폼 위에 얹힌다'는 구조 자체를 이해하는 학습 효과 가 커요. 이 개념을 알면 ClojureScript, Kotlin/Native, 심지어 TypeScript가 JS 위에 얹히는 방식까지 한 번에 꿰뚫어 볼 수 있게 되거든요.

마무리

Glojure는 'Lisp의 유연함을 Go 생태계로 가져온다'는 한 문장으로 요약되는 실험적 프로젝트예요. 여러분은 익숙한 언어(Go) 위에 다른 언어(Clojure)를 얹어 쓰는 이런 방식, 실용적이라고 보세요 아니면 그냥 재미있는 실험이라고 보세요? 여러분이 매일 쓰는 언어에 Lisp의 매크로가 들어온다면 뭘 가장 해보고 싶으세요?


🔗 출처: Hacker News

이 뉴스가 유용했나요?

이 기술을 직접 배워보세요

파이썬으로 자동화를 시작해보세요

파이썬 기초부터 자동화까지 실전 강의.

파이썬 강의 보기

"비전공 직장인인데 반년 만에 수익 파이프라인을 여러 개 만들었습니다"

실제 수강생 후기
  • 비전공자도 6개월이면 첫 수익
  • 20년 경력 개발자 직강
  • 자동화 프로그램 + 소스코드 제공

매일 AI·개발 뉴스를 받아보세요

주요 테크 뉴스를 매일 아침 이메일로 전해드립니다.

스팸 없이, 언제든 구독 취소 가능합니다.