First-class C Contexts in Cinquecento
Vic Zandy Dan Ridge · 2008
Cinquecento is a new functional language designed for debugging and other analysis of software systems comprised of concurrently running C programs. The key innovations of Cinquecento are a first-class abstraction that can represent a C program in execution, a C-based syntactic interface to this abstraction, and language mechanisms for tailoring new instances of the abstraction to unanticipated and heterogeneous environments. Cinquecento embeds these innovations in a conventional Scheme-like functional language. We present the design of the language and demonstrate its usage in the context of program debugging.