목차
1 개요
Rich Hickey에 의해 창안된 함수형 프로그래밍 언어로, LISP의 방언. JVM, CLR, JavaScript 를 타겟환경으로 컴파일 된다.
2 특징
공식 홈페이지에서 소개하는 대표 특징 목록 에서는 Dynamic Programming(REPL), Functional Programming, LISP(의 방언임), Runtime Polymorphism, Concurrent Programming, Hosted on JVM 을 대표 특징으로 꼽고 있다.
2.1 REPL
REPL(Read-Eval-Print-Loop)의 약자로, 컴파일 되는 언어이지만 스크립트언어(예를들어 JavaScript) 환경처럼 직접 명령문을 입력하면서 테스트 할 수 있는 프로그래밍 인터페이스를 제공한다.
2.2 함수형 프로그래밍
2.3 LISP의 방언
2.4 런타임 다형성
Runtime Polymorphism
2.5 병행 프로그래밍
Concurrent Programming
2.6 자바 가상머신 환경에서 실행됨
3 하위 프로젝트
JVM 환경에서 실행되는 Clojure 를 필두로 다른 환경에서의 실행을 위한 공식 프로젝트가 존재한다.
3.1 ClojureScript
ClojureScript Github 사이트 Clojure 프로그램을 자바스크립트로 컴파일 해주는 컴파일러.
3.2 ClojureCLR
ClojureCLR Github 사이트 자바가 아닌 .NET의 CLR(Common Language Runtime) 환경에서 실행하기 위한 Clojure 구현.