Python에서의 FunctionalProgramming
http://www.freenetpages.co.uk/hp/alan.gauld/tutfctnl.htm
다음의 식 혹은 내장함수를 이용해서 구현가능하다.
- lambda : def와 같다. 다른점이라면,
- expression(표현식)이지 statement(문)이 아니다. 따라서 def가 표현할수 없는곳(예,리스트 상수안)에 나올 수 있다.
- 단일식이어야하며, 블록문이 될 수 없다. 즉 return 문을 쓰는것과 유사하다.
- map(aFunction, aSequence)
- filter(aFunction, aSequence)
- reduce(aFunction, aSequence)
- apply(aFunction, aSequence)
list comprehension : [<expresion> for <value> in <collection> if <condition>]
short circuit evaluation (->) Factorial.py
관련정보
SeeAlso http://www-106.ibm.com/developerworks/linux/library/l-prog.html