On Tue, 12 Aug 2003, Spencer Graves wrote:

> "a$b" = "a[['b']] = attribute "b" of list "a".

(Not quite always.  First, it is `component' not `attribute' and second $ 
and [[ ]] do behave differently, e.g. for data frames in 1.7.x.)

> A basic object in R is a list, and the "$" operator provides one means 
> of accessing named attributes of a list.
> 
>         Beginning with R 1.7, objects can also have "slots", which are 
> accessed as "[EMAIL PROTECTED]".  I have yet to understand why "slots" were 
> introduced;  perhaps someone else will explain this.

Slots are part of objects which have formal (S4) classes, made using the 
`methods' package (so have been around since at least R 1.4.0).
They are an implementation of the ideas of Chambers (1998).  Formally 
classed objects are not just lists: they have rules for the number, names 
and types of the slots. (Currently they are lists, but that's an 
implementation detail.)

-- 
Brian D. Ripley,                  [EMAIL PROTECTED]
Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595

______________________________________________
[EMAIL PROTECTED] mailing list
https://www.stat.math.ethz.ch/mailman/listinfo/r-help

Reply via email to