Anexo 1. Vocabulario

9.1 Vocabulario.

Algunas palabras que utilizaremos en estas guías pueden tener múltiples sentidos, dependiendo del ámbito en el que las usemos. Es preciso aclarar cuál es que le damos aquí.

Expresión
Una combinación de valores, variables y operadores que un programa de computación interpreta y computa para producir un resultado. Es la unidad mínima ejecutable de código. 1+1 es una combinación de los valores 1 y 1, unidos por el operador +.
Código o código fuente
Una colección de instrucciones/expresiones escritas en un formato legible para humanos. Un programa de computación también puede interpretar y evaluar ese código. El código produce programas, pero no es el programa. En el uso avanzado de R es es posible hacer que el programa modifique el mismo código que lo produce, por lo que es importante conservar esta distinción. El siguiente código reune 20 expresiones y, cuando es ejecutado y recibe vector x válido, regresa la mediana de de x, tanto para n para como para n impar.median(x) tiene un código diferente, pero ejecuta el mismo programa.

ifelse(length(x)%%2 == 0, (sort(x)[floor((length(x)+1)/2)] + sort(x)[ceiling((length(x)+1)/2)])/2, sort(x)[(length(x)+1)/2]

Guión o script
Un archivo en que almacenamos código. Para referirnos al contenido de ese archivo usamos la palabra código. Son tan importantes que R guardó la extensión de archivo .r para los scrips.
Programa
Una colección de instrucciones que llevan a cabo una tarea específica cuando está siendo ejecutada por una computadora. En un lenguaje interpretado como R el programa es el código en el momento en el que está siendo ejecutado. Generalmente el programa no es legible por humanos.
Sintaxis
Conjunto de reglas que define la combinación y el orden en el uso de ciertos símbolos considerada correcta. Respetando las reglas de sintaxis podemos producir expresiones capaces de ser evaluadas por un programa. La sintaxis de R es un concepto abstracto, no muy diferente a la sintaxis de la lengua española o inglesa. La sintaxis básica de una función es R es función(argumento, argumento). Es decir, el nombre de la función, seguido de un paréntesis de apertura, los argumentos que pasamos a la función separados por comas y un paréntesis de cierre.
Función
Desde el punto de vista de la ejecución, una función es un pequeño programa dentro de un programa. Desde el punto de vista del código es una conjunto de instrucciones empaquetadas a las que podemos llamar por un nombre. Las funciones se crean a partir de funciones primitivas: encadenando funciones muy simples creamos unas más complejas. Piense en las funciones como verbos: llamamos a una función para que “haga” algo sobre algunos datos. Una función tiene un input y un output. La expresión sum(1,1) llama a la función sum() –sumar– le da por input 1 y 1 y produce como output 2. R tiene características de lenguaje de programación funcional, por lo que las funciones tienen algunos atributos curiosos y muy útiles que serán atendidos extensamente en un capítulo dedicado a las funciones.
Objeto
Un objeto puede ser una variable, estructura de datos, función o método al que un programa refiere por un identificador interno, no visible para el usuario a menos que le haya asignado un nombre. R es un lenguaje orientado a objetos, por lo que todo lo que ocurre en el entorno de ejecución refiere a un objeto, visible para el usuario o no. Todos los objetos de R pertenecen a un tipo (type) y a una clase (class). El tipo y clase delimitan lo que podemos –y lo que no podemos– hacer con un objeto. Por ejemplo, para el el valor 1 la clase es numérico y el tipo double (doble precisión o número pseudo-infinitos). Por lo tanto podemos hacer operaciones matemáticas sobre ese objeto. El objeto "Martín" es del tipo y clase carácter y no admite operaciones matemáticas.
Comando
Un comando es una instrucción que damos a un programa. En R no existan los comandos, sólo las funciones. Incluso para cerrar una sesión de R no hay un comando, utilizamos la función q().