Many large software systems originate from untyped scripting language code. While good for initial development, the lack of static type annotations can impact code-quality and per...
Although quality is not easy to evaluate since it is a complex concept compound by different aspects, several properties that make a good object-oriented design have been recogniz...
In setting up a formal system to specify a grammar formalism, the conventional (mathematical) wisdom is to start with primitives (basic primitive structures) as simple as possible...
Most temporal logics, particularly interval temporal logics, are not expressive enough to capture meanings of natural language constructions, and they are not convenient to represe...
Supporting read-only and side effect free execution has been the focus of a large body of work in the area of statically typed programming languages. Read-onlyness in dynamically t...