cost 236 ms
使用 STArray 的兩個幾乎相同的函數:為什么一個需要 FlexibleContexts,而另一個不需要?

[英]Two almost identical functions using STArray: why does one requires FlexibleContexts, and the other does not?

考慮 Haskell 函數 和 第一個需要 FlexibleContexts 在 ghci 8.10.1 上編譯,第二個編譯沒有額外的選項。 為什么? 特別歡迎根據類型變量s的 scope 解釋這種行為的答案。 作為后續,可以將什么(如果有)類型簽名添加到 function f以在沒有 Flexi ...

Haskell ST Monad:(MArray(STArray s)Int(ST s1))沒有實例

[英]Haskell ST Monad: No instance for (MArray (STArray s) Int (ST s1))

我過去一兩個月一直在學習Haskell,最近解決了這個編碼問題。 另一個挑戰是在沒有額外空間和線性時間的情況下完成任務,我認為這不可能以純粹的功能方式完成,所以自然而然地我就了解了ST monad,我認為這將是一個很好的機會了解更多信息。 無論如何,這是我編寫的代碼: 想法是使用1≤ ...

如何在Scala中實現Fisher-Yates shuffle而沒有副作用?

[英]How can I implement a Fisher-Yates shuffle in Scala without side effects?

我想通過使用STArray實現局部突變效應來實現Fisher-Yates算法(就地數組shuffle)而沒有副作用,以及一個函數隨機數生成器 產生算法所需的隨機整數。 我有一個方法def intInRange(max: Int): RNG[Int]我可以用它來產生[0,max)中的 ...

在數據結構中有ST(U)數組?

[英]Having ST(U)Arrays in a data structure?

我需要做些什么才能使GHC接受此代碼: 我得到的錯誤如下: 但是,這很好用: 為什么它適用於第二個而不是第一個? 我可以用數據聲明做些什么來使它工作? 或者我可以在實例聲明中添加某種“forall”嗎? 以上只是一個最小的測試程序。 我實際上永遠循環應用以創建 ...

STArray和堆棧溢出

[英]STArray and stack overflow

我正在努力理解為什么以下嘗試在使用ghc (7.4.1,無論-O級別)編譯時,在STArray中找到最小元素會導致堆棧空間溢出,但在ghci 工作正常 : 注意:切換到STUArray或ST.Lazy似乎沒有任何影響。 但主要的問題是:在ST內部對大型STArray實施這種“折疊式 ...


排序:
質量:
 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM