添付の例で期待した結果が得られません
ターミナルで実行すると
最終行の
どういうわけなのでしょうか
ターミナルで実行すると
["
とだけ表示され、あとは Ctrl+C
するしかない状態になります最終行の
(c:r)
の部分が犯人らしいことは分かっているのですがどういうわけなのでしょうか
["
とだけ表示され、あとは Ctrl+C
するしかない状態になります(c:r)
の部分が犯人らしいことは分かっているのですが(l,(c:r)) = break (== c) str
c
は split
の引数の c
ではなく、新たに束縛される変数の名前となります。そして、その新たに束縛された c
が break (== c)
で参照されます。つまり、その行は(l,(d:r)) = break (== d) str
break
の結果の2番目の最初の文字は必要ないので、単にワイルドカードで受けて(l,(_:r)) = break (== c) str
Text.Regex.Posix
を用いた正規表現についてです> import Text.Regex.Posix > "2019/09/30" =~ "([0-9]{4})/([0-9]{1,2})/([0-9]{1,2})" :: Bool True > "2019/09/30" =~ "([0-9]{4})/([0-9]{1,2})/([0-9]{1,2})" :: String "2019/09/30" > "2019/09/30" =~ "([0-9]{4})?/([0-9]{1,2})/([0-9]{1,2})" :: Bool True > "2019/09/30" =~ "([0-9]{4})?/([0-9]{1,2})/([0-9]{1,2})" :: String "2019/09/30" > "2019/09/30" =~ "([0-9]{4})?/?([0-9]{1,2})/([0-9]{1,2})" :: Bool True > "2019/09/30" =~ "([0-9]{4})?/?([0-9]{1,2})/([0-9]{1,2})" :: String "
> "2019/09/30" =~ "([0-9]{4})?/?([0-9]{1,2})/([0-9]{1,2})" :: String "2019/09/30"
"
だけで終わっていることからして、satunさんの手元でもそうなっていると思われます。stack build --ghc-options '-ddump-splices'
ってどのディレクトリーに出力されるんでしたっけ?.stack-work
を掘れ、とだけありますね...--ddump-dir
というオプションが stack build
にできてるはず!"haskeline-0.7.2.1" "ghc-paths-0.1.0.9" "mtl-2.2.1" "network-2.6.3.1" "random-1.1" "syb-0.6"))
intero.el
の隣りに intero.elc
がある場合,これを消しておかないと上記変更しても読み込む設定が何も変わらないので注意してください.intero.el
は,このあたりのバージョンをハードコードしてしまうのではなく.要求されたresolverから対応するltsに含まれる各パッケージバージョンを採用するようにすべきかもしれません.bytestring
をちょっといじってるんですけど,パッケージの構成moduleをちょこちょこ書き換えたあと,Cabal fileのdependencyにダメージを与えていないこと……つまりdependencyの全組み合わせでビルドが通ることってどうやって検証すればいいですかね.bytestring
ならそれでいいですね.ありがとうございます.……世のパッケージ作者さんがたは,こういうテストどうやってるんだろう…….scc :: Ord a => AdjacencyMap a -> AdjacencyMap (AdjacencyMap a)
適用すればdagになるし僕の目的的には良いかなState
モナドの型についてなのですが、すごいHaskell楽しく学ぼう
では`s -> (a, s)`と書かれているのにstackage
で見つけられる`State`は`s -> (s, a)`と書かれていて混乱しています。(containers
パッケージの作者が mtl
や transformers
に依存したくないな、と思って独自に定義しただけのものなので、全く気にしなくていいです。lens
パッケージが提供する諸々はそうする前提で作られています)containers
パッケージの件については、こういうときはせめてコピペにして欲しかった... :disappointed: