2012-09-19 10 views
9

Clojureでは、fnとfn *の違いは何ですか?私は#マクロを使って作成した関数を引用符で囲むとfn *を参照します。たとえば、REPLに:fnとfn *の違いは何ですか?

user=> `#(inc %) 
(fn* [p1__342__343__auto__] (clojure.core/inc p1__342__343__auto__)) 

が、これは単に機能を直接#ではなくFNによって作成されたことを識別するために、デバッグの目的で使用されていますか?

+1

参照http://stackoverflow.com/questions/10767305/what-is-fn-and-how-does-clojure-bootstrap – noahlz

答えて

17

this post on google groupsfn*は、関数を作成するための基本的な形式であり、fnは、その上に構築され、非構造化などのより高度な機能を実装するマクロです。

+1

ありがとう!これはClojureについて調べるべきもののリストに載っていた... –

+1

これは本当に見つけにくかった。グーグルのfn *は明らかに機能しませんでした。 DuckDuckGoは救助に来た:) –

関連する問題