Clojure

덤프버전 :



프로그래밍 사이트 선정 프로그래밍 언어 순위 목록

⠀[ IEEE Spectrum 2021 ]⠀
{{{#!wiki style="display: inline-block; margin: 0 0 -5px; min-width: 25%"
⠀[ Stack Overflow 2022 ]⠀
{{{#!wiki style="display: inline-block; margin: 0 0 -5px; min-width: 25%">
⠀[ TIOBE 2023 ]⠀

프로그래밍 언어 목록 · 분류 · 문법

파일:clojure_logo.png

(println "Hello World")

1. 개요
2. 특징
2.1. REPL
2.2. 함수형 프로그래밍
2.3. LISP의 방언
2.4. 런타임 다형성
2.5. 병행 프로그래밍
2.6. 자바 가상머신 기반의 실행
3. 하위 프로젝트
3.1. ClojureScript
3.2. ClojureCLR
4. 도서


1. 개요[편집]


공식 홈페이지

Rich Hickey에 의해 창안된 함수형 프로그래밍 언어로, LISP의 방언이다. JVM, .NET Framework, JavaScript를 대상으로 컴파일된다. Java와의 상호 호환이 가능하다.

개발 도구는 대부분 Emacs를 사용한다. 통계 IDE로는 IntelliJ IDEA용 플러그인으로 개발된 Cursive(유료)가 존재한다.[1]

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 사이트 Java가 아닌 .NET의 CLR(Common Language Runtime) 환경에서 실행하기 위한 Clojure 구현체.


4. 도서[편집]


Programming Clojure
현재까지 (국내에) 나온 도서들 중에 가장 훌륭하다. 그러나 출판년도가 2009년인만큼 현재 버전에서 "contrib" 라이브러리들의 사용법이 맞지 않다.

Living Clojure
빠르게 바로 써먹을 수 있는 형태로 추천한다. 또한 10장의 연습 문제들도 실무에서 도움이 되는 내용이다.
파일:크리에이티브 커먼즈 라이선스__CC.png 이 문서의 내용 중 전체 또는 일부는 2023-10-22 15:49:43에 나무위키 Clojure 문서에서 가져왔습니다.

[1] 무료로 제공되는 Non-Commercial 라이센스도 있지만 대신 6개월마다 계속 갱신해줘야 한다.