NASA Logo

NTRS

NTRS - NASA Technical Reports Server

Back to Results
TraceContractTraceContract 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 data-parameterized state machines and temporal logic, which is novel. As an extension of Scala, it is a very expressive and convenient log file analysis framework.
Document ID
20120013228
Acquisition Source
Jet Propulsion Laboratory
Document Type
Other - NASA Tech Brief
Authors
Kavelund, Klaus
(California Inst. of Tech. Pasadena, CA, United States)
Barringer, Howard
(Manchester Univ. United Kingdom)
Date Acquired
August 26, 2013
Publication Date
August 1, 2012
Publication Information
Publication: NASA Tech Briefs, August 2012
Subject Category
Man/System Technology And Life Support
Report/Patent Number
NPO-48071
Distribution Limits
Public
Copyright
Public Use Permitted.
No Preview Available