TSL(ID:1371/tsl001)

Parallel Ada 


Task Sequencing Language.


Language for specifying sequences of tasking events in Ada programs. Implemented as a set of additions to Ada


Related languages
Ada => TSL   Extension of

References:
  • Helmbold, D., and Luckham, D.C. Runtime Detection and Description of Deadlock Errors in Ada Tasking. CSL Technical Report 83-249, Stanford University, November, 1983. Program Analysis and Verification Group Report 22 view details
  • Helmbold, D. and Luckham, D.C. "Debugging Ada Tasking Programs" Technical Report 84-262, Stanford University, July, 1984. Program Analysis and Verification Group Report 25. Also: IEEE Computer Society 1984 Conference on Ada Applications and Environments, October 15-18, St. Paul, Minnesota. view details
  • Helmbold, D.P. and Luckham, D.C. Debugging Ada Tasking Programs. IEEE Software 2(2):47-57, March, 1985. ISSN 0740-7459. view details
  • Helmbold, David; Luckham, David "TSL: task sequencing language" Ada in Use: Proceedings of the Ada International Conference Paris, France 1985 pp255-274 Cambridge University Press, May 1985 view details DOI
  • "Task Sequencing Language for Specifying Distributed Ada Systems", D.C. Luckham et al in PARLE: Parallel Architectures and Langs Europe, LNCS 259, Springer 1987, pp.444-463. view details
  • Rosenblum, D. and D. Luckham "Testing the correctness of tasking supervisors with TSL specifications" pp187-196 view details Abstract: This paper describes the application of behavior specifications to the testing of tasking supervisors, an important component of an implementation of a concurrent programming language. The goal of such testing is to determine whether or not a tasking supervisor correctly implements the semantics of its associated language. We have tested a distributed tasking supervisor for the Ada programming language by monitoring the execution behavior of Ada tasking programs that have been compiled and linked with the supervisor. This behavior is checked for consistency with an event-based formalization of the Ada tasking semantics expressed in the TSL specification language. The TSL Runtime System automatically performs all monitoring and consistency checking at runtime. Our approach improves upon other approaches to testing tasking supervisors, particularly the Ada Compiler Validation Capability (ACVC), and also an approach described by Klarund. In contrast with these other approaches, in our approach (1) we test only the behavior of the tasking supervisor, not the behavior of the test programs; and (2) any Ada tasking program may be employed as test data, because the TSL specifications we construct describe the semantics of Ada language statements, not the semantics of application programs.

    DOI
          in Rosenblum, D. and D. Luckham "Testing the correctness of tasking supervisors with TSL specifications" pp187-196 view details
  • Rosenblum, David S. "Specifying Concurrent Systems with TSL" IEEE Software 8(3) (May 1991) pp52-61 view details Abstract: The Task Sequencing Language (TSL), which lets programmers specify constraints on the behavior of concurrent programs, is described. The constraints, specified by high-level annotations to Ada programs, are monitored at runtime; when a violation is detected, control is returned to the user, along with information about the nature of the violation. It is argued that such a tool is a necessary crutch for human reasoning capabilities when dealing with the complexities of concurrent process interaction. The first large-scale application of TSL, the specification and validation of a distributed tasking supervisor for Ada, is described. External link: Online copy
          in Rosenblum, D. and D. Luckham "Testing the correctness of tasking supervisors with TSL specifications" pp187-196 view details