こんにちは、ミヤジーです。
最近Haskellという関数型言語の勉強を始めました
Haskellとは・・・
http://ja.wikipedia.org/wiki/Haskell
関数型言語は他にも ML, OCaml, LISP 等があります。
C, C++, Java 等は手続き型言語に分類されます。
今まで手続き型言語でのプログラミングに慣れ親しんできた人には、
関数型言語のあまりに違いに驚くことでしょう
なんといっても衝撃的だったのが、特に純粋関数型言語であるHaskellは
変数に再代入ができないという事です!! (参照透過性といいます)
どうやってそれでプログラムを組むんだ
どうですか? ワクワクしてきませんか ?
答えはとても長くなるので、下の参考書や解説サイトを読んでみて下さい!!
今、読んでいる参考書です。
ふつうのHaskellプログラミング ふつうのプログラマのための関数型言語入門
http://www.amazon.co.jp/dp/4797336021
プログラミングHaskell
http://www.amazon.co.jp/dp/4274067815
Real World Haskell―実戦で学ぶ関数型言語プログラミング
http://www.amazon.co.jp/dp/4873114233
どれもお勧めです。上から順に読んでいくと理解しやすいと思います。
Haskellを用いて開発されたゲームもいくつか存在します。
(関数型言語でゲームを作れるのか!! と驚きです。)
最後にHaskellのメリットをいくつか挙げると・・・
・並列処理アーキテクチャとの親和性が良い
・遅延評価(実際の計算を値が必要になるまで行わないことで高速)
・処理を非常に簡潔に記述できるものがある。
(例 クイックソート)
qsort [] = []
qsort (p:xs) = qsort [x | x <- xs, x < p] ++ [p] ++ qsort [x | x <- xs, x >= p]
等々あります。
みなさんもHaskellを学んでみては如何でしょうか?
BLOG
NEWS
-
2025.8.8プレスリリース■■ノニラヤの「読経オーディション」実施について
-
2025.7.31インフォメーション夏季休業のお知らせ
-
2025.7.29プレスリリース中国最大のゲーム展示会「ChinaJoy2025」に参加いたします!