Starting 4Clojure

Clojure Problem Review

(경험이 그렇게 길지 않고 많지도 않지만) 프로그램을 공부할 때는 확실히 이론 학습도 중요하지만, 그 이론을 실제적으로 활용을 하는 ‘문제풀이’ 가 중요하다고 생각한다. 파이썬과 R을 처음 배울 때 이 교훈을 절실하게 느꼈으며,

그 계기는 Euler Project (https://projecteuler.net) 라는 수학 문제를 프로그램으로 구현해보는 사이트의 문제를 하나씩 풀어본 경험이었다. 파이썬의 함수는 def로 만들고 클래스는 class로 만든다 라는 Fact를 넘어서 이것을 ‘체화’ 하고 싶다면 확실히 문제를 자신이 직접 풀어보는 것이 좋다.

Clojure 및 함수형 프로그래밍을 공부하게된 이 시점에서 Clojure 역시 이런 문제은행이 있다는 것을 알게 되었다. 이름은 4Clojure (http://www.4clojure.com) 이며 대부분의 입문자들이 거쳐가는 코스이다. 그런데 문제의 난이도가 Elementary, Easy, Medium, Hard로 구성되어 있는데 Elementary를 넘어서 이제 응용을 좀 풀어보겠거니 하고 Easy로 들어가보면 된통 혼나게 된다.

이런 혼남을 계기로 하나의 문제를 풀더라도 모법 답안들의 list를 쫙 펼친다음 하나씩 사용한 함수들을 함께 학습을 해야 Clojure의 대장님이 될 수 있을 것이라 판단, 이 블로글에 한 문제씩 올려보고자 한다.