Fexpr, 매크로 그리고 고차 함수
홍민희 블로그가 이전됐습니다.
내용은 위치만 다음 URL로 이동했을 뿐, 여전히 보존되어 있습니다.
http://blog.hongminhee.org/2010/12/07/2128778779/

seen from Canada

seen from United States

seen from United States

seen from Malaysia
seen from China

seen from United States
seen from Russia

seen from United States

seen from United Kingdom
seen from Hong Kong SAR China

seen from Germany
seen from United Kingdom
seen from Argentina
seen from China
seen from Russia
seen from Türkiye

seen from Ireland

seen from Malaysia

seen from Netherlands

seen from United States
Fexpr, 매크로 그리고 고차 함수
홍민희 블로그가 이전됐습니다.
내용은 위치만 다음 URL로 이동했을 뿐, 여전히 보존되어 있습니다.
http://blog.hongminhee.org/2010/12/07/2128778779/
Fexpr이란 (Lisp에서) 적용될 때 인자들을 모두 평가한 결과 값을 전달받는 대신, 인자에 나열된 폼들(forms)을 그대로 전달받는 함수를 말한다.[^1] 따라서 인자는 아무 것도 평가되지 않을 수도 있고, 평가 순서가 달라질 수도 있다. 함수 안쪽에서 폼을 가지고 명시적으로 평가(`eval` 함수를 이용해서)해야 하므로 Haskell 등에서 사용하는 [normal order evaluation][1]과도 다른 이야기다. Lisp은 아니지만 [Io][2]나 내가 만드려는 언어인 Veeyu도 fexpr 기능을 갖고 있다. [^1]: 그야 물론 Lisp의 모든 폼이 사실은 리스트(list) 아니면 애텀(atom)이라는 homoiconicity 덕분에 가능한 이야기다. [1]: http://en.wikipedia.org/wiki/Normal_order_evaluation#Normal_order [2]: http://iolanguage.com/