Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
![Haskellの型クラスとF#のインターフェース - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/9385cc803968bce9c40545b965a0ba8e689ad79d/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fqiita-user-contents.imgix.net%252Fhttps%25253A%25252F%25252Fcdn.qiita.com%25252Fassets%25252Fpublic%25252Farticle-ogp-background-afbab5eb44e0b055cce1258705637a91.png%253Fixlib%253Drb-4.0.0%2526w%253D1200%2526blend64%253DaHR0cHM6Ly9xaWl0YS11c2VyLXByb2ZpbGUtaW1hZ2VzLmltZ2l4Lm5ldC9odHRwcyUzQSUyRiUyRnFpaXRhLWltYWdlLXN0b3JlLnMzLmFtYXpvbmF3cy5jb20lMkYwJTJGMzIwNTclMkZwcm9maWxlLWltYWdlcyUyRjE0NzM2ODU4MjM_aXhsaWI9cmItNC4wLjAmYXI9MSUzQTEmZml0PWNyb3AmbWFzaz1lbGxpcHNlJmZtPXBuZzMyJnM9ZjkzNGEwNDA4YTRhNzY1OTgwMDQzODVlN2ZlOGFiN2U%2526blend-x%253D120%2526blend-y%253D467%2526blend-w%253D82%2526blend-h%253D82%2526blend-mode%253Dnormal%2526s%253D66b5a274999f487487c018e23f50cb6b%3Fixlib%3Drb-4.0.0%26w%3D1200%26fm%3Djpg%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk2MCZoPTMyNCZ0eHQ9SGFza2VsbCVFMyU4MSVBRSVFNSU5RSU4QiVFMyU4MiVBRiVFMyU4MyVBOSVFMyU4MiVCOSVFMyU4MSVBOEYlMjMlRTMlODElQUUlRTMlODIlQTQlRTMlODMlQjMlRTMlODIlQkYlRTMlODMlQkMlRTMlODMlOTUlRTMlODIlQTclRTMlODMlQkMlRTMlODIlQjkmdHh0LWFsaWduPWxlZnQlMkN0b3AmdHh0LWNvbG9yPSUyMzFFMjEyMSZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT01NiZ0eHQtcGFkPTAmcz02MzNhMzM4MjljMjIyNTU0ZjExYmEzYmFiODM0YWRhYQ%26mark-x%3D120%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTgzOCZoPTU4JnR4dD0lNDA3c2hpJnR4dC1jb2xvcj0lMjMxRTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LXBhZD0wJnM9ZTY5Nzc0ZGRlYmNkNTAzNDM5ODM2ZGY1N2FmYjc0NTE%26blend-x%3D242%26blend-y%3D480%26blend-w%3D838%26blend-h%3D46%26blend-fit%3Dcrop%26blend-crop%3Dleft%252Cbottom%26blend-mode%3Dnormal%26s%3D3dae3d104e20f51b00ca16a7a8c24463)
This document compares the parallel programming support in Haskell, F#, and Scala by looking at their language features, high-level abstractions for parallelism, and experimental results from implementing the n-body problem on multi-core systems. It finds that all three languages provide good support for parallelism through features like parallel collections, tasks, actors, and strategies/skeleton
■ [book][prog] 型理論・型システムの定番の入門書「TAPL」の日本語版が発行されるぞ Types And Programming Languages、通称TAPLの日本語版が発行される。 発売日は今月26日なのだが、すでにTwitter(の一部)で話題になって いたり、発売記念トークショーが予定されていたり(予約受付中)、あげくAmazonのランキングでニンジャスレイヤー4巻と並んだりと、専門書の発売とは思えない盛り上がりを見せている。 4274069117 TAPLといえば、大学のソフトウェア関係の研究室で輪講の題材として使われたりする、型理論の定番の入門書だ。 型理論(Type Theory)とは、静的型付け言語、特にHaskellやOCamlといった関数型言語の型チェックや型推論の基礎になっている理論だ。関数型言語に興味のある人なら、目次の中の「ラムダ計算」「多相型」「
mkotha さんに直してもらったりして、Haskellのコードはだいぶ速くなりました。どうも2重ループの内側がボトルネックのようなので、そこを展開して、データ構造も変えて、UNPACKプラグマは効くので残して、正格評価を1ヶ所だけ。性能と可読性のバランスがそこそことれたかなと思ってます。C++ や F# のコードにも同じような改修を加えたら、Haskell はまた抜かれてしまいました。まぁでも、目くじら立てるほどの差でもないので、そのままにしています。 実行環境が Windows というアドバンテージがあるとはいえ、C++ も超える F# の健闘が光ります。明示的な副作用がない関数プログラミングでこれだけ速いとうれしい。コード書いてても気持ちがいいし、Microsoft でなければもっと流行っていいはず。 最終形のコードを以下に載せておきます。 ついでに Scala でも書いてみました。
VB .NET で書かれたプログラムを速くしろと言われて、Haskell と F# で書き換えたりしています。僕の目論見ではHaskellの方が速くなるはずで、そしたら『F# もいい言語ですけどね、やはり速度を求めるならネイティブ・アプリケーションでないと。』とか何とか言って、Haskell 化してしまう予定でした。だって僕は F# 初心者だし、Haskell は C++ にも負けないわけだし、Haskell が速いに決まってるじゃないですか。 ところが実際に試してみたら、F# の方が速くなってしまいました。それも2倍以上。というわけで、図らずも自分自身の Haskell 力の無さを露呈してしまったわけですが、それはともかく、Haskell が遅いとかいう汚名を着せられてしまうのは、避けなくてはなりません。 でも、ごめんなさい、僕の能力では限界です。 世の Haskeller のみなさま、
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く