User Tools

Site Tools


study:clojure-introduction-lecture:1-1

클로저 입문 강좌 1 강

등록

강사 소개

  • 강사 소개

감사의 말씀

  • 감사의 말씀
    • IT 유니온 주관
    • 참세상 장소 협찬

클로저의 언어로서의 특징

  • Modern Lisp
  • 동적 타입
  • STM(동시성 내장, 병행 프로그래밍이 쉽다, 스레드를 직접 다루지 않는다.)
  • On JVM (수많은 자바 라이브러리를 바로 가져다 사용)
  • Immutable Value
  • Persistent Data Structure
  • Functional Programming
  • Fast
  • Simple
  • core.async (CSP)
  • transduder

클로저 활용 현황

클로저 커뮤니티

한국 클로저 커뮤니티

함수형 프로그래밍이 좋은 이유

  • Immutable
  • No Side-Effect
  • 이러한 특징으로 작동하는 1급 함수
  • 함수들로 연결된 통로들
  • 그 통로에 데이타를 흘려보내서 조작한다.
  • 통로의 양끝에는 변화하는 데이타들의 세상.
  • 이런 식으로 상태 관리
  • world → v1 → F1 → v2 → F2 → v3 → F3 → v4 → world

동적 타입 언어

  • 타입에 관한 경험적 연구 : Static vs. Dynamic Languages: A Literature Review
    • 타입이 소프트웨어 개발에서 생산성이나 유지보수성 향상에 어떤 영향을 주는지에 대한 실증적인 연구들에 대한 메타 분석
    • 16개의 논문중 단 3개 연구만이 타입이 어느 정도 생산성/유지보수성 향상에 도움이 되있다는 실질적 데이타를 제시하고 있긴 하지만, 그것이 그리 강력한 증거는 되지 못하며, 나머지 연구들은 타입이 생산성/유지보수성 향상에 아무런 영향을 미치지 못한다는 연구 결과를 나타냈다고.
  • 타입에 관한 문헌학적 연구 : In Search of Types
    • by Stephen Kell 2014.8
    • 지난 60년 동안 프로그래밍 언어 세계에서 타입이라는 개념 자체가 컴퓨터의 급격한 발전 과 더불어서 얼마나 다양한 의미를 지닌 채 혼동스럽게 사용되어왔는지에 대한 조명.
    • 타입이라는 개념 자체가 매우 다양한 의미를 지니고 혼용되고 있어, 그 자체로 복잡성의 근원
  • Schema : Runtime Type-Value 검사
  • core.typed : Compile-Time Type 검사

리스프

라이닝언 소개 및 설치

라이트테이블 설치와 사용법

쉬는 시간

클로저 문법 간단 설명

  • expression
    • (+ 1 2)
  • 단순 자료형
    • 불린/정수/실수/분수/문자/문자열/키워드/심볼/nil
  • 복합 자료형
    • 리스트/벡터/맵/집합
  • 변수(?)를 정의하는 법
    • var
  • cons/conj
  • first/second/last/rest
  • take/drop/range/nth
  • 함수
  • map/filter/remove/reduce
  • let
  • 자바 Interop

실습

강의 소감 설문 조사

study/clojure-introduction-lecture/1-1.txt · Last modified: 2019/02/04 14:26 (external edit)