Introducing Linear Implication Types to $λ_{GT}$ for Computing With Incomplete Graphs

Fuente: arXiv
Enregistré dans:
Détails bibliographiques
Auteurs principaux: Sano, Jin, Yamamoto, Naoki, Ueda, Kazunori
Format: Preprint
Publié: 2025
Sujets:
Accès en ligne:
Tags: Ajouter un tag
Pas de tags, Soyez le premier à ajouter un tag!
_version_ 1866908771872145408
author Sano, Jin
Yamamoto, Naoki
Ueda, Kazunori
author_facet Sano, Jin
Yamamoto, Naoki
Ueda, Kazunori
contents Designing programming languages that enable intuitive and safe manipulation of data structures is a critical research challenge. Conventional destructive memory operations using pointers are complex and prone to errors. Existing type systems, such as affine types and shape types, address this problem towards safe manipulation of heaps and pointers, but design of high-level declarative languages that allow us to manipulate complex pointer data structures at a higher level of abstraction is largely an open problem. The $λ_{GT}$ language, a purely functional programming language that treats hypergraphs (hereafter referred to as graphs) as primary data structures, addresses some of these challenges. By abstracting data with shared references and cycles as graphs, it enables declarative operations through pattern matching and leverages its type system to guarantee safety of these operations. Nevertheless, the previously proposed type system of $λ_{GT}$ leaves two significant open challenges. First, the type system does not support \emph{incomplete graphs}, that is, graphs in which some elements are missing from the graphs of user-defined types. Second, the type system relies on dynamic type checking during pattern matching. This study addresses these two challenges by incorporating linear implication into the $λ_{GT}$ type system, while introducing new constraints to ensure its soundness.
format Preprint
id arxiv_https___arxiv_org_abs_2510_17429
institution arXiv
publishDate 2025
record_format arxiv
spellingShingle Introducing Linear Implication Types to $λ_{GT}$ for Computing With Incomplete Graphs
Sano, Jin
Yamamoto, Naoki
Ueda, Kazunori
Programming Languages
D.3.1
Designing programming languages that enable intuitive and safe manipulation of data structures is a critical research challenge. Conventional destructive memory operations using pointers are complex and prone to errors. Existing type systems, such as affine types and shape types, address this problem towards safe manipulation of heaps and pointers, but design of high-level declarative languages that allow us to manipulate complex pointer data structures at a higher level of abstraction is largely an open problem. The $λ_{GT}$ language, a purely functional programming language that treats hypergraphs (hereafter referred to as graphs) as primary data structures, addresses some of these challenges. By abstracting data with shared references and cycles as graphs, it enables declarative operations through pattern matching and leverages its type system to guarantee safety of these operations. Nevertheless, the previously proposed type system of $λ_{GT}$ leaves two significant open challenges. First, the type system does not support \emph{incomplete graphs}, that is, graphs in which some elements are missing from the graphs of user-defined types. Second, the type system relies on dynamic type checking during pattern matching. This study addresses these two challenges by incorporating linear implication into the $λ_{GT}$ type system, while introducing new constraints to ensure its soundness.
title Introducing Linear Implication Types to $λ_{GT}$ for Computing With Incomplete Graphs
topic Programming Languages
D.3.1
url https://arxiv.org/abs/2510.17429