분류 전체보기
Functional Programming with Haskell - Type classes
2018. 3. 30.Type classes하스켈 타입의 예를 들어보면, Bool, Char, 그리고 Integer 등이 있다. 그리고 하스켈은 type classes 도 가지고 있다. 타입 클래스는 해당 타입이 그 타입 클래스의 멤버이기 위해 그 타입이 갖추어야하는 작동을 특정한다. Num 은 Prelude 에서 정의된 많은 타입 클래스 중의 하나이다. :info Num 을 통해 살펴보면, 타입이 Num 이 되기 위해서는 덧셈, 뺄셈, 곱셈, 그리고 4가지 기능(negate, abs, signNum, fromInteger)을 지원해야 한다. 그리고 Prelude 는 Num 타입 클래스의 4가지 인스턴스를 정의하고 있는데, Int(word-size), Integer (unlimited size), Float 그리고 Doubl..
하스켈 모듈 언로딩 How to go back to prelude> in ghci
2018. 3. 27.ghci 에서 특정 모듈을 로딩한 후 다시 해제할 때는 다음과 같이 :m 명령어를 사용하면, 로딩되었던 임의의 모든 모듈을 언로드시킬 수 있다. 123Prelude> :m Data.CharPrelude Data.Char> :mPrelude>cs 또는 다음과 같이 :m - 구문으로도 언로드 할 수 있다. 123Prelude> :m NumericPrelude Numeric> :m -NumericPrelude>cs https://stackoverflow.com/questions/9305366/how-to-go-back-to-prelude-in-ghci
우치다 다쓰루, <어떤 글이 살아남는가> - 14. 전해지는 말, 그리고 언어로 표현할 수 없는 것
2018. 3. 27.302 전해지는 언어자신의 이익을 위해 떠드는 언어에는 설득력이 없습니다. 되풀이하지만 '자신의 분배 비율을 늘리기' 위한 언어는 '심사하는 사람'을 배타적으로 지향하기 때문입니다. 그 밖의 사람에게는 의미가 없습니다. '전해지는 언어'에는 '전하고 싶다'는 발언자의 절박함이 있습니다. 가능하면 많은 사람에게, 가능하면 정확하게, 자신이 하고 싶은 말을 전하고 싶다는 필사적인 마음이 언어를 움직입닏. 뜻하지도 않은 곳까지 언어가 닿도록 합니다. 304 이것만큼은 꼭 들어주어야 한다전해지는 것은 언어의 내용이 아니라 언어를 전달하고 싶다는 열의입니다. 지금 우리 주위에 오고가는 언어의 대다수는 '전해지는 언어'가 아닙니다. '평가를 받으려는 언어'도 아닙니다. 단지 '나를 존경하라'고 명령하는 언어입니다...
우치다 다쓰루, <어떤 글이 살아남는가> - 13. 기성의 언어와 새로운 언어
2018. 3. 27.275 일본인은 이중언어구조에 주박이 걸려있다.일본어에는 영어의 size에 해당하는 말이 없습니다. 벌레의 크기라고 할 때 대다수 사람들은 대상이 큰지 작은지에 따라 '크기'와 '작기'를 교체합니다. 벌레 이야기를 할 때는 '크기'라는 말을 쓰더라도 '작기'를 이야기한다는 것을 문맥적으로 알아챕니다.그러므로 앞으로 영어가 국제 공통어가 된다면 영어 자체의 우주관은 붕괴할 수 밖에 없다고 생각합니다. 문법과 어휘는 공통일지는 몰라도 각각의 모어를 달리하는 사람들이 제각기 '자기가 하고 싶은 말'을 영어로 실어 나르는 사이에 그 말의 중량을 감당하지 못하고 영어 자체가 품은 우주관의 구조가 와해되어버리는 것입니다. 다시말해 영어 화자의 세계관을 강력하게 규제하는 '언어의 우리'가 지닌 구속력은 잃어버리고 단..
우치다 다쓰루, <어떤 글이 살아남는가> - 12. 창조성은 불균형에서 나온다
2018. 3. 26.251 신체를 매개로 삼으면 이해는 나아진다경험적으로 확실한 점은 신체를 매개로 삼으면 효율적이라는 것입니다. 목소리를 내어 읽거나 '베껴 쓰기'를 하는 등 신체를 사용하면 뇌의 재조직화에 눈에 띄게 속도가 붙습니다. 신체를 매개시키면 시킬수록 더욱 잘 이해할 수 있습니다....... 막상 번역을 시작했지만 몇 페이지를 번역해도 내가 번역해놓은 일본어가 전혀 뜻이 통하지 않았습니다. 그럼에도 매일 거르지 않고 번역했습니다. 거의 베껴 쓰는 수준이었지요. 그렇게 몇 주일 동안 금욕적으로 작업을 계속하다보니 어느 날 '호흡이 맞는다'는 느낌이 옵니다. 문장의 끝을 예감하고 '슬슬 문장이 끝나겠군.'하고 생각하는 순간 마침표가 찍혀 있는 것을 봅니다. 어떤 명사가 나올 때는 '이 명사에는 레비나스 선생이 좋아..
우치다 다쓰루, <어떤 글이 살아남는가> - 11. 어른이 되어가는 과정에 대해
2018. 3. 25.225 불가능하다고 생각하면 정말 불가능합니다. '가능한 사람이 있다'는 것이 제일 중요한 정보입니다. 225 자기 평가가 심신의 잠재력을 끌어올린다심신의 잠재능력이 폭발적으로 꽃 피는 것을 억제하고 있는 것은 사실 자기 평가입니다. '할 수 있을 리 없어.'하고 생각하면 할 수 없습니다. '할 수 있어'하고 생각하면 할 수 있습니다. '인간은 그런 일을 할 수 없어.'하고 생각하는 사람과 '인간은 온갖 일을 할 수 있어.'하고 생각하는 사람은 외형적으로 별반 다르지 않습니다. 왜냐하면 '생각만' 하고 있을 뿐이니까요. 어차피 '큰 차이가 없다'면 자신에게 생각지도 못한 잠재능력이 있을지도 모른다고 생각하는 것이 좋다고 생각합니다. 인간이 지닌 잠재능력의 상한선을 굳이 낮게 설정한다고 무슨 득이 있겠어요..
우치다 다쓰루, <어떤 글이 살아남는가> - 10. 살아남기 위한 언어 능력과 글쓰기
2018. 3. 25.203 일본은 이대로 인구 감소가 지속될 것입니다. 단언할 수 있어요. 인구 감소를 저지하려면 '아이를 낳고 기르는 기쁨과 성취감은 이해득실로 따질 수 없다'는 정상적인 식견이 상식으로 재등록되어야 합니다. 바꾸어 말하면 일본인의 과반수가 '상식을 제대로 알아보는 성숙한 심니'이 되어야 하는데, 이것은 안타깝게도 현실성이 없습니다. 207고용상황이 나쁘다는 말 자체가 이상합니다. 일본은 아직 세계 3위의 경제대국인데다 1인당 GDP가 세계 최고 수준입니다. 무척이나 부자 나라입니다. 그런데 어째서 고용 환경이 나쁘다고 할까요? 그것은 불활 때 인건비를 줄여서 이익을 올린 기억이 남아 있기 때문입니다. 그 때 맛을 들였습니다. 수익을 올리는 방법을 달리 생각해내지 못한 경영자는 일단 채용 조건을 악화시켰고..
우치다 다쓰루, <어떤 글이 살아남는가> - 09. 가장 강한 메시지는 자기 앞으로 온 메시지다.
2018. 3. 25.177 누구나 이해할 수 있는 말 = 액자의 틀액자의 틀을 보지 못하는 사람은 세계를 통째로 잘못 볼 가능성이 있다는 말입니다. 그러므로 액자의 틀과 '액자의 틀이 아닌 것'을 올바르게 구분한다는 것이 인간에게는 지극히 긴급성을 띈 생물적 과제입니다. 요로 다케시 선생의 가르침에 따르면 교회나 극장이 비정상적으로 호화로운 이유는 해당 건축물이 '액자의 틀' 같은 기능을 맡고 있기 때문이라고 합니다. "이 안에서 말하는 것은 현실 생활에서 말하는 것과 다르니까 헷갈리지 않도록 해." 이렇게 주의를 환기하기 위해 일부러 건축물 자체를 비현실적이고 비실용적으로 지었다는 것입니다. 허구의 세계에 깊이 납치당해 가슴을 쿵쾅거리면서도 그것을 현실이라고 오해하는 리스크를 회피하기 위해서는 반드시 '액자의 틀'이 필요..
우치다 다쓰루, <어떤 글이 살아남는가> - 08.어째서 프랑스 철학자는 글을 어렵게 쓸까?
2018. 3. 25.170같은 교육을 받고, 같은 책을 읽고, 같은 정치적 상황에 관여한, 같은 지적 수준의 독자를 상정해서 쓴 글이었습니다. 따라서 '알기 쉽게 바꾸어 쓰는 paraphrase' 일을 하지 않습니다. 일반 독자에게 해독 불가능해도 상관없습니다. 오히려 해독불가능한 것이 좋습니다. 이런 언어 사용은 그 자체가 계층 형성적으로 기능하고 있습니다. "내 글이 어렵다고? 그건 네가 독자로 상정되지 않았다는 뜻이야. 그러니까 읽지 않아도 돼." 171어법의 야상은 사회 상황의 양상과 딱 맞아떨어집니다. 프랑스에서는 '어법의 우리'가 바로 '사회의 우리'로 기능하고 있습니다. 지적 엘리트 외에는 '접근 불가'라는 배타적 어법으로 '배타적 어법의 형성 방식'에 관한 논의를 펼치는 것입니다. 어떤 글이 살아남는가국내도서..
우치다 다쓰루, <어떤 글이 살아남는가> - 07. 계층적인 사회와 언어
2018. 3. 25.129 롤랑 바르트의 '에크리튀르' 개념'에크리튀르ecriture'는 프랑스어 동사 'ecrire'의 명사형입니다. '글을 쓰는 것', '글로 쓰인 것'을 의미합니다. 영어의 writing과 거의 비슷한 뜻입니다. 롤랑 바르트는 언어를 세 가지 층으로 나누어 파악하려고 했습니다. '랑그langue'와 '스틸style', 그리고 에크리튀르입니다.1) 랑그langue랑그는 영어의 'language'입니다. 일본어 영어 프랑스어 등 인간은 어떤 언어를 공유하는 집단으로 태어납니다. 그 때 부모나 주변 사람들이 이야기하는 언어가 '모어'입니다. 그것은 랑그입니다. 랑그에 대해 말할 수 있는 하나는 이것입니다. 우리는 랑그를 선택할 수 없습니다. 인간은 '모어 속에 던져지는' 방식으로 태어납니다. 랑그에는 관여할..
우치다 다쓰루, <어떤 글이 살아남는가> - 06. 하루키는 되고 료타료는 안 되는 이유
2018. 3. 25.116어쨌든 전쟁에 패배했다는 사실로 인해 일본인의 글쓰기에는 어쩔 수 없는 '이해하기 어려움'이 각인되고 말았다는 것은 부정할 수 없습니다. 글쓰기의 핵심에 투라우마가 놓여 있는 것입니다.트라우마는 '적절하게 언어화할 수 없다'는 무능력 자체가 인격의 근원적인 부분으로 자리 잡는 경험을 말합니다. 트라우마를 언어화할 수 있는 사람은 트라우마를 끌어안은 사람과 이미 다른 사람입니다. 117지금의 나로 통합할 수 없는 인격적 요소는 '요괴'가 되어 회귀합니다. 프랑스어로는 유령을 '돌아온 것 revenant'라고 말하는데 정말 그렇습니다. 요시모토 다카아키 등이 하려고 한 일은 트라우마를 치유하여 다른 사람이 되는 것이 아니라 트라우마를 끌어안은 사람(=대일본제국에 몸의 반쪽을 남겨둔 소년)을 통째로 받아..
우치다 다쓰루, <어떤 글이 살아남는가> - 05. 아직 쓰이지 않은 글이 나를 이끈다
2018. 3. 25.103 이상한 일이지만 '미래의 어느 시점에 이미 일을 끝낸 자신'이라는 전前미래적인 환상에 동화되지 않으면 '지금 해야 할 일'을 할 수 없습니다. 인간의 신체는 그런 식으로 되어 있습니다. 바늘구멍에 실을 꿰는 것도, 모터사이클의 코너를 돌 때도, '확률론적인 과정'입니다. 높은 정확도를 요구하는 일은 대개 그렇습니다. 따라서 나는 언어를 사용하는 과정도 확률론적이라고 생각합니다.키워드가 먼저 있지만, 그것은 아직 쓰이지 않았습니다. 그것은 '아직 실을 꿰지 않은 바늘구멍'이나 '아직 빠져나가지 않은 코너'와 비슷한 종류입니다. 그것은 '아직 현재가 된적이 없음'에도 전미래적인 방식으로는 '끝난 일'이 되어 있습니다. 시인 자신도 아직 자신이 무엇을 쓸 것인지 알지 못합니다. 그러나 확률론적인 과정의..
Functional Programming with Haskell - Function types
2018. 3. 24.하스켈의 Data.Char 모듈에는 문자를 다루는 다수의 함수가 포함되어 있다. 먼저 :m Data.Char 과 같이 해당 모듈을 로딩한다.1234567891011121314151617Prelude> :m Data.Char Prelude Data.Char> isLower 'b'Trueit :: Bool Prelude Data.Char> toUpper 'a''A'it :: Char Prelude Data.Char> ord 'A'65it :: Int Prelude Data.Char> chr 66'B'it :: Charcs아래와 같이 모듈명을 붙여서(with a qualified name) 참조할 수도 있다.123Prelude> Data.Char.ord 'G'71it :: Intcs함수의 타입을 알아보기 위해..
Functional Programming with Haskell - Calling functions
2018. 3. 24.하스켈에서 juxtaposition 는 함수호출을 나타낸다. 아래와 같은 함수들은 이미 ghci 가 시작될 때 로딩되는 Haskell "Prelude" 에 정의되어 있다. 아래 링크에서 추가적인 함수들을 살펴볼 수 있다.http://zvon.org/other/haskell/Outputprelude/index.html 123456789101112131415Prelude> negate 3-3it :: Num a => a Prelude> even 5Falseit :: Bool Prelude> pred 'C''B'it :: Char Prelude> signum 21it :: Num a => acsnegate change the sign of the number.even returns True if the int..
Functional Programming with Haskell - 패러다임
2018. 3. 24.1962년 토마스 쿤의 저서 에서는 패러다임을 아래와 같은 과학적 성과로 기술하고 있다. 그리고 그러한 성과의 예로, 뉴튼의 프린키피아, 라부아지에의 화학 등을 들고 있다. • "...sufficiently unprecedented to attract an enduring group of adherents away from competing modes of scientific activity."• "...sufficiently open-ended to leave all sorts of problems for the redefined group of practitioners to resolve." 패러다임은 문제를 이해하고 푸는데 필요한 개념적 프레임워크를 제공해준다. 그리고 패러다임은 문제를 해결하는데 ..
핀터레스트 오늘의 이미지 2018년 3월 24일 Pinterest pin of the day
2018. 3. 24.핀터레스트 오늘의 이미지2018년 3월 24일Pinterest pin of the day
2018 AICPA 시험 시간 배분 전략
2018. 3. 23.AICPA 시험을 준비할 때는 여러 가지 측면을 고려해야하지만, 사실 많은 수험생들이 시간 관리와 이에 대한 전략을 세우는 것을 그렇게 중요하게 생각하지는 않는 것 같습니다.대부분의 응시생들은 실제 시험을 칠 때 각각의 테스트렛이 끝난 시점에 얼마의 시간이 남아있어야하지를 아는 것이 중요하고 매우 유용하다는 사실에 대해 많은 오해를 가지고 있습니다. 실제로는 시험 시간 배분 전략은 CPA 시험을 성공적으로 치르기 위한 중요한 이슈이자 핵심키인데도 말이에요.아래 섹션별 시간 배분 전략을 참고해서 각각의 테스트렛 종료시 예상시간을 작성하고 시험장 들어가기 전에 숙지하시기를 권해드립니다. 언제 standardized breaks 가 있는지도 유념해두시구요.먼저 아래 표는 섹션별, 테스트렛별 추천드리는 소요 권..
핀터레스트 오늘의 이미지 2018년 3월 22일 Pinterest pin of the day
2018. 3. 22.핀터레스트 오늘의 이미지2018년 3월 22일Pinterest pin of the day
Functional Programming with Haskell - Interacting with Haskell
2018. 3. 22.본격적인 내용에 앞서 사용중인 운영체제에 맞게 아래에서 다운로드하여 설치한다.https://www.haskell.org/downloads 설치 후 CMD, BASH 또는 WinGHCi, GHCi 에서 ghci 를 실행한다. 123root@gcloudx:~# ghciGHCi, version 7.10.3: http://www.haskell.org/ghc/ :? for helpPrelude> Colored by Color Scriptercs 표준 프롬프트는 Prelude> 이다. 아래와 같이 프롬프트를 설정할 수도 있다.1234567root@gcloudx:~# ghciGHCi, version 7.10.3: http://www.haskell.org/ghc/ :? for helpPrelude> :set promp..
우치다 타츠루, <곤란한 성숙> - 나라와 나
2018. 3. 21.우치다 타츠루, 악은 일부에만 있다는 가설사회시스템의 문제는 대체적으로 제도 전체의 노화와 부품의 피로가 원인이다. 모든 요소는 튼튼하고 훌륭하게 잘 작동하고 있는데 한 가지 '악의 요소'가 침입한 탓에 시스템 전체의 기능이 떨어지는 일은 제도 설계상 있을 수 없다. 하지만 외국인 혐오자는 '악은 일부에만 있다'는 가설을 붙잡고 늘어진다. 자멸의 구조이 나라의 상태가 나쁘다고는 생각하지 않고, 국소적으로 어딘가 악의 근원이 있어 시스템 전체를 망가뜨리고 있다는 생각이다. 그럴 때 외견상 차별화할 수 있는 사람을 '외국인'으로 선택합니다. 그러나 그 선택에도 한 가지 아주 중요한 조건이 있다. 그것은 아무리 심한 말로 매도하거나 폭력적으로 차별해도 효과적으로 반격해 올 염려가 없어야 한다는 점이다. 이 ..
우치다 타츠루, <곤란한 성숙> - 교육과 나
2018. 3. 21.우치다 타츠루, 가볍게 여기는 인정이 없어졌다현대에 들어서 거짓말의 특징은 내가 사용한 '금방'이라는 부사에 응축되어 있다. 변한 것은 거짓말의 내용이 아니라 거짓말과 시간의 관계이다.데이비드 모러 David Maurer 이라는 책에 따르면, 가장 훌륭한 사기(big con)은 영화 에 나오는 것처럼 '피해자가 사기를 당했다는 사실을 스스로 부정하게끔 꾸며진 것'이라고 한다. 문제는 수명사람들은 왜 '금방 들통날 거짓말'을 하게 되었을까? '수명의 설정이 단축되었기 때문'이라는 것이 저자의 가설이다. 예전에 사람들은 (주관적으로는) 좀 더 '크기가 크고 수명이 긴 생물'이었다. 친족공동체든, 지역공동체든, 학술공동체든, 정치결사든, 복수의 사람을 포함하고 복수의 세대를 가로지르는 '수명이 긴 생물'이었..
우치다 타츠루, <곤란한 성숙> - 노동과 나
2018. 3. 21.우치다 타츠루, '노동'의 대립 개념그것은 무엇인가를 정의하기 보다는 그것은 무엇이 아닌가를 통해 개념을 좁혀 나가는 것이 빠른 이해를 도울 때가 있다. 유쾌하게 일하는 사람에게는 '온과 오프의 디지털적인 경계선' 따위는 없습니다. '온과 오프의 디지털적인 경계선'이 없는 삶의 방식이 '생물로서 살아가는 이치에 들어맞기' 때문입니다. '노동과 유희의 구별이 가지 않는 상태'가 이상적이라고 한다면, 그것을 일부러 절단하여 '노동이란 무엇인가'라는 질문에 힘을 들일 필요는 없다. 노동의 기원노동은 소비와 상관이 있다. 반대가 아니다. 소비량이 늘어나고 소비하는 품목이 늘어나면 그만큼 노동시간과 노동의 종류도 늘어난다. 간단한 이야기이다. 자연의 증여로 꾸려 나갈 수 있다면 인간은 노동 같은 것을 하지 않는..
우치다 타츠루, <곤란한 성숙> - 사회와 나
2018. 3. 21.우치다 타츠루, 상처에는 영원한 피가 흐른다 - 레비나스, '눈에는 눈, 이에는 이'라는 동죄형법은 복수의 권리 행사를 억제하고 있는 것이다. 어느 지점에서는 무한책임을 멈추어야 하기 때문에 법률로 '그 이상으로 책임을 소급해서는 안 된다'는 한도를 정해 놓은 것이다. 어떤 일이든 한 번 일어나버린 일은 원상복구를 할 수 없다는 것이다. 이미 저지른 죄에 대해 인간이 충분한 보상을 하는 일은 불가능하다. 동죄형법은 '책임지는 일의 불가능성'을 가르쳐준다. 이 곳을 주재하는 것은 나라는 서사선수를 빼앗겼더라도 '후후, 이럴 줄 알았다'고 애써 딱 잘라 말한다. 자신이 이 곳을 주재해야 한다. 겉으로 보면 '선수를 빼앗긴' 것처럼 보이지만 그것까지 다 '내가 그린 그림'이었다고 간주해 버려야 한다.선수를 ..
AICPA 시험, NTS란 무엇인가?
2018. 3. 20.CPA 시험을 준비하는 과정에서 자주 듣게 되는 용어 중 하나가 NTS (Notice to Schedule) 이다. 아직 이 용어가 익숙지 않다면 아마도 이제 시험 준비를 시작했기 때문일 수도 있겠다. 이번 포스팅에서 NTS 와 관련된 주요한 내용을 살펴보자. 일단 AICPA 시험 수속이 진행되면, 4개 섹션 중 몇 개를 응시할 것인지를 결정해야 하는데, 이를 정하고 그에 상응하는 비용을 납부하면, NASBA는 NTS를 발행해준다. NTS가 발행되면 여러분은 이메일로 이에 대한 안내를 받게 된다. 그 후 NASBA Candidate Portal 에 접속해서 NTS를 출력해야 한다. 해당 NTS에는 시험응시가 승인된 섹션명이 나열되어 있고, 예약 프로세스를 프로메트릭을 통해 진행할 수 있다. 그리고 시험 ..
핀터레스트 오늘의 이미지 2018년 3월 20일 Pinterest pin of the day
2018. 3. 20.핀터레스트 오늘의 이미지 2018년 3월 20일 Pinterest pin of the day
Haskell_007 Where
2018. 3. 17.Since we repeat the same expression three times, it would be ideal if we could calculate it once, bind it to a name and then use that name instead of the expression. bmiTell :: (RealFloat a) => a -> a -> String bmiTell weight height | bmi
Haskell Operators and other Lexical Notation
2018. 3. 17.Haskell_006 Guards
2018. 3. 17.Guards are a way of testing whether some property of a value (or several of them) are true or false. We're going to make a simple function that berates you differently depending on your BMI.bmiTell :: (RealFloat a) => a -> String bmiTell bmi | bmi
AICPA 세미나 "Get to know the CPA Exam Blueprints" 3/27 개최
2018. 3. 17.AICPA 시험을 준비하는데 가장 핵심적인 툴인 CPA Exam Blueprints 에 대해 설명해드리는 웹캐스트가 지난 달에 이어 이번달 27일(토요일) 13시 30분(EDT) 에 개최됩니다. 아래 링크를 통해 등록이 가능합니다. 정상적으로 등록이 되시면 확인 메일을 받으실 수 있습니다. “Get to know the CPA Exam Blueprints”https://event.on24.com/eventRegistration/EventLobbyServlet?target=registration.jsp&eventid=1627135&sessionid=1&key=E9224DB6925FEB4DF34E6791F9318C45&deletecookie=true&sourcepage=register - 세미나 개요 -일시..
Haskell_005 Pattern matching
2018. 3. 17.1. Pattern matching consists of 1. specifying patterns to which some data should conform2. checking to see if it does 3. deconstructing the data according to those patterns When defining functions, you can define separate function bodies for different patterns. 2. You can pattern match on any data type — numbers, characters, lists, tuples, etc. 3. Order is important when specifying patterns and ..