3

矢印言語拡張を使用する Yampa FRP ライブラリで Haskell を使用しています。

SF で単純な putStrLn を実行するにはどうすればよいですか?

mySF = proc x -> do
    y <- identity -< x*x
    putStrLn "Hello World!" ++ show y
    returnA -< y

矢印の構文は、式が矢印ではないことに文句を言いますが(もちろん)、矢印を使用しても出力が得られません

 output <- identity -< putStrLn "Hello World!"
4

2 に答える 2

6

私は FRP の書類を調べようとしている間、Yampa を少しいじっただけですが、私の理解では、これはIOYampa での作業方法とはまったく異なります。代わりに、型の関数を2 番目の引数として受け取る関数でを「アニメーション化」しSF a bます。この関数は、プログラムが行う他の種類のレンダリングとともに、あなたのようなものが住む場所です。reactimateb -> IO ()putStrLn

「Yampa Arcade」ペーパーの「Animating Signal Functions」セクションでは、どのように機能するかについて適切な説明が提供されてreactimateいます。

于 2010-06-01T06:58:50.087 に答える
5

Yampa の完全な Hello World の例を次に示します。

{-# 言語の矢印 #-}

輸入FRP.やんぱ

main = reactate 入出力プロセスの初期化
initialize = return "Hello World!"
input _ = return (0.0, Nothing)
出力 _ x = putStrLn x >> True を返す
プロセス = アイデンティティ
于 2011-07-02T02:36:05.937 に答える