Partial Functions, Scala



Comment

Case? case 는 match 가 없어도 쓰일 수 있다. 예를 들어 val m1 = Map(1 -> "one", 2 -> "two") m1 foreach { case(k, v) => println(s"k -> v" } 사실, case 가 들어간 문장은 function 이다. Scala Doc 을 보면, scala.collection.immutable.Map 의…

Read this article

new to Play Framework 2



Comment

Play Framework 를 배우기로 마음먹었다. 새로운 무언가를 마주쳤을때, 어떻게 해결할까를 위주로 서술했다. Installation 우선 설치를 해야했다. Play 를 배포하는 Typesafe 의 Getting Started 에 들어가서, 확인해보니 activator 라는 제품으로 Play 를 감싸 편하게 개발할 수 있도록 해주는 플랫폼을 만들어 놨다. Installing Play 를 참조해서 activator 설치 후에, PATH 에 추가했다.…

Read this article

Functional Programming in Scala, Chapter 3



Comment

2014-09-29, Functional Programming in Scala, Coursera 3.1 Class Hierarchies Abstract Classes abstract class 는 다른 언어의 그것과 같다. abstract class IntSet { def contains(x: Int): Boolean def incl(x: Int): IntSet } object EmptySet extends IntSet { def contains(x: Int) = false def incl(x: Int) = new NonEmptySet(x, EmptySet, EmptySet)…

Read this article

Functional Programming in Scala, Chapter 2



Comment

2014-09-27, Functional Programming in Scala, Coursera 2.1 Higher-Order Functions Higher-Order Functions Functional PL 에서는 함수를 first-class 로 다루는데, 이는 함수를 파라미터로 넘기거나 결과로 리턴할 수 있다는 소리다. 이렇게 함수를 파라미터로 받거나, 혹은 함수를 리턴하는 함수를 Higher order functions 라 부른다. Function Types type A => B is the type of…

Read this article

Scala for the Impatient, Chapter 1, 2, 3



Comment

Chapter 1 (1). 스칼라의 REPL 은 엄밀히 말해서 인터프리터가 아니다. 입력받은 코드를 자바 바이트코드로 컴파일 한 후 자바 가상머신에서 실행시킨뒤 결과를 돌려준다. (2). 스칼라는 문자열을 위한 추가적인 연산들을 제공하기 위해 java.lang.String 오브젝트를 StringOps 오브젝트로 변환한다. "Hello".intersect("World") 가 그 예다. 따라서 ScalaDoc 을 보려면 SpringOps 클래스를 살펴보는…

Read this article