Chapter 14 Concept index
Jump to: |
. A B C E F G L M N P S U V W |
Index Entry
Section
Environments and variable lookup
Environments and variable lookup
Environments and variable lookup
node:
SEXP:
Environments and variable lookup
Environments and variable lookup
Jump to: |
. A B C E F G L M N P S U V W |
Footnotes
(1)
strictly, a SEXPREC
node; VECTOR_SEXPREC
nodes are slightly smaller but followed by data in the node.
(2)
a pointer to a function or a symbol to look up the function by name, or a language object to be evaluated to give a function.
(3)
This is almost unused. The only current use is for hash tables of environments (VECSXP
s), where length
is the size of the table and truelength
is the number of primary slots in use, and for the reference hash tables in serialization (VECSXP
s), where truelength
is the number of slots in use.
(4)
Remember that attaching a list or a saved image actually creates and populates an environment and attaches that.
(5)
There is currently one other difference: when profiling builtin functions are counted as function calls but specials are not.
(6)
the other current example is left brace, which is implemented as a primitive.
(7)
only bits 0:4 are currently used for SEXPTYPE
s but values 241:255 are used for pseudo-SEXPTYPE
s.
(8)
Currently the only relevant bits are 0:1, 4, 14:15.
(9)
See define USE_UTF8_IF_POSSIBLE
in file src/main/gram.c.
(10)
or UTF-16 if support for surrogates is enabled in the OS, which it used not to be when encoding support was added to R.
(11)
but not the GraphApp toolkit.
(12)
This can also create non-S4 objects, as in new(“integer”)
.
(13)
although this is not recommended as it is less future-proof.
(14)
but apparently not on Windows.
(15)
The C code is in files base.c
, graphics.c
, par.c
, plot.c
and plot3d.c
in directory src/main.
(16)
although that needs to be handled carefully, as for example the circle
callback is given a radius (and that should be interpreted as in the x units).
(17)
It is possible for the device to find the GEDevDesc
which points to its DevDesc
, and this is done often enough that there is a convenience function desc2GEDesc
to do so.
(18)
Calling R_CheckDeviceAvailable()
ensures there is a free slot or throws an error.
(19)
in device coordinates
(20)
It is technically possible to use alpha-blending on metafile devices such as printers, but it seems few drivers have support for this.
(21)
an Xcode project, in SVN at https://svn.r-project.org/R-packages/trunk/Mac-GUI.
(22)
under Windows, junction points, or copies if environment variable R_WIN_NO_JUNCTIONS
has a non-empty value.
(23)
see the previous footnote.
(24)
The usual culprits are calls to compiled code via .Call
or .External
which alter their arguments.
(25)
things which the byte compiler assumes do not change, e.g. function bodies.
(26)
Linux distributions tend to unbundle texinfo.tex from ‘texinfo’.
(27)
but LENGTH
is a macro under some internal uses.