Clojure 공식 다큐멘터리 페이지 – 영상, 쇼노트, 링크 제공
5 hours ago
2
- Clojure가 글로벌 핀테크들의 인프라 언어로 성장한 과정을 다룬 1시간짜리 공식 다큐멘터리 영상 공개
- Clojure의 독특한 기원 과 가치 중심적인 커뮤니티, 소프트웨어 사고방식에 미친 영향을 추적하여 소개
- 유튜브 링크: 한 프로그래머의 펫 프로젝트가 소프트웨어에 대한 우리의 생각을 어떻게 바꾸었는가
- 쇼노트에는 Clojure의 기반이 된 핵심 논문, 서적, 강연, 기업 사례가 정리되어 있음
- Clojure, ClojureScript, ClojureCLR 등 런타임과 Babashka, Jank, ClojureDart 같은 확장 프로젝트도 함께 소개
- 공식 페이지는 AI 도구, 데이터 사이언스, 에디터 통합, 커뮤니티 채널까지 아우르는 Clojure 생태계의 종합 허브 역할
다큐멘터리 개요
- Clojure 다큐멘터리는 Rich Hickey의 2년간의 안식년과 한 고집스러운 아이디어에서 출발해, 세계 최대 핀테크 기업 중 하나의 엔지니어링 스택을 구동하게 된 과정을 다룸
- Rich Hickey, Alex Miller, Stuart Halloway 등 주요 인물이 등장하며, Clojure의 비전통적 기원, 가치 중심 커뮤니티, 그리고 소프트웨어 사고방식에 미친 영향을 탐구
- 다큐멘터리는 Nubank의 후원으로 제작됨
쇼 노트
-
기초 연구 논문
- Out of the Tarpit (2006) — Ben Moseley & Peter Marks, 소프트웨어의 가변 상태가 우발적 복잡성의 주요 원인임을 지적
- Ideal Hash Trees — Phil Bagwell, Hash Array Mapped Tries (HAMTs) 연구로 Clojure의 영속적 데이터 구조에 직접적 영감 제공
- Composable Memory Transactions (2005) — Tim Harris 외, 소프트웨어 트랜잭셔널 메모리(STM) 개념 제시로 Clojure의 동시성 모델에 영향
- Paper Bibliography — Rich Hickey가 Clojure 개발 시 참고한 논문 목록, Michael Fogus가 정리
-
영향력 있는 서적
- On Lisp — Paul Graham, 고급 Lisp 기법을 다룬 대표 저서, 온라인 무료 제공
- Programming Clojure (4th ed.) — Alex Miller, Stuart Halloway, Aaron Bedra 공저, 1판은 Clojure 1.0과 함께 출간
- The Joy of Clojure — Michael Fogus & Chris Houser 저
-
Rich Hickey의 주요 강연
- Simple Made Easy (2011) — "simple"과 "easy"의 차이를 정의한 대표 강연
- Clojure at LispNYC (2007) — Clojure의 첫 공개 발표
- Are We There Yet? (2009) — Clojure의 상태 모델과 프로그래밍에서의 시간 개념 분석
- Hammock Driven Development (2010) — 코드를 작성하기 전 문제를 깊이 사고하는 접근 강조
- The Value of Values (2012) — 불변 값(immutable values) 의 중요성 강조
- Writing Datomic in Clojure (2012) — Datomic을 Clojure로 작성한 이유 설명
- Effective Programs - 10 Years of Clojure (2017) — Clojure 10년의 발전과 실제 문제 해결 중심의 기능 우선순위 회고
- Talk Transcripts — Rich Hickey 및 커뮤니티 강연의 기록 보관소
- Rich Hickey Talks — Rich의 강연 영상 모음 재생목록
-
Paul Graham의 에세이
- Beating the Averages, Revenge of the Nerds, 기타 에세이 모음
-
주요 기업 및 프로젝트
- Cognitect — 오랜 기간 Clojure를 관리한 컨설팅 회사
- Nubank — 세계 최대 독립 디지털 은행으로, Clojure와 Datomic으로 핵심 인프라 운영, 2020년 Cognitect 인수 후 Clojure 개발 주도
- Datomic — 불변 사실(immutable facts) 기반 분산 데이터베이스, Rich Hickey와 Cognitect가 설계
-
커뮤니티 및 아카이브 자료
- Java.next Blog Series (2008) — JVM 언어 동향을 다룬 Stuart Halloway의 블로그 시리즈
- Clojure IRC Log Archive — 초기 Clojure IRC 채널의 보존 기록
- Clojure Etiquette — Rich의 메일링 리스트 글에서 유래한 커뮤니티 예절 지침
Clojure 방언 및 런타임
-
핵심
- Clojure — JVM에서 실행, 공식 시작 가이드 및 무료 입문서 Brave Clojure 제공
- ClojureScript — JavaScript로 컴파일되어 Reagent, Re-frame 등 프론트엔드 라이브러리 지원
- ClojureCLR — .NET CLR에서 실행되는 Clojure
-
확장
- Babashka — JVM 시작 시간 없이 빠른 스크립팅 지원
- Jank — LLVM을 대상으로 하는 네이티브 컴파일러
- ClojureDart — Flutter 기반 모바일 앱 개발용
- Squint / Cherry — ES 모듈로 컴파일되는 ClojureScript 변형
- Other Clojure-like projects — 기타 유사 프로젝트 목록 제공
-
데이터 사이언스
- libpython-clj — Clojure에서 NumPy, pandas, scikit-learn 등 Python 라이브러리 직접 호출
- Noj — SciCloj가 개발한 Clojure 네이티브 데이터 사이언스 툴킷, 데이터프레임·시각화·머신러닝 통합
- Tablecloth — Python 연동과 Clojure 데이터프레임 결합
-
Clojure와 AI
- ECA (Editor Code Assistant) — 코드 편집 보조 도구
- Backseat Driver — Copilot용 Clojure 도구
- ClojureMCP — Claude, Codex, Gemini 등 AI 어시스턴트와 REPL 연결하는 MCP 서버
- MCP-nREPL — Babashka 기반 최소 MCP 서버, 코딩 에이전트의 nREPL 접근 제공
- clojure-mcp-light — LLM 코딩 어시스턴트용 경량 CLI 도구
- #ai-assisted-coding (Clojurians Slack) — AI와 Clojure 개발 관련 활발한 커뮤니티 채널
시작하기
- 전체 체험 — macOS, Linux, Windows용 설치 영상이 포함된 공식 가이드 제공, VS Code의 Calva 사용
- 가장 빠른 경로 — Babashka 설치 후 즉시 스크립팅 가능, JVM 설정 불필요
- 웹/프론트엔드 — ClojureScript + Shadow CLJS로 시작
- 모바일 앱 — ClojureDart로 Flutter 앱 개발
- Python 사용자 — libpython-clj로 Python 라이브러리 직접 호출
- 에디터 — Calva는 VS Code에서 REPL, 구조적 편집, AI 통합(Backseat Driver) 지원, 에디터 가이드 참고
용어집
- Lisp — 괄호로 둘러싸인 중첩 리스트 형태로 코드를 표현하는 언어 계열, Clojure는 Lisp의 방언
- REPL — Read-Eval-Print Loop, 표현식을 읽고 평가 후 결과를 출력하는 대화형 세션
- 함수형 프로그래밍 — 가변 상태와 부작용을 최소화하고 함수 중심으로 구성된 프로그래밍 방식
- 값(Value) — 생성 후 변경되지 않는 데이터, Clojure는 기본적으로 불변 값을 사용
- 영속적 데이터 구조(Persistent Data Structure) — 수정 시 이전 버전을 보존하는 컬렉션, 버전 보존 의미의 "persistent"
- 우발적 복잡성(Accidental Complexity) — 문제 자체가 아닌 도구나 설계 선택으로 인한 복잡성
- STM (Software Transactional Memory) — 락 대신 트랜잭션으로 공유 상태 변경을 조정하는 동시성 모델
- 호스티드 언어(Hosted Language) — 자체 런타임 대신 기존 플랫폼 위에서 실행되는 언어, Clojure는 JVM, ClojureScript는 JS, ClojureCLR은 .NET에서 동작
Clojure 팔로우 및 커뮤니티
- YouTube, Reddit, Slack, LinkedIn 등 공식 채널 운영
- Clojure/Conj Conference 2026 — 2026년 9월 30일부터 10월 2일까지 미국 노스캐롤라이나 샬럿에서 개최 예정
-
Homepage
-
Tech blog
- Clojure 공식 다큐멘터리 페이지 – 영상, 쇼노트, 링크 제공