来週阿部さんたち東京スクイーカーズの面々に会いに行くのですが、もう一つの上京目的は Haskell 忘年会に行く事です。よくネット上でハンドル名を拝見する方がいらっしゃるので大変楽しみです。そしてその前哨戦として、一人ずつ Haskell の発表を行わないといういけないという話になっていました。忘年会に発表とはさすが Haskell。お題は Haskell 2010 か GHC 6.12.x のトピックから早いもの順に話題を選ぶという物。万年 Haskell 初心者の私としては、出来るだけ簡単なのを取らなくては!と思い調べてみました。
そもそも Haskell 2010 というのは、前回の Haskell 98 に続く規格で、新しいアイデアを入れようという物では無く、多くの Haskell 処理系で現在よく使われているメジャーな拡張機能を選んで規格に入れてしまおうという物だそうです。Scheme の R6RS が前バージョンに大胆に変更を加えたのと対照的に、え、これ規格に入ってなかったの?というような普通な機能を正式に規格化した物と言えます。という事で大体どんな物が入っているのかざくっと調べました。
- DoAndIfThenElse
- if then else のインデントの入れ方を直感的にしたそうです。
- HierarchicalModules
- モジュール名に . を入れて階層化出来るそうです。
- EmptyDataDeclarations
- 構築子なしでもデータ型を宣言出来るようになった(?)。
- FixityResolution
- 演算子の優先順位のパース方法を変えた(?)。
- ForeignFunctionInterface
- C で書かれた関数を呼ぶ方法だそうです。
- LineCommentSyntax
- コメントのパース方法を変えたそうです。
- PatternGuards
- 複数のガードが書けるようになったそうです。
- RelaxedDependencyAnalysis
- 型推論を変えた(?)。
- LanguagePragma
- LANGUAGE プラグマの使い方を決めたそうです。
- NoNPlusKPatterns
- これはまったく意味がわかりませんでした。