Chapter 14 Concept index

Jump to:   .  
A   B   C   E   F   G   L   M   N   P   S   U   V   W  

Index Entry

 

Section


.

… argument:

 

Rest of header

… argument:

 

Dot-dot-dot arguments

.Internal function:

 

Argument evaluation


A

allocation classes:

 

Allocation classes

argument evaluation:

 

Argument evaluation

argument list:

 

SEXPTYPEs

atomic vector type:

 

SEXPTYPEs

attributes:

 

Attributes

attributes, preserving:

 

Attributes

autoprinting:

 

Autoprinting


B

base environment:

 

Environments and variable lookup

base environment:

 

Base environment

base namespace:

 

Namespaces

builtin function:

 

Argument evaluation


C

coding standards:

 

R coding standards

context:

 

Contexts

copying semantics:

 

Rest of header

copying semantics:

 

Attributes


E

environment:

 

Environments and variable lookup

environment, base:

 

Environments and variable lookup

environment, base:

 

Base environment

environment, global:

 

Global environment

expression:

 

SEXPTYPEs


F

function:

 

SEXPTYPEs


G

garbage collector:

 

The write barrier

generic, generic:

 

Argument evaluation

generic, internal:

 

Argument evaluation

global environment:

 

Global environment


L

language object:

 

SEXPTYPEs


M

method dispatch:

 

Contexts

missingness:

 

Missingness

modules:

 

Modules


N

namespace:

 

Namespaces

namespace, base:

 

Namespaces

node:

 

SEXPs


P

preserving attributes:

 

Attributes

primitive function:

 

Argument evaluation

promise:

 

Rest of header


S

S4 type:

 

SEXPTYPEs

search path:

 

Search paths

serialization:

 

Serialization Formats

SEXP:

 

SEXPs

SEXPRREC:

 

SEXPs

SEXPTYPE:

 

SEXPTYPEs

SEXPTYPE table:

 

SEXPTYPEs

special function:

 

Argument evaluation


U

user databases:

 

Environments and variable lookup


V

variable lookup:

 

Environments and variable lookup

vector type:

 

The ‘data’

visibility:

 

Visibility


W

write barrier:

 

The write barrier


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 (VECSXPs), 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 (VECSXPs), 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 SEXPTYPEs but values 241:255 are used for pseudo-SEXPTYPEs.

(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.