# Clojure 증류하기 (Clojure Distilled)

Clojure를 배우는 것의 어려움은 그 문법이 매우 간단하다는데서 오는 것이 아니라, 문제를 해결하기 위한 새로운 방법을 배워야 하는 것에서 비롯됩니다. 따라서 핵심 개념을 이해하고 이를 결합하여 문제를 함수형으로 해결하는 방법에 중점을 둘 것입니다.

The difficulty in learning Clojure does not stem from its syntax, which happens to be extremely simple, but from having to learn new methods for solving problems. As such, we'll focus on understanding the core concepts and how they can be combined to solve problems the functional way.

모든 주류 언어는 같은 계열(one family)에 속합니다. 일단 당신이 이 언어들 중 하나를 배우면 다른 언어를 배우는 데는 거의 노력이 필요하지 않습니다. 일반적으로, 여러분이 해야 할 일은 생산적이 되기 위해 표준 라이브러리에서 몇 가지 구문 설탕과 유용한 기능들을 배우는 것입니다. 여기저기에 새로운 개념이 있을 수도 있지만, 당신의 기존 기술 대부분은 쉽게 이전할 수 있습니다.

All the mainstream languages belong to the same family. Once you learn one of these languages there is very little effort involved in learning another. Generally, all you have to do is learn some syntax sugar and the useful functions in the standard library to become productive. There might be a new concept here and there, but most of your existing skills are easily transferable.

Clojure는 그렇지 않습니다. 리스프 방언이기 때문에, 그것은 다른 언어 계열에서 왔으며 효과적으로 사용하기 위해서는 새로운 개념을 배워야 합니다. 코드가 처음에 읽기 어려워 보인다면 낙담할 이유가 없습니다. 저는 이 구문이 본질적으로 이해하기 어려운 것은 아니며, 약간의 연습을 통해 여러분은 이 구문이 완전히 반대임을 알게 될 것이라고 확신합니다.

This is not the case with Clojure. Being a Lisp dialect, it comes from a different family of languages and requires learning new concepts in order to use effectively. There is no reason to be discouraged if the code appears hard to read at first. I assure you that the syntax is not inherently difficult to understand, and that with a bit of practice you might find it to be quite the opposite.

이 가이드의 목적은 Clojure를 사용하여 생산성을 높이는 데 필요한 핵심 개념의 개요를 제공하는 것입니다. 먼저 함수형 스타일의 주요 이점과 함수형 언어를 왜 배우려고 하는지 살펴보도록 하겠습니다.

The goal of this guide is to provide an overview of the core concepts necessary to become productive with Clojure. Let's start by examining some of the key advantages of the functional style and why you would want to learn a functional language in the first place.