Language-integrated provenance by trace analysis

05/06/2019
by   Stefan Fehrenbach, et al.
0

Language-integrated provenance builds on language-integrated query techniques to make provenance information explaining query results readily available to programmers. In previous work we have explored language-integrated approaches to provenance in Links and Haskell. However, implementing a new form of provenance in a language-integrated way is still a major challenge. We propose a self-tracing transformation and trace analysis features that, together with existing techniques for type-directed generic programming, make it possible to define different forms of provenance as user code. We present our design as an extension to a core language for Links called LinksT, give examples showing its capabilities, and outline its metatheory and key correctness properties.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
03/27/2018

Language-integrated provenance in Haskell

Scientific progress increasingly depends on data management, particularl...
research
10/21/2022

Language-Integrated Query for Temporal Data (Extended version)

Modern applications often manage time-varying data. Despite decades of r...
research
11/26/2020

Strongly-Normalizing Higher-Order Relational Queries

Language-integrated query is a powerful programming construct allowing d...
research
06/01/2021

Curating Covid-19 data in Links

Curated scientific databases play an important role in the scientific en...
research
04/06/2018

Semantically Enhanced Software Traceability Using Deep Learning Techniques

In most safety-critical domains the need for traceability is prescribed ...
research
03/08/2020

Cross-tier web programming for curated databases: A case study

Curated databases have become important sources of information across sc...
research
04/09/2018

Second-Guessing in Tracing Tasks Considered Harmful?

[Context and motivation] Trace matrices are lynch pins for the developme...

Please sign up or login with your details

Forgot password? Click here to reset