私はで関数型プログラミングを学んでいます。Clojureという機能的なパラダイムの理論的理解を深めたいと思っています(Clojureの構文だけでなく)。機能プログラミングの公理
私は 公理または 式再帰のような どのように各機能技術、マップ、減らす、短所、最初のANS残りがいるから/構成可能な誘導可能され、相互に関連し、ある探していすべての背後にある究極の公理。
例えば、私はmap
のみrecur
、first
、rest
とcons
機能を使用して実装することができ実現され、当然マッピング関数自体はmap
に渡されます。
はその後、私はまた、map
もreduce
を使用して実装し、再びrecur
、first
とrest
を使用して実装することができ軽減することができ実現しました。また、filter
はreduce
で実装できます。
任意の関数を構成する抽象化またはキーワードの最小セットであるすなわち、私は関数型プログラミングのまわりで私の頭をラップするために開始するように私は感じるが、ほとんどの究極のビルディングブロックされているかを確認することはまだ難しいです。マップの例では、2番目の方法では、抽象化を使用して同じ目標を達成しています。だから、私が大きな絵を見るのを助ける機能的なパラダイムのいくつかの究極の公理は何ですか?
この場合、この本をチェックすることをお勧めします:https://mitpress.mit.edu/books/little-schemer FPへの素晴らしいイントロです。基本的な番号だけを使って物事を作る方法を示しています要素のまた、古典的な[SICP](https://mitpress.mit.edu/sicp/full-text/book/book.html)は大いに助けることができます。どちらもlisp(正確にはスキーム)を採用しているので、理解をClojureに移すのは簡単です – leetwinski
関数型プログラミングはLamda Calculusに大部分根をおいており、コアの公理は以下のamalloy状態です。 –
'map'も' for'と置き換えることができることを忘れないでください。 –