monads

    1

    1答えて

    私は、ハスケルとの勢いを拾い始めて、lensのような私が毎日実行する抽象を愛しています。 私は、REST APIレンズを使用すると便利ですが、時間がかかりそうでないことを見つける前に、それは可能ですか? 私が見る大きな問題は(私のレンズの構文は、おそらく間違っている)私は直接、データ構造にアクセスするが、要求された文字列を出力していないよということです。 λ> over (user "robert

    2

    1答えて

    コンテナタイプ([]/{})を使用せずにJavascriptでファンクタを実装しようとしています。したがって、私は単にそれらを構築するために、純粋な高次の機能を利用: const option = x => f => isAssigned(x) ? option(f(x)) : none; const none = option(null); const isAssi

    11

    3答えて

    私はMaybeとモナドのどちらの型でも演奏していました(連鎖、戻り値による条件付き関数の適用、連鎖関数が失敗したエラーメッセージの返送など)。だから私はモナドを使って同じことを達成することができるように思えます。だから私の質問は、それらの間の実用的または概念的な違いはどこですか?

    -3

    1答えて

    IO文字列を受け取り逆の文字列を返す関数をHaskellで書く方法を教えてください。 rev :: IO String -> IO String rev s = ...

    0

    1答えて

    単純な変数のためにState Monadを使用しようとしました。しかし、ここでは、IOと非IOを混在させようとしているようです。 State Monadによって管理される配列を持つ意向。私はこの配列を読み書きしたい。 私が思っていたよりも難しいと思われます。 funarray :: Map.Map String (IOArray Int Int) funarray = Map.emp

    1

    3答えて

    Scalaでは、私はArray[Option[(String,String,Try[String])]]を持っており、すべての失敗エラーコードを探したいと思います。内部モナドではなくOption[String]であれば、私はそうのように、理解のためにきれいな少しでSome(x)内容を アクセスすることができます。 for { Some(row) <- row (a,b,c) =

    1

    2答えて

    私はスカラで関数型プログラミングを学んでおり、モナドを学びました。短いモナドは: trait M[A] { def flatMap[B](f: A => M[B]): M[B] } def unit[A](x: A): M[A] 私はモナドが上記の2つのルールに基づいていることを知っています。 、なぜ我々は理解リストのAPIと比較される用語「モナド」を知っておくべき未来のAPI

    3

    2答えて

    私はMonadTransのいくつかの事例を見てきましたが、MaybeTの実装は次のようになります。 instance MonadTrans MaybeT where lift = MaybeT . liftM Just 私はMonadIOのインスタンスは、内側からリフトの可変数を行うために使用されて理解したようほとんどの場合、IOモナドは直接最外にあります。 MaybeTケースの場合

    1

    2答えて

    読者Monadを理解することが困難です。私が読んだすべての場所からの私の理解は、変数(Read Mode)を異なる機能に共有することができるということです。以下は、2つの関数の計算と何か(悪い関数名には申し訳ありません)の実装です.1つはReaderと1つで、もう1つはReaderです。私はリーダーを使用して利益を得ることはありません。 module Moreunderstanding where