A domain-specific aspect language for transforming MATLAB programs

Aspect-oriented programming provides powerful ways to augment programs with information out of the scope of the base language while avoiding harming code readability and thus portability. MATLAB is a popular modeling/programming language that will strongly benefit of aspect-oriented programming feat...

ver descrição completa

Detalhes bibliográficos
Autor principal: Monteiro, Miguel Pessoa (author)
Outros Autores: Saraiva, João Alexandre (author), Fernandes, João M. (author), Cardoso, João M. P. (author), Diniz, Pedro C. (author)
Formato: conferencePaper
Idioma:eng
Publicado em: 2010
Assuntos:
Texto completo:http://hdl.handle.net/1822/37761
País:Portugal
Oai:oai:repositorium.sdum.uminho.pt:1822/37761
Descrição
Resumo:Aspect-oriented programming provides powerful ways to augment programs with information out of the scope of the base language while avoiding harming code readability and thus portability. MATLAB is a popular modeling/programming language that will strongly benefit of aspect-oriented programming features. For instance, MATLAB programmers could use aspects to provide information such as restrictions on allowed data types and/or values, monitoring specific aspects of the execution such as the effective dataset sizes or if a given variable ever assumes a specific value, without “polluting” the code with “check code”. This paper describes the main concepts of a domain-specific aspect language (DSAL) for specifying transformations of MATLAB programs in view of supporting optimizations by facilitating the experimentation of alternative implementations. This DSAL specifies aspect modules structured in three sections: intersections equivalent to AspectJ poincuts, actions equivalent to AspectJ advice, and conditions that control triggering of actions. Support for aspect composition strategies and aspect parameterization of tokens from the base program are also supported. We believe the described features complement and enhance MATLAB programming in substantial and valuable ways.