問題タブ [applicative]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
5 に答える
1511 参照

haskell - Applicative IO は Monad IO の関数に基づいて実装されていますか?

「Haskell を学ぼう!」著者は、インスタンスが次のように実装されていると主張していApplicative IOます。

私は間違っているかもしれませんが、 と の両方returndo固有の構造 (いくつかの砂糖漬けの bind (>>=)) は から来ているようMonad IOです。それが正しいと仮定すると、私の実際の質問は次のとおりです。

実装が関数/コンビネータApplicative IOに依存するのはなぜですか?Monad IO

Applicative よりも強力な概念ではありませんMonadか?


編集(いくつかの説明):

Typeclassopedia の記事によると、特定の型を作成するApplicative 前にその型である必要があるためMonad(または理論上はそうあるべきである)、この実装は私の直感に反しています。

0 投票する
0 に答える
300 参照

postfix-notation - Applicative Language は Postfix Notation を使用できますか?

Factor のような後置言語は、前置言語 (Lispy 言語) や中置/後置言語 (演算子と関数の両方を含めれば、すべて C スタイルの言語) よりもはるかに読みやすいことが常にわかっています。

プレフィックス言語とは異なり、どこにでも区切り記号は必要ありません。中置記法とは異なり、覚えておくべき複雑な優先順位はありません。好きではないものは何ですか?

これらの言語はすべて連結しているように見えるため、ほぼ常にスタックベースです。

連結よりも適用可能であり、依然として後置ベースである現代的な言語を実装できますか?

0 投票する
1 に答える
312 参照

clojure - Clojureが関数を評価する方法を段階的に示す方法はありますか?

私は自分自身にClojureを教え始めたところです。私の研究を補足する一環として、関数型プログラミングのトピックに関するブライアン・ハーベイによるカリフォルニア大学バークレー校の講義をいくつか見ました。関数型プログラミングに関する2回目の講義では、34分頃に、applic関数を使用して評価の順序を示します。Clojureにはこれに似た機能がありますか?理由と理由を理解するために作業しているので、評価の順序を確認すると便利です。

0 投票する
3 に答える
728 参照

haskell - 関手なしのApplicative

Image私は基本的にフロートのC配列である型を持っています。map :: (Float -> Float) -> Image -> Image、 、などの関数を簡単に作成できますzipWith :: (Float -> Float -> Float) -> Image -> Image -> Image

ただし、これらの関数の上にアプリケーション インスタンスのように見えるものを提供することも可能であり、 や のようなより柔軟なピクセル レベルの操作が可能になると感じてい((+) <$> image1 <*> image2)ます((\x y z -> (x+y)/z) <$> i1 <*> i2 <*> i3)。ただし、Image タイプには float 以外のものを含めることができないため、単純なアプローチは失敗し、fmapそのように実装することはできません。

これはどのように実装できますか?

0 投票する
7 に答える
14106 参照

haskell - アプリカティブは構成するが、モナドは構成しない

アプリカティブは構成しますが、モナドは構成しません。

上記のステートメントはどういう意味ですか? そして、どちらが他のものよりも好ましいのはいつですか?

0 投票する
11 に答える
7726 参照

scala - 適用スタイルの実用的な使用法は何ですか?

私はScalaプログラマーで、Haskellを今学んでいます。デコレータ、戦略パターンなど、オブジェクト指向の概念の実際の使用例と実際の例を簡単に見つけることができます。本やインターウェブはそれでいっぱいです。

これはどういうわけか機能的な概念には当てはまらないことに気づきました。適切な例:Applicative

Applicativeの実用的なユースケースを見つけるのに苦労しています。私がこれまでに出会ったほとんどすべてのチュートリアルと本は、との例を提供し[]ますMaybe。FPコミュニティで注目を集めているので、Applicativeはそれよりも適切であると期待していました。

私はApplicativeの概念的な基礎を理解していると思います(多分私は間違っています)、そして私は悟りの瞬間を長い間待っていました。しかし、それは起こっていないようです。プログラミングをしていると、「ユーレカ!ここでアプリが使える!」と喜んで叫ぶ瞬間がありました。(とを除い[]Maybe)。

誰かが日常のプログラミングでApplicativeをどのように使用できるか教えてもらえますか?パターンを見つけ始めるにはどうすればよいですか?ありがとう!

0 投票する
2 に答える
3659 参照

haskell - Haskell-Control.Applicative.Alternativeは何に適していますか?

Haskellライブラリ内のクラスを見ていてApplicative、偶然見つけましAlternativeた。

このクラスは何に適していますか?グーグル検索は特に洞察に満ちたものを明らかにしませんでした。そして、それは完全に場違いのようで、Applicativeパッケージにそのままバンドルされています。

誰かがあなたがこのクラスを使う可能性のあるシナリオを投稿してくれませんか?

0 投票する
5 に答える
17779 参照

haskell - Functor/Functor/Applicative/Monad ではない良い例?

型クラス X とは何かを誰かに説明しているときに、正確に X であるデータ構造の良い例を見つけるのに苦労しています。

そこで、次の例をリクエストします。

  • Functor ではない型コンストラクター。
  • Functor であるが Applicative ではない型コンストラクター。
  • Applicative であるが Monad ではない型コンストラクター。
  • モナドである型コンストラクタ。

Monad の例はいたるところにたくさんあると思いますが、Monad の良い例と前の例との関係があれば、全体像を完成させることができます。

特定の型クラスに属するために重要な側面のみが異なり、互いに類似している例を探します。

この階層のどこかに Arrow の例を忍び込ませることができれば (それは Applicative と Monad の間にありますか?)、それも素晴らしいことです!

0 投票する
1 に答える
1063 参照

scala - Nameをアプリケーションとして使用するにはどうすればよいですか?

NameであるMonadため、これApplicativeもです。では、なぜこのコードが機能しないのですか?それを機能させるためにタイプアノテーションを付ける必要がありますか?ありがとう!