Ideograph: A Language for Expressing and Manipulating Structured Data

Stephen Mell
Osbert Bastani
Steve Zdancewic

We introduce Ideograph, a language for expressing and manipulating structured data. Its types describe kinds of structures, such as natural numbers, lists, multisets, binary trees, syntax trees with variable binding, directed multigraphs, and relational databases. Fully normalized terms of a type correspond exactly to members of the structure, analogous to a Church-encoding. Moreover, definable operations over these structures are guaranteed to respect the structures' equivalences. In this paper, we give the syntax and semantics of the non-polymorphic subset of Ideograph, and we demonstrate how it can represent and manipulate several interesting structures.

In Clemens Grabmayer: Proceedings Twelfth International Workshop on Computing with Terms and Graphs (TERMGRAPH 2022), Technion, Haifa, Israel, 1st August 2022, Electronic Proceedings in Theoretical Computer Science 377, pp. 65–84.
Published: 1st April 2023.

ArXived at: https://dx.doi.org/10.4204/EPTCS.377.4 bibtex PDF
References in reconstructed bibtex, XML and HTML format (approximated).
Comments and questions to: eptcs@eptcs.org
For website issues: webmaster@eptcs.org