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

03/08/2020
by   Simon Fowler, et al.
0

Curated databases have become important sources of information across scientific disciplines, and due to the manual work of experts, often become important reference works. Features such as provenance tracking, archiving, and data citation are widely regarded as important features for curated databases, but implementing such features is challenging, and small database projects often lack the resources to do so. A scientific database application is not just the database itself, but also an ecosystem of web applications to display the data, and applications supporting data curation. Supporting advanced curation features requires changing all of these components, and there is currently no way to provide such capabilities in a reusable way. Cross-tier programming languages have been proposed to simplify the creation of web applications, where developers write an application in a single, uniform language. Consequently, database queries and updates can be written in the same language as the rest of the program, and at least in principle, it should be possible to provide curation features reusably via program transformations. As a first step, it is important to establish that realistic curated databases can be implemented in a cross-tier programming language. In this paper, we describe such a case study: reimplementing the web frontend of a real-world scientific database, the IUPHAR/BPS Guide to Pharmacology (GtoPdb), in the Links programming language. We show how features such as language-integrated query simplify the development process, and rule out common errors. We show that the Links implementation performs fewer database queries, while the time needed to handle the queries is comparable to the Java version. While there is some overhead to using Links because of its comparative immaturity compared to Java, the Links version is viable as a proof-of-concept case study.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
06/01/2021

Curating Covid-19 data in Links

Curated scientific databases play an important role in the scientific en...
research
05/06/2019

TryLinks: An interactive tutorial system for a cross-tier Web programming language

Links is a web programming language under development in Edinburgh aimed...
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
09/14/2022

Coherence of linear and surface data: Methodological proposal from the example of road data

The real world and its geographic objects are modeled and represented in...
research
03/28/2015

Implementing an intelligent version of the classical sliding-puzzle game for unix terminals using Golang's concurrency primitives

An intelligent version of the sliding-puzzle game is developed using the...
research
05/06/2019

Language-integrated provenance by trace analysis

Language-integrated provenance builds on language-integrated query techn...

Please sign up or login with your details

Forgot password? Click here to reset