English

Ideograph: A Language for Expressing and Manipulating Structured Data

Programming Languages 2023-03-29 v1

Abstract

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.

Keywords

Cite

@article{arxiv.2303.15784,
  title  = {Ideograph: A Language for Expressing and Manipulating Structured Data},
  author = {Stephen Mell and Osbert Bastani and Steve Zdancewic},
  journal= {arXiv preprint arXiv:2303.15784},
  year   = {2023}
}

Comments

In Proceedings TERMGRAPH 2022, arXiv:2303.14219

R2 v1 2026-06-28T09:37:23.842Z