Scheme includes a simple yet powerful macro mechanism. Using macros, programmers can easily extend the language with new kinds of expressions and definitions, thus abstracting ove...
In the process of developing an Information System, one passes through stages that include requirements gathering, design specification, and software implementation. The purpose ...
Alexander Borgida, John Mylopoulos, Joachim W. Sch...
Current languages allow a programmer to describe an interface only by enumerating its parts, possibly including other interfaces wholesale. Such languages cannot express relations...
Impact analysis is the process of determining the effect, or impact, of a change to a software system. Dynamic impact analysis uses data obtained from executing a program to perfo...
We propose a small extension of the ERLANG language that allows programmers to specify contracts with type information at the level of individual functions. Such contracts are opt...
Miguel Jimenez, Tobias Lindahl, Konstantinos F. Sa...