The growing design-productivity gap has made designers shift toward using high-level languages like C, C++ and Java to do system-level design. High-Level Synthesis (HLS) is the pro...
-generic programming increases program abstraction and reuse by making functions operate uniformly across different types. Many approaches to generic programming have been proposed...
Specifications of Object-Oriented programs conventionally employ Boolean expressions of the programming language for assertions. Programming errors can be discovered by checking at...
Stephan van Staden, Cristiano Calcagno, Bertrand M...
programming languages community is vigorously pursuing ways to incorporate F!-style indexed types into programming languages. This paper advocates Concoqtion, a practical approach ...
Emir Pasalic, Jeremy G. Siek, Seth Fogarty, Walid ...
A wide range of computer programs, including compilers and theorem provers, manipulate data structures that involve names and binding. However, the design of programming idioms wh...