We present a new approach to the old problem of adding side effects to purely functional languages. Our idea is to extend the language with "witnesses," which is based o...
Statically typed aspect-oriented programming languages restrict application of around advice only to the join points that have conforming types. Though the restriction guarantees ...
We present a probabilistic program-transformation algorithm to render a given program tamper-resistant. In addition, we suggest a model to estimate the required effort for an atta...
Nenad Dedic, Mariusz H. Jakubowski, Ramarathnam Ve...
Verifying concurrent programs is challenging since the number of thread interleavings that need to be explored can be huge even for moderate programs. We present a cartesian semant...
Guy Gueta, Cormac Flanagan, Eran Yahav, Mooly Sagi...
Understanding the execution of an object-oriented program can be a challenge for a student starting a CS1 course. We believe that a type of diagram that we call a memory diagram c...