このブログは、旧・はてなダイアリー「檜山正幸のキマイラ飼育記 メモ編」(http://d.hatena.ne.jp/m-hiyama-memo/)のデータを移行・保存したものであり、今後(2019年1月以降)更新の予定はありません。

今後の更新は、新しいブログ http://m-hiyama-memo.hatenablog.com/ で行います。

型システムとクラスシステム

Rでは、ベクトル型=アトミック型だから、アトミック型は、

  1. logical
  2. numeric
  3. complex
  4. character

NULLは、奇妙なNULL型のシングルトンインスタンス。これも一応はアトミックかもしれない。

複合型に、

  1. list
  2. environment

他は特殊、または雑多。

  1. function
  2. call
  3. expression
  4. formula
  5. pairlist
  6. ...

クラスシステムと型システムの連絡はあまり良くない。

クラス ベースのモード
data.frame list
matrix ベクトル
array ベクトル
factor 整数

データのクラスは、属性の利用形態に過ぎない。本来の型システムと属性機構の上に、応用レベルでクラスシステムが構築されている。メカニズムというよりはコンベンション。

vectorという型はない。強いて言えば、logical/numeric/complex/characterの総称。stringという方もない。characterがstringでもある。