makeMistakesToLearnHaskell
makeMistakesToLearnHaskell copied to clipboard
Make Mistakes to Learn Haskell - 失敗しながら学ぶHaskell入門
キャッシュとかを見直せばいいのかな。。。
```haskell do principal
回答の `putStr (unlines (reverse (lines input)))` のように、`input`に`
今日の社内勉強会でのフィードバックから。 `main =` の後にインデントで示したことに激しい違和感を覚えたそうです。 確かにPythonとか使ったことなければ何じゃこりゃ、となるわな。 おそらく下記の段落の前後か途中で解説するのがよいと思われる。 > 先ほどの間違った例と比べて違うのは、`main =`の後に`do`が書いてあるかないか、それだけです。 後はほかのよくあるプログラミング言語と似たように、`putStrLn "newline here:"`などの連続して実行したい命令を改行で切って並べれば、並べた命令を続けて実行できます。 それ故に書き忘れてしまい、先ほどのようなわかりづらいエラーになってしまうことも多いので、ご注意ください。
課題に書かれている「複利計算の式」を使えば良いのですが 再帰を使って計算したり, [taashiさんのツイート: "コード calcCI :: Double -> Double -> Double -> Double calcCI _ 0 a = a calcCI r y a = calcCI r (y - 1) $...
すみません、私が把握してなかったせいなんですが、 `^` だけでなく `**` も利用できることはちゃんと言及しておきます。 関連: https://github.com/haskell-jp/makeMistakesToLearnHaskell/issues/78
こちらの指摘から: https://github.com/haskell-jp/makeMistakesToLearnHaskell/pull/29#discussion_r228775742 > > 現状でもstackを必須としているわけではなく、stackが見つからなかったら自動で PATH から runhaskellを探すようになっているはずですが... > なんでだろう。実行するとコマンドが反応しなくなったので、あとでもう一度確認してみます。 stackを今後必須とするかしないかも不透明なので、優先度は低めでよいが、念のため。
国際化する
国際化することを期待して、課題以外の文章は英語で書いていたが、当面はHaskell Day 2018のハンズオンで使用することを目指すため、日本語化する。
古いmac(El Capitan 10.11.6)環境、かつ、ports環境なので他の方は大丈夫なのかもしれませんが…。 自分の環境で`mmlh`コマンドを実行するとBus error、`mmlh show 1`を実行するとSegmentation faultになります。 以下、実行結果のコピペです。 ``` [mac:/Users/kurokawa/git/makeMistakesToLearnHaskell]% stack --version Version 1.9.1, Git revision f9d0042c141660e1d38f797e1d426be4a99b2a3c (6168 commits) x86_64 hpack-0.31.0 [mac:/git/makeMistakesToLearnHaskell]% stack exec -- ghc --version The Glorious...
特に課題3で出力を間違えた場合がわかりづらいとのこと。