Clojure Study/ETC 2019. 5. 21. Clojure로 LISP 톺아보기 (3) - 제어문 서론 이번 포스팅에서는 참과 거짓을 이용해 코드의 흐름을 제어하는 일을 해보겠다. 논리로 흐름 제어하기 클로저의 기본 데이터 타입인 boolean은 참과 거짓으로 코드를 평가한다. boolean을 평가하는 함수에 대해 알아보자. true? 해당 요소가 참인지 검사한다. user=> (true? true) true user=> (true? false) false false? 해당 요소가 거짓인지 검사한다. user=> (false? true) false user=> (false? false) true nil? 해당 요소가 값이 없는지 검사한다. user=> (nil? "papico") false user=> (nil? nil) true not 해당 요소를 부정한다. user=> (not true) fals.. Study/ETC 2019. 5. 21. Clojure로 LISP 톺아보기 (2) - Symbol 과 함수 서론 지난 포스팅에서는 Clojure의 기본 데이터 구조에 대해 알아보았다. 이번 시간에는 Clojure의 변수를 저장하는 방식인 Symbol 과 함수에 대해 정리해 보겠다. 심볼은 값을 가르킨다. 심볼 평가시 심볼이 가르키는 값을 반환한다. def 함수를 통해 심볼을 생성한다. user=> (def developer "PAPICO") #'user/developer user=> developer "PAPICO" user=> user/developer "PAPICO" def 는 심볼에 직접 값을 바인딩하지 않고 var 를 통해서 한다. 현재 생성한 developer 는 디폴트 이름공간인 user 에 생성되었고, 현재 이름공간이 name 이므로 앞에 user/ 키워드를 제거해도 사용 가능하다. let은 영역.. Study/ETC 2019. 5. 20. Clojure로 LISP 톺아보기 (1) - 데이터 구조 서론 함수형 자바스크립트에 관심이 생겨 공부하던 중 명령형 코드를 함수형 코드로 변환하는 방법에 대해 궁금증이 생겨 대표적인 함수형 언어인 Clojure 에 대해 공부해 보려고 한다. 공부를 통해 내가 얻고자 하는 것을 얻을 수 있으면 좋겠지만 그렇지 않다고 해도 도움이 될 것 같다. Clojure 란? 범용 함수형 언어 자세한 내용은 해당 링크에서 확인 http://clojure.or.kr/wiki/doku.php?id=lecture:clojure:why_clojure 기초 데이터 구조 단순값 Boolean 참, 거짓을 나타내는 데이터 구조 user=> true true user=> false false nil 값이 없음을 의미 user=> nil nil keyword 주로 map 데이터 구조의 키값으.. 이전 1 다음