Sintaxis: Es el conjunto de reglas que gobiernan la construccin o formacin de
sentencias(instrucciones) validas en un lenguaje. Proporcionar las reglas de sintaxis para un
lenguaje de programacin significa decir como se escriben los enunciados y otras construcciones de lenguaje. Solamente las sentencias correctamente sintcticas pueden ser traducidas por un lenguaje de programacin, y los programas que contienen errores de sintaxis son rechazados por la computadora.
Semntica:
Comprobabilidad: Los lenguajes deben tener un compilador que traduzca de manera correcta el cdigo fuente a lenguaje maquina y que la maquina ejecute el programa de manera que se obtenga el resultado deseado.
Confiabilidad: El software es confiable cuando se comporta de acuerdo a lo planeado, entrega los resultados esperados, maneja los errores en tiempo de ejecucin, y si existen errores deben ser fciles de corregir.
Cdigo objeto eficiente: Una vez compilado el programa y creado el cdigo objeto, no debe hacerse ninguna referencia al cdigo fuente original, y se debe procurar la gestin correcta de memoria. En pocas palabras, debe generar un cdigo objeto eficiente.
Ortogonalidad.- Indica que los componentes del lenguaje deben ser independientes entre si y comportase en la misma manera en cualquier circunstancia. En otras palabras, nos debe permitir combinar todos los componentes segn convenga (pasar una funcin a otra funcin, etc.).
Generalidad.- Se refiere a la existencia de solo las caractersticas necesarias del lenguaje, con la libertad de generar estructuras compuestas sin lmite. Esta relacionado con la Ortogonalidad.
Consistencia y notaciones comunes.- Debido a que los problemas por lo regular son concebidos en lenguaje matemtico, deben tener parecido con este, como entender que -se usa para resta, + para suma, etc.
Uniformidad.- Relacionada con la consistencia, indica que nociones similares deben verse y comportarse de la misma manera. Subconjuntos.- Un lenguaje puede tener subconjuntos de si mismo, con lo que permite que pueda ser mejorado con cada versin que sale y en donde el subconjunto anterior debe quedar incluido.
Extensibilidad.- El lenguaje debe tener un ncleo base, a partir del cual se empieza a extender, un ncleo invariable con las nuevas versiones y establecido que se ve mejorado con las extensiones.
Transportabilidad.- El lenguaje permite que los programas puedan ser compilados y ejecutados en otros equipos o sistemas sin tener que rescribir el cdigo fuente.
Traduccin rpida:
Anlisis lxico: durante esta etapa se verifica que las palabras utilizadas en el programa fuente pertenezcan al lenguaje.
Anlisis sintactico: esta parte de la compilacin examina cada instruccin del programa fuente para que las instrucciones estn organizadas correctamente
Anlisis semntico:
LOS INTERPRETES. Traduce a lenguaje mquina, cada lnea del programa fuente y la ejecuta de inmediato. Traducen en Lenguaje de Alto Nivel a Lenguaje Maquina, se encargan de traducir cada instruccin, una por una (o cada lnea de instrucciones) contenida en un programa escrito en cualquier lenguaje de alto nivel a instrucciones en cdigo binario, comprensible por las computadoras. Los interpretes no producen cdigo objeto, por ello la ejecucin de un programa requiere forzosamente del cdigo fuente. Adems, los programas en lenguaje interpretado se ejecutan con mas lentitud que aquellos en lenguaje compilado