TraceContract is an API (Application Programming Interface) for trace analysis. A trace is a sequence of events, and can, for example, be generated by a running program, instrumented appropriately to generate events. An event can be any data object. An example of a trace is a log file containing events that a programmer has found important to record during a program execution. Trace-Contract takes as input such a trace together with a specification formulated using the API and reports on any violations of the specification, potentially calling code (reactions) to be executed when violations are detected.

The software is developed as an internal DSL (Domain Specific Language) in the Scala programming language. Scala is a relatively new programming language that is specifically convenient for defining such internal DSLs due to a number of language characteristics. This includes Scala’s elegant combination of object-oriented and functional programming, a succinct notation, and an advanced type system. The DSL offers a combination of dataparameterized state machines and temporal logic, which is novel. As an extension of Scala, it is a very expressive and convenient log file analysis framework.

This work was done by Klaus Havelund of Caltech and Howard Barringer of University of Manchester, UK, for NASA’s Jet Propulsion Laboratory. For more information, contact This email address is being protected from spambots. You need JavaScript enabled to view it..

This software is available for commercial licensing. Please contact Daniel Broderick of the California Institute of Technology at This email address is being protected from spambots. You need JavaScript enabled to view it.. NPO-48071

White Papers

Prosthetic Hands Give Patients A New Feel For Life
Sponsored by HP
Looking at Ceramic Carbides in a New Light
Sponsored by Goodfellow
How To Guide for the Most Common Measurements
Sponsored by National Instruments
Performance Characteristics of Digital Frequency Discriminators
Sponsored by Wide Band Systems
A Brief History of Modern Digital Shaker Controllers
Sponsored by Crystal Instruments
Uncooled Infrared Imaging: Higher Performance, Lower Costs
Sponsored by Sofradir EC

White Papers Sponsored By: