5/8に発行されましたHaskell Weekly Newsです。相変わらず、初心者ですが宜しくお願いします。m(_ _)m
コメント求む
School of Haskell 2.0
School of Haskellのオープンソース版がまもなくリリースされます。Webサイト上で簡単にHaskellのコードを編集・実行可能にしたり、Github-hostedになったり、School of Haskellをオープンソースにするために、あらゆる障害を取り除くことを目標としていると、Michael Sloanは説明しています。彼は、以下でエディタとmarkdownのレンダリングサービスについて説明し、フィードバックを求めています。
https://www.fpcomplete.com/blog/2015/05/school-of-haskell-2
http://www.reddit.com/r/haskell/comments/34uc8y/school_of_haskell_20/
談話
Functional Programming @ Amplidata
Koen De KeyserがAmplidataについて(訳注:クラウドビッグデータ向けのストレージ・ソリューションを提供する会社のようです)、及び、Amplidataが2010年にPython/C++の代替としてOCamlを導入したこと、そして2014年にOCamlからHaskellに移行したことについて資料を公開しています。彼の説明によると、Haskellの強い型付けと関数型が、バグの発生を、テスト時・実行時からコンパイル時に移している。また、表現力を向上し、定型文を減らし、Haskellに移行することで、より大きなコミュニティに参加し、商用サポートを得られ、マルチスレッド・GCを追加し、純粋な関数と副作用を確実に分離すると説明しています。ただ、Java/.NET/C++レベルのツールはどこにもないとも話しています。
http://people.cs.kuleuven.be/~tom.schrijvers/Research/talks/lhug4b.pdf
ディスカッション
商用でHaskellを使っている方々へ:ビルド、デプロイメント環境は何を構築していますか。
Jameshfisherが、「実際の」Haskellのプロジェクトを開始するにあたり、ビルド・デプロイメントに関して、Redditで質問しています。コミュニティの提案は、基本的にHaskellのデプロイメントは他のそれと変わらずでよいのでは、とのこと。Haskellの特徴のCabal、Stackage、Shakeについてはよく考慮しておくことです。
http://www.reddit.com/r/haskell/comments/34m4bq/people_using_haskell_in_production_what_is_your
成功を積み重ねることによって、失敗を置き換えるやりかた
Edward Kmettがコンビネータの構文解析を書くことについてブログに投稿しています。彼は構文解析において、StateモナドからUpdateモナドに変更することによるメリット・デメリットを説明し、アップデートの限定的な構成は、構文解析のため、さらには余り物を解析する際の問題をより良く扱うために、情報を整理するより効率のよいアプリカティブを開発するために利用される、としています。
https://www.fpcomplete.com/user/edwardk/heap-of-successes
http://www.reddit.com/r/haskell/comments/34kouv/edward_kmett_how_to_replace_failure_by_a_heap_of
よりスマートな有効性確認
Roman Cheplyakaが、Either Monad, Validation Applicative, SmartValidation Applicativeでの、エラーの扱い、やりとりのやりかたの違いを調査しています。Eitherは最初のエラーで停止する。Validation Applicativeはすべてのエラーを報告する。その一方で、SmartValidation Applicativeは最初のN個のエラーを報告して停止する。Romanは「最初のN個のエラー」問題についてのコメントを求めています。
https://ro-che.info/articles/2015-05-02-smarter-validation
5MBのDockerイメージのHaskell Webサーバー
Tim Dysingerが、すべてのAmazon ELB(Elastic Load Balancer)のHTTPのトラフィックをHTTPSへリダイレクトしなければいけない問題に、Haskellの97行のコードで解決案を出しました。彼は、HaskellのパフォーマンスはGoやRust、Cでさえ、のネイティブにコンパイルされたシステムと競争できるとしています。
https://www.fpcomplete.com/blog/2015/05/haskell-web-server-in-5mb
https://github.com/fpco/rdr2tls
今週の一言
I like safePerformIO = Just . don't
訳注:safePerformIO = Just . don't
はこちらで定義されています。don't
はこちらで定義されていて、do構築子のように使えますが、何もしないコマンドで、、つまり安全なIOは何もしないこと、という皮肉です。。
Interactive Haddocks sounds like a dream.
http://www.reddit.com/r/haskell/comments/34uc8y/school_of_haskell_20/cqy8sau
訳注:School of Haskellで、初心者向けに、interactiveなドキュメントやチュートリアルが提供されるとの記事を受けてのコメント。
Being able to have runnable code on standalone blogs is huge!
http://www.reddit.com/r/haskell/comments/34uc8y/school_of_haskell_20/cqyab7z
訳注:School of Haskellで、あらゆるWebサイト(自分のブログなどでも)Haskellのコードが実行できるようになることを受けてのコメント。
If you want to have a type system related heart attack, the acme-stringly-typed library provides it.
訳注:「心臓発作に関連のある型システムが欲しかったら、acme-stringly-typedがそれを提供してくれるよ。」
Haskellの強い型付け(Strongly-typed)ではなく、文字の形付け(Stringly-typed)のライブラリです。
訳者あとがき。
School of Haskell注目ですね!