2012-02-09 4 views
41

私はFRP(Functional Reactive Programming)反応性バナナ haskellライブラリに興味があります。反応性バナナの背後にある理論を理解するための初心者のための読書をお勧めしますか?私が理解しているように、この分野でいくつかの進歩があり、異なるFRP図書館は異なるアプローチを使用しているため、FRPの論文は何もないと思います。反応性バナナFRPライブラリを理解するための推奨読解/チュートリアル

+5

+1「反応性バナナ」の名前のみです。私はFRPを知らないので、そこにも頭がありがたいです。 – duffymo

答えて

9

は基本的に2つの要因があります:

  1. Conal Elliottの論文「Simply Efficient Functional Reactivity」(Conalの他の研究と同様に)
  2. Apfelmusのブログ。おそらく記事「Reactive Banana and the Essence of FRP」が良い出発点です。

反応性バナナの設計と意味論は、Conalの論文と反応性ライブラリ(reactive-banana-0.2以来)に大きく依存しています。この背後にある多くの理由やライブラリの違いについての議論は、Apfelmusのブログのコメントにあります。残念なことに「反応性」は、「スイッチャー」機能に関連したいくつかの悪い挙動を有しており、反応性バナナからは除外されている。この問題の性質とその解決方法について多くの研究が行われており、reactive-banana-0.5は「switcher」の一部のバージョンを導入する可能性があります。

+2

再帰!この質問は、Apfelmusのブログにコメントとして寄せられていました。彼は、 "彼は「再投稿しました。私はそこに答えるでしょう」と答えました。 Apfelmusのポストが熱望して待っていました... –

+0

私には、「Functional Reactive Animation」(http://conal.net/papers/icfp97/)は、Simply EfficientペーパーよりもFRPの方が優れています。実装は異なっていますが、アイデアやインスピレーションは前者では非常に明確です。 – luqui

43

私は残念ながら、反応性バナナライブラリーが依然として多少流動的であるため、包括的な文書やチュートリアルはまだ書いていません。

これは、現時点では、合理的に強いハスケルの知識に裏打ちされたさまざまな情報源から自分自身を把握しなければならないことを意味します。私がここでできることは、様々な情報源とインスピレーションを列挙することです。 introduction本当に短い直接

  • 反応-バナナのために利用可能

    • ドキュメント - 主に質問に答える「私はreactve-バナナを理解するためにApplicativeのファンクタについて知っておく必要があるのはなぜか?」

    • Tutorial slides [PDF] - 説明し、行動とイベント
    • API Reference
    • Example Codeの概念を可視化する - の例は、単純な起動して、ライブラリを理解するために非常に便利です。
    • Model implementation - ソースコードを見てください。プログラミングモデルの詳細を理解するのに便利です。
  • 反応-バナナがConalエリオットの仕事に基づいているので、彼の文章は

+0

ありがとうございます。それは私が探していたものです。あなた自身がこのライブラリを作るために使ったソースです。 – EvgenijM86

+1

包括的な文書を作成することができれば、それを販売することによって多少の追加金を稼ぐことができます。 –

+1

@ダンバートン:良いアイデア!しかし、本当に包括的で本としての資格を得る必要があります。私は何かを考え出すでしょう。 –

1

最近、私は '反応性バナナ' に私の 'ストリーミング' パッケージを移植しました。このパッケージは、MIDIメッセージのリアルタイム処理を目的としています。伴奏、音楽ゲーム、楽しいエフェクトを生成するためのものです。私は反応性バナナの学習を始めたのはどのよう

http://code.haskell.org/~thielema/reactive-balsa/

?私はちょうどパッケージの作者に尋ね、彼は親切に私が最初のステップをするのを手伝った。最初のステップを踏んだ後、私はパッケージのHaddockのドキュメントが非常に役に立ちました。今では、パッケージ作成者と私のどちらかを選択して、反応性バナナから始める方法に関する最初のヒントを得ることができます。 :-)

2

私はあなたと同じ艇にいるので、リソースを探すときに"FRP explanation using reactive-banana"が見つかりました。それはFRPの初心者を対象としています。

関連する問題