使える文字

前回、関数の名前で定義できない文字を使いエラーを出していたので、名前に使える文字をまとめてみます。

まず、関数名。
1文字目は、アルファベットの小文字か、アンダースコア。
それ以降は、アルファベットの大文字、小文字。数字。アンダースコア。シングルクォート。
正規表現で書くとこんな感じかな?

 funcName = [a-z_][a-zA-Z0-9_']*

また、Haskellでは、アンダースコアから始まる関数名は、あまり良しとされていないようです。

次に、データコンストラクタ、型コンストラクタ、クラス名
これらは、関数名と違いアルファベットの大文字から始めなくてはなりません。また、クラス名は、データコンストラクタとは、かぶってはいけないようです。

話はかわりますが、マージンFXのひまわり証券さん、ニンテンドーDS Lite欲しい!と、いってもいいですか?