型システムとクラスシステム
Rでは、ベクトル型=アトミック型だから、アトミック型は、
- logical
- numeric
- complex
- character
NULLは、奇妙なNULL型のシングルトンインスタンス。これも一応はアトミックかもしれない。
複合型に、
- list
- environment
他は特殊、または雑多。
- function
- call
- expression
- formula
- pairlist
- ...
クラスシステムと型システムの連絡はあまり良くない。
クラス | ベースのモード |
---|---|
data.frame | list |
matrix | ベクトル |
array | ベクトル |
factor | 整数 |
データのクラスは、属性の利用形態に過ぎない。本来の型システムと属性機構の上に、応用レベルでクラスシステムが構築されている。メカニズムというよりはコンベンション。
vectorという型はない。強いて言えば、logical/numeric/complex/characterの総称。stringという方もない。characterがstringでもある。