ASF+SDF Meta-Environment
Este artigo ou secção contém uma lista de referências no fim do texto, mas as suas fontes não são claras porque não são citadas no corpo do artigo, o que compromete a confiabilidade das informações. (Agosto de 2016) |
O ASF+SDF Meta-Environment é uma IDE de código aberto para geração de ferramentas a partir da definição formal de uma linguagem. Este ambiente é baseado na linguagem de reescrita de termos ASF+SDF, onde esta é uma extensão ao formalismo SDF para definição de gramáticas livres de contexto. A ferramenta é utilizada principalmente para geração de compiladores e análise e transformação de programas. O acrônimo ASF+SDF vem da abreviação dos termos Algebraic Specification Formalism e Syntax Definition Formalism dados na língua inglesa.
Tela principal do ASF+SDF Meta-Environment 2.0.1 | |
Desenvolvedor | SEN1 [1] um grupo no CWI [2] |
Versão estável | 2.0.3 (11 de Novembro de 2008) |
Sistema operacional | Linux, Unix e Mac OS X |
Gênero(s) | Sistema de transformação |
Licença | BSD, LGPL |
Página oficial | http://www.meta-environment.org/ |
Visão Geral
editarO ASF+SDF Meta-Environment é uma ferramenta de código aberto para a geração de uma série de outras ferramentas voltadas para tratamento de programas fonte descritos em uma determinada linguagem. Estas linguagens devem ser definidas através dos formalismos adotados pelo Meta-Environment, que são o ASF e o SDF.
O Meta-Environment pode ser utilizado com diferentes propósitos, incluindo:
- Análise sintática de linguagens de programação. Estas podendo ser novas linguagens ou mesmo linguagens já definidas como por exemplo Java e C.
- Análise do código fonte.
- Transformação do código fonte.
- Geração de código.
- Definição e implementação de linguagens específicas de domínio.
- Geração e prototipação rápida de ambientes integrados de desenvolvimento (IDE) para linguagens de programação e linguagens específicas de domínio.
- Geração de documentação a partir do código fonte.
- Compilação de linguagens específicas de domínio.
- Descrição formal da sintaxe e semântica de linguagens de programação.
A arquitetura do Meta-Environment é composta dos seguintes grupos de componentes:
- núcleo: Componentes que prove funcionalidades básicas como por exemplo a interface com usuário e edição.
- SDF: Todos os componentes relacionados com a definição e análise da sintaxe.
- ASF: Todos os componentes relacionados com a linguagem ASF e o sistema de reescrita de termos.
A comunicação entre os componentes de cada grupo é feita através de um componente chamado ToolBus. Onde este coordena a comunicação entre os componentes pela definição de um script toolbus, também conhecido como Tscript. A linguagem do Tscript é uma linguagem concorrente que permite a definição de processos paralelos, a comunicação entre estes processos e a interação entre os processos e ferramentas existentes no Meta-Environment.
Referências
- ↑ Seção baseada em (Klint, 2008)
- Bergstra, J. A.; Heering, J.; Klint, P (1989). Algebraic Specification. [S.l.]: ACM Press/Addison-Wesley. ISBN 0-201-41635-2
- Brand, Mark van den; Klint, Paul; Vinju, Jurgen (3 de setembro de 2008). «The Language Specification Formalism ASF+SDF». Consultado em 23 de Outubro de 2008
- Klint, Paul; Vinju, Jurgen (12 de dezembro de 2007). «Writing Language Definitions in ASF+SDF». Consultado em 23 de outubro de 2008
- «The Meta-Environment». Consultado em 25 de Outubro de 2008
- Klint, Paul; Vinju, Jurgen (14 de maio de 2008). «The Architecture of The Meta-Environment». Consultado em 25 de Outubro de 2008