DeepAI AI Chat
Log In Sign Up

Creating Interactive Visualizations of TopHat Programs

by   Mark Gerarts, et al.
Virginia Polytechnic Institute and State University
Open Universiteit

Many companies and institutions have automated their business process in workflow management software. The novel programming paradigm Task-Oriented Programming (TOP) provides an abstraction for such software. The largest framework based on TOP, iTasks, has been used to develop real-world software. Workflow software often includes critical systems. In such cases it is important to reason over the software to ascertain its correctness. The lack of a formal iTasks semantics makes it unsuitable for formal reasoning. To this end TopHat has been developed as a TOP language with a formal semantics. However, TopHat lacks a graphical user interface (GUI), making it harder to develop practical TopHat systems. In this paper we present TopHat UI. By combining an existing server framework and user interface framework, we have developed a fully functioning proof of concept implementation in Haskell, on top of TopHat's semantics. We show that implementing a TOP framework is possible using a different host language than iTasks uses. None of TopHat's formal properties have been compromised, since the UI framework is completely separate from TopHat. We run several example programs and evaluate their generated GUI. Having such a system improves the quality and verifiability of TOP software in general.


page 6

page 7

page 8


K-ST: A Formal Executable Semantics of PLC Structured Text Language

Programmable Logic Controllers (PLCs) are responsible for automating pro...

Proofs and Programs about Open Terms

Formal deductive systems are very common in computer science. They are u...

A Formal CHERI-C Semantics for Verification

CHERI-C extends the C programming language by adding hardware capabiliti...

Interactive Duplicate Search in Software Documentation

Various software features such as classes, methods, requirements, and te...

ReLo: a Dynamic Logic to Reason About Reo Circuits

Critical systems require high reliability and are present in many domain...

Verified reductions for optimization

Numerical and symbolic methods for optimization are used extensively in ...

CleanQ: a lightweight, uniform, formally specified interface for intra-machine data transfer

We present CleanQ, a high-performance operating-system interface for des...