|
Run-Time Assertion Checking with énfasisKeywords: program assertion, formal grammars, local variable crosscutting, local variable pointcut, aspect-oriented programming. Abstract: local variables are fundamental to describe and implement computer algorithms and to specify some of their properties such as correctness, termination and performance. in this paper, we address the run-time assertion checking problem involving local variables in java programs using énfasis. énfasis is a novel aspect-oriented programming (aop) language that introduces a join point model for crosscutting on local variables and path expressions to select sets of join points. the contribution of this work consists on showing that run-time assertion checking is more effective in énfasis by its greater expressive power than in other approaches such as aspectj and the interface specification language jml. the greater expressiveness of énfasis assertions arises from the finer granularity of crosscutting, defined at the expression and statement level in contrast to the coarser granularity defined at the method invocation level of aspectj. énfasis approach characterizes not only by its non-invasiveness at the source code level, modularity, uniformity and generality are also improved in handling orthogonal crosscutting concerns.
|