\section{Aspectos de un Lenguaje} \subsection{Sintaxis} Es una descripción del conjunto de secuencias de símbolos considerados como programas válidos. \subsection{Semántica} Es la descripción del significado de instrucciones y expresiones. Puede ser formal o informal. La semántica formal puede ser axiomática, operacional o denotacional. \subsection{Sistema de Tipos} Se utiliza para prevenir errores en tiempo de ejecución. En general, requiere anotaciones de tipo en el código fuente. Puede ser: \begin{itemize} \item Chequeo de tipos estático: se analiza en tiempo de compilación. \item Chequeo de tipos dinámico: se analiza en tiempo de ejecución. \end{itemize}