cost 428 ms
Haskell 的 do 語法及其模式匹配行為

[英]Haskell's do syntax and its pattern matching behaviour

我目前正在嘗試理解 do 符號,如http://learnyouahaskell.com/for-a-few-monads-more所教導的那樣......這里它應用於簡單的函數而不是 monad。 我不完全理解 do 語法,我很好奇:這是 .. 一樣 如果是這樣,那是為什么。 我是否可以在最后不 ...

Haskell 如何在這個 do 塊中“脫糖”?

[英]How does Haskell "desugar" getline in this do block?

我讀過幾本關於 Haskell 的書,但沒有編寫太多代碼,而且我對 Haskell 在某種情況下的作用有點困惑。 假設我正在使用getLine ,這樣用戶可以按一個鍵繼續,但我真的不想以任何有意義的方式解釋那個人的輸入。 我相信這是這樣做的有效方法: 我了解這是在做什么的基本要點。 getLin ...

Haskell 中的 Little monoid from scratch 示例在鏈接 monoid 時存在錯誤

[英]Little monoid from scratch example in Haskell with a bug while chaining the monoid

我想我已經*部分*理解了幺半群。 但我還有一個問題。 在這種情況下,我不知道 Haskell 想從我這里得到什么。 為什么我不能鏈接我的 monad? 代碼:data Result a = Result a | Err String | Empty instance Semigroup (Resu ...

為什么 >> 在 haskell 中重復右側操作數

[英]Why >> duplicates right-hand side operand in haskell

我正在尋找重復字符串n次的解決方案。 我從這個解決方案中找到了duplicate n str = [1..n] >> str 。 我想知道為什么這種方法會重復str 。 我搜索>>並找到了以下幾點:k >> f = k >>= \_ -> f ...

Haskell:非對稱嵌套 do-notation 和 let

[英]Haskell : non-symmetric nested do-notation and let

我正在通過編寫玩具語言來學習 Haskell。 我想知道如何將 let 與嵌套做的收縮結合起來。 我想寫一些類似的東西(完全常見的用例,但在 do-notation 中使用 State-monad): 更准確地說,我想寫一些像這樣的代碼: 我想我可以寫這樣的東西: 但: 我真的很想知道如何寫一些“ ...

Do-notation 和 list monad

[英]Do-notation and the list monad

我正在學習 Haskell。 我試圖找到一個列表的元素as其總和名單的元素bs ,返回元素作為一個元組: 該代碼有效。 但是為了學習 Haskell,我試圖將其重寫為 do-notation: 然后打字員向我抱怨: 平心而論,我知道會的。 但是既然我不能跳過 Haskell 中的els ...

嵌套應用函子時使 QualifiedDo 和 ApplicativeDo 一起工作

[英]Making QualifiedDo and ApplicativeDo work together when nesting applicative functors

我想定義應用函子的深度嵌套組合。 例如這樣的事情: 為了簡化創建fooPhases值的語法,我認為(ab)使用QualifiedDo : 令我驚訝的是,它起作用了: 唉,當我向Bind模塊添加類似 applicative 的函數時 然后在Main啟用ApplicativeDo ,我開 ...

這個簡單的 do notation desugar 是為了什么?

[英]In what does this simple do notation desugar to?

我正在使用Aeson和Network.HTTP 。 我能夠編碼 json 並將其打印在屏幕上,執行以下操作: 但是我do明白這個表達式脫糖是為了什么。 像這樣的東西: 應該是什么? ? 我只知道如何脫糖: 對此 順便說一句,什么是action ? https://en.m.wikibooks. ...

OCaml 中的 Do Notation

[英]Do Notation in OCaml

OCaml 是否具有等效於 Haskell 的 Do Notation 的功能? 另一種說法 - 有沒有一種簡單的方法可以更輕松地處理嵌套單子操作......因為這很煩人: ...

這個技巧如何進行類型檢查?

[英]How does this trick type-check?

閱讀這篇博文——https://www.haskellforall.com/2021/05/the-trick-to-avoid-deeply-nested-error.html——我意識到我不明白為什么這個“技巧”真的有效這個情況:{-# LANGUAGE NamedFieldPuns #-} ...

do塊中的不同行

[英]Different let in for lines in do block

我想使用 hspec 創建一些具有不同值的測試。 我編寫了以下代碼,該代碼無法編譯,但可以說明我的目標: 如何為每個以it開頭的 ligne 創建不同的inVector 、 inInteger和outVector集? ...

Haskell 中狀態的條件變化

[英]Conditional change of State in Haskell

我不知道如何在 Haskell 中對 State Monad 進行有條件的更改。 假設,我在 State Monad 上有一個堆棧。 有了這個,我想寫一個改變它的函數。 例如,我想要一個 bool b和一個值x 。 如果b為True (例如,這可能是我的堆棧不為空的條件),我想從堆棧中pop ...

需要解釋基本的 do 塊語法

[英]Need explanation for basic do block syntax

在 ghci 中,我寫道: 預期結果: 實際結果: 我不明白 output 背后的邏輯。 我認為原因可能與 monad 有關,但我對函數式編程很陌生,我希望有人能解釋一下。 我也嘗試了 List-comprehension 中的等價形式,結果是一樣的,這意味着我在這里誤解了一些基本的東西。 ...

菜單變量不在 scope Haskell 中

[英]Menu variable not in scope Haskell

我正在嘗試創建一個從文本文件中讀取數據的菜單。 但是我得到了三個錯誤,盡管在 IO() 開始時變量不在 scope 中。 我沒有正確閱讀 txt.file 嗎?我創建菜單的方式是否錯誤? 錯誤 我的代碼 ...

IO 是 Functor 的一個實例,僅僅是因為它首先是一個 Monad 嗎?

[英]Is IO an instance of Functor just because it is a Monad in the first place?

從LYAH我了解到do符號只是單子風格的語法糖; 從維基書中我讀到的或多或少是一樣的; 所以我的理解是,如果沒有Monad實例,就不會有任何do表示法。 然而,我閱讀了IO類型 ctor 的Functor實例的定義。instance Functor IO where fmap f ac ...


 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM