\documentclass[a4paper]{article} \usepackage{pslatex} \usepackage{a4wide} %\usepackage{isolatin1} %\usepackage{latin1} \usepackage[portuges]{babel} %\usepackage{picins} %\defõ{\~o} %\defÕ{\~O} \begin{document} % $Id: sintaxe-vspl.tex,v 1.3 2012/03/09 08:02:10 spa Exp $ \def\LANG{\textsf{VSPL}} \begin{center} \begin{Large} \textsf{Compiladores -- Ano lectivo 2020/21} \textbf{Linguagem \LANG} \\ \end{Large} \mbox{}\\ \hrulefill{} \begin{center} (Versão de 2021.03.15) \end{center} \end{center} \noindent \hrulefill{} {\Large Especificação} \hrulefill{} \let\tplsec\section \let\tplsubsec\subsection \input{../teoricas/prog-lang.tex} \tplsec{Restrições à Linguagem} Para facilitar a implementação dum compilador para \LANG{}, são impostas algumas restrições à linguagem, que seguem: \begin{enumerate} \item Tipos de dados: s\'o existem os tipos inteiro, booleano e os constructores de tipo array, tuplo e fun\c c\~ao. Em particular desaparecem os tipos classe e string. \item Os literais de func\c c\~ao s\'o podem ocorrer no n\'\i{}vel lexical mais alto dum programa (i.e.~n\~ao h\'a fun\c c\~oes dentro de fun\c c\~oes), e como valores para s\'\i{}mbolos constantes. \item Declara\c c\~ao impl\'\i{}cita: se um nome for declarado implicitamente (por ter uma ocorr\^encia de uso antes duma de defini\c c\~ao), s\^e-lo-h\'a necess\'ariamente no bloco mais interior em que ocorre, independentemente de poder haver uma declara\c c\~ao posterior em blocos exteriores. \end{enumerate} \end{document} % $Log: sintaxe-vspl.tex,v $ % Revision 1.3 2012/03/09 08:02:10 spa % *** empty log message *** % % Revision 1.2 2010/03/26 07:33:40 spa % *** empty log message *** % % Revision 1.1 2009/03/19 00:31:45 spa % Initial revision % % Revision 1.10 2006/10/19 07:13:25 spa % Mods para 2006/07: uniformização com slides. % % Revision 1.9 2006/10/19 06:46:06 spa % *** empty log message *** % % Revision 1.8 2005/04/21 09:07:59 spa % *** empty log message *** % % Revision 1.7 2002/12/11 08:02:33 spa % Ultima versão antes de incluir nos apontamentos. % % Revision 1.6 2002/11/06 14:57:10 spa % *** empty log message *** % % Revision 1.5 2002/10/24 09:32:46 spa % Versão apresentada aos alunos hoje. % % Revision 1.4 2002/10/24 07:58:15 spa % 1ª versão para 2002/03. % % Revision 1.3 2002/10/24 07:25:33 spa % Início da versão TPL-03 % % Revision 1.2 2002/10/24 06:52:10 spa % Versão usada em 2001/02. % % Revision 1.1 2002/03/26 11:35:32 spa % Initial revision % % Revision 1.4 2001/03/25 23:44:03 spa % Correcções de Português. % % Revision 1.3 2001/03/20 11:56:07 spa % Footnote re. TPL evoluir. % % Revision 1.2 2001/03/20 11:16:58 spa % subsection -> subsubsection em dois sítios. % % Revision 1.1 2001/03/20 11:14:38 spa % Initial revision % % Local Variables: % mode: latex % mode: reftex % mode: font-lock % mode: auto-fill % End: