Lenguaje objeto

From Wikipedia, the free encyclopedia

Un lenguaje objeto es un lenguaje que es objeto de estudio en varios campos, incluyendo lógica, lingüística, matemáticas e informática teórica. El lenguaje usado para hablar de un lenguaje objeto se denomina metalenguaje.[1] Un lenguaje objeto puede ser formal o natural. [cita requerida]

Lenguajes formales

La lógica matemática y la lingüística hacen uso de metalenguajes, que son lenguajes que describen la naturaleza de otros lenguajes. En la lógica matemática, el lenguaje objeto es normalmente un lenguaje formal. El lenguaje que un metalenguaje describe es el lenguaje objeto. Se llama de esta forma porque el lenguaje es el objeto en discusión usando el metalenguaje.

Por ejemplo, alguien que dice "En francés, se dice Bonjour para saludar a alguien" usa el español como un metalenguaje para describir el francés

Lenguajes de ordenador

Hay dos formas en las que el término lenguaje objeto puede ser empleado en computación: un lenguaje que es objeto de la especificación formal y un lenguaje que es el objeto, u objetivo, de un compilador o interpretador.

Especificación formal

Los lenguajes de programación son lenguajes objeto del metalenguaje en el que su especificiación está escrita. En informática esto se refiere como el lenguaje de especificación. La notación de Backus-Naur fue uno de los primeros lenguajes de especificación.

Cuando los compiladores están escritos empleando sistemas como lex y Yacc, las reglas que el programador escribe parecen una especificación formal, pero se consideran una implementación en vez. Muchas implementaciones de lenguajes de programación no son estrictamente lo mismo que su especificación, añadiendo características o haciendo decisiones de diseño independientes de la implementación.

Código objeto

En su nivel más básico, los computadores actúan sobre lo que se les da a través de un conjunto limitado de instrucciones que sus CPUs entienden. En los primeros computadores, esto significaba que los programadores llegaban a programar empleando código binario directamente. Como esto requiere práctica y mucha paciencia, los lenguajes de programación posteriores han puesto grandes esfuerzos en simplificar el trabajo del programador. Por ejemplo, un lenguaje de programación de alto nivel permite al programador asignar una valor a una variable sin especificar una dirección de memoria o una instrucción de la CPU.

En este contexto, el lenguaje de programación de alto nivel es el lenguaje fuente, que es traducido mediante un compilador a código objeto que la CPU puede leer directamente. Este código objeto será el lenguaje objeto, y variará dependiendo de qué CPU está recibiendo instrucciones.

El lenguaje objeto en este contexto significa algo como "lo que el programador trata de conseguir". Si los lenguajes fuente y objeto son vistos como lenguajes formales, lo que el compilador hace es interpretar la fuente a lenguaje objetivo.

El lenguaje objeto en este contexto es sinónimo de lenguaje objetivo. El lenguaje objeto de una traducción normalmente es lenguaje máquina, pero puede ser de otro tipo, como lenguaje ensamblador.

Como el lenguaje objeto de compilación es normalmente lenguaje máquina, el término archivo objeto significa un archivo que contiene instrucciones máquina, y a veces el programa traducido se llama simplemente objeto.

El lenguaje objeto no debe confundirse con lenguaje orientado a objetos, que es un tipo de lenguaje de programación que organiza el entorno del programador en objetos que pueden ser usados de modo similar a la forma drag-and-drop.

Expresiones en lenguaje objeto

Fórmulas

Referencias

Related Articles

Wikiwand AI