2016-05-18

http://anond.hatelabo.jp/20160517172131

http://qiita.com/nonstarter/items/2763f5d85f2b8df3b18b

main = playBanana disp colour freq gen

https://hackage.haskell.org/package/gloss-banana-0.1.0.4/docs/src/Graphics-Gloss-Interface-FRP-ReactiveBanana.html

  playIO display colour frequency ()
    (\      _ → readIORef pictureref)
    (\ ev   _ → () <$ event ev)
    (\ time _ → () <$ tick time)

https://hackage.haskell.org/package/gloss-1.10.1.1/docs/src/Graphics-Gloss-Interface-IO-Game.html

playIO  display backColor simResolution
        worldStart worldToPicture worldHandleEvent worldAdvance

 = playWithBackendIO defaultBackendState
        display backColor simResolution
        worldStart worldToPicture worldHandleEvent worldAdvance
        False

https://hackage.haskell.org/package/gloss-1.10.1.1/docs/src/Graphics-Gloss-Internals-Interface-Game.html

                , Callback.Idle         (callback_simulate_idle 
                                                stateSR animateSR (readIORef viewSR)
                                                worldSR (\_ -> worldAdvance)
                                                singleStepTime)

これ以上は説明も回答もしない。

  • 関数型って時間はパラメータで与えて結果を得るんじゃないの 刻々と変化する「現在時間」を抽象化したインデックス を変数で持ってたら、命令形じゃないの

    • >関数型って時間はパラメータで与えて結果を得るんじゃないの 刻々と変化する「現在時間」を抽象化したインデックス を変数で持ってたら、命令型じゃないの 言ってる意味がさっぱ...

      • それをユーザから見て命令型変数への破壊的代入ではなく 参照透明な関数型インターフェースで実現するのが いわゆるモナドや(誰かの独自解釈ではない本来の)FRP。 http://elm-lang.org/ex...

        • 命令型プログラムをFRPとか言ってる人が決定的に理解していない点は、 ライブラリユーザは現在時刻から状態への写像fを 参照透明な関数なりストリームなりで記述して、 それを処理系...

          • 「FRPでなく状態渡しでも書ける!」ってのだけみたけど、 どこにFRP,特に、 http://anond.hatelabo.jp/20160517023637 >ライブラリユーザは現在時刻から状態への写像fを 参照透明な関数なりストリ...

            • http://qiita.com/nonstarter/items/2763f5d85f2b8df3b18b main = playBanana disp colour freq gen https://hackage.haskell.org/package/gloss-banana-0.1.0.4/docs/src/Graphics-Gloss-Interface-FRP-ReactiveBanana.html playIO display colour frequency () ...

              • また、ボロクソにつっこまれてるよな? http://kenokabe-techwriting.blogspot.jp/2016/05/frp_18.html こいつら、こんな程度の嘘が通用すると思ってるのかね?低レベルコーダが。

                • 状態を変数に持つ必要はない、というところは伝わってるのかな 状態を引数で与えて新たな状態を得る、という形で書ける、と そのほうが関数型的、というと反発するんだろうけど 岡...

                  • そんな「状態渡し」の話はもう周回遅れでとっくに終わってる。 複雑なGUIアプリを関数型で「状態渡し」で書いたら、そのうちスケールしなくなる、ってのは例の当事者が認めてて、 FR...

                    • まあお絵かきは綺麗に書けるってことでいいんじゃないの? そんで岡部氏のFRPでは綺麗に書けて、状態渡し派の関数型には書けない次なるお題でとどめを刺せばいいんでは?

                      • まあ、それも面白い展開になるだろうね。

                      • 状態渡し派の関数型には書けない次なるお題のいいアイデアある? FRPでかいても複雑さは一緒です!とかいいながら、またHaskell+ReactiveBananaかElm使ったら笑うけどなw

                      • 何度も指摘されているが「岡部氏のFRP」は同じメンバ変数tに何度も値を上書きしてるだけの FRP以前に関数型でもない普通の命令型プログラム。いくら論文を曲解したり哲学とか言い訳し...

                        • 「状態渡し派」なんてレッテル張りも典型的な詭弁(藁人形論法)。 誰も状態渡しで何でも簡単に書けるなんて言ってないし、状態渡しで書くべきとも言ってない。 「お絵かきアプリ...

                          • 言い訳だよね? 結局、nonstarterは「状態渡し」でもFRPでも複雑なアプリになっても事情は全く同じということを主張しているのだから、その真実性を証明してくれと要求されているにす...

                        • 何度も指摘されているが「岡部氏のFRP」は同じメンバ変数tに何度も値を上書きしてるだけの FRP以前に関数型でもない普通の命令型プログラム。いくら論文を曲解したり哲学とか言い...

                      • ttp://kenokabe-techwriting.blogspot.jp/ このブログエントリの昨日と本日日付の分を見ると、たくさんの増田の投稿がリンク付きで引用されている。 しかもよく見ると、個々の増田の投稿を、実在...

                    • これのどこをどう読んだら「状態渡しはスケールしない」になるんだ…… ひょっとして状態渡しをモナド化したのがStateとか、基本的なことを全く理解していない? http://qiita.com/nonstarter...

                      • http://qiita.com/nonstarter/items/2763f5d85f2b8df3b18b#comment-d9a8cdf2efc67044c158 >>いずれにせよ、状態機械の数学的構成では状態遷移が状態と入力から状態への関数として表現されるというだけのこ...

                • http://anond.hatelabo.jp/20160517023637 >ライブラリユーザは現在時刻から状態への写像fを >参照透明な関数なりストリームなりで記述して、 >それを処理系が実際のシステム時刻t=0,1,2,...に適...

                  • http://kenokabe-techwriting.blogspot.jp/2016/05/frp_18.html 使ってるライブラリのソースコード=「処理系」なるもの 残りは全部、使ってるライブラリのソースコードからfrequencyやリフレッシュレー...

              • おう、あんたのこの投稿 毛の壁がSOに持って行って泣きついてるで http://stackoverflow.com/questions/37293422/a-true-frp-principle-and-reactivebanana-code

              • ・Ken OKABE氏、SOで元の書き込みを捻じ曲げて説明し「間違っていますよね?」と同意を求める ・「SOはdiscussion forumではない」とたしなめられる ・「正しい」という回答がついたら特異な...

          • >それを処理系が実際のシステム時刻t=0,1,2,...に適用して状態f(0),f(1),f(2),...を得る、という本来のFRPの基本原理 じゃあ、その「本来のFRPの基本原理」なるもので、お絵かきアプリ実装し...

            • nonstarter氏をはじめもう1年ぐらい前から何度も示されてるんですが(以下無限ループ)

            • ユーザプログラムではなく「処理系が」と明記されているのに また曲解して藁人形論法の詭弁で「論破」ですか。 それとも「処理系」という言葉の意味がわからなかった?

              • http://kenokabe-techwriting.blogspot.jp/2016/05/frp_18.html 使ってるライブラリのソースコード=「処理系」なるもの 残りは全部、使ってるライブラリのソースコードからfrequencyやリフレッシュレー...

                • ストリームから要素を取り出すなり、関数を呼び出すなりして 「写像」を「時刻」に適用しなければ実行できるわけないけど 実際に動いてるし、その部分のコードの入口も明示されたの...

                  • kenokabe氏が「タイマーの解像度設定しながらマウスイベントを同時にとってなんかやる」とか言ってる部分がまさに (本当の)FRPで書かれたプログラムを実際のハードウェア上で実行す...

                • kenokabe氏ははっきりと >@nonstarterの書いたコードのどこに、「実際のシステム時刻t=0,1,2,…」をとった形跡があるのか? と処理系ではなくユーザプログラムの話をしてるんですが また論...

          • 「FRPでなく状態渡しでも書ける!」ってのだけみたけど、 どこにFRP,特に、 http://anond.hatelabo.jp/20160517023637 >ライブラリユーザは現在時刻から状態への写像fを 参照透明な関数なりスト...

          • 「FRPでなく状態渡しでも書ける!」ってのだけみたけど、 どこにFRP,特に、 http://anond.hatelabo.jp/20160517023637 >ライブラリユーザは現在時刻から状態への写像fを 参照透明な関数なりストリ...

        • >それをユーザから見て命令型変数への破壊的代入ではなく参照透明な関数型インターフェースで実現するのがいわゆるモナドや(誰かの独自解釈ではない本来の)FRP。 はい、戯れ言へ...

      • 初期値で0与えて再帰の引数でカウント回したりとか、普通にあると思うけど

        • >初期値で0与えて再帰の引数でカウント回したりとか、普通にあると思うけど は?初期値0で「再帰の引数でカウント回した」ら、ある無限ストリームの「現在時刻」を得るためのイ...

          • 再帰が無限なら現在時刻のインデックスは引数として無限に得られるよね グローバル変数の一部に代入しておくような手続き的な構造にする必要ないよね 関数のパラメータのみから結果...

            • 100%不可能な机上の空論は聞き飽きたから、コードで示してみな?w いったいどうやったら「現在時刻」を抽象化したdate.nowやらfoo.t以外で、 その「現在時刻のインデックスは引数...

    • 言ってる意味がさっぱり意味がわからないんだけど、おまえはどうやって「現在時間」という結果を得る「パラメータ」を用意するつもりなんだ?ww 筋金入りの馬鹿だな、こいつww ...

    • >再帰が無限なら無限に得られるよね グローバル変数の一部に代入しておくような手続き的な構造にする必要ないよね 関数のパラメータのみから結果を生み出すっていう参照透過な形で...

      • よくわからんが、プログラミング原則的な意味だとコードの中に現在時刻って変数が入ってくる時点でなんかおかしいとおもうんやが。

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん