Tue 18 Jan 2022 13:55 - 14:20 at Directors - Functional and Logic Programming Chair(s): Alan Jeffrey

SQL database systems support user-defined functions (UDFs), but they hardly encourage programming with these functions. Quite the contrary: the systems’ focus on plan-based query evaluation penalizes every function call at runtime, rendering programming with UDFs—especially if these are recursive—largely impractical. We propose to take UDFs for what they are (namely functions) and subject UDFs to a pipeline of function compilation techniques well-established by the FP community (CPS conversion, defunctionalization, and translation into trampolined style, in particular). The result is a non-invasive SQL-level compiler for recursive UDFs that naturally supports memoization and emits iterative CTEs which contemporary SQL engines evaluate efficiently. Functions may not be first class in SQL, but functional programming close to the data can still be efficient.

Tue 18 Jan

Displayed time zone: Eastern Time (US & Canada) change

13:30 - 14:45
Functional and Logic ProgrammingPADL at Directors
Chair(s): Alan Jeffrey Roblox
13:30
25m
Talk
Graph-based Interpretation of Normal Logic ProgramsRemote
PADL
Fang Li The University of Texas at Dallas, Elmer Salazar The University of Texas at Dallas, Gopal Gupta The University of Texas at Dallas
13:55
25m
Talk
Functional Programming on Top of SQL EnginesRemote
PADL
Tobias Burghardt University of Tübingen, Denis Hirn University of Tübingen, Torsten Grust University of Tübingen
14:20
25m
Talk
CircuitFlow: : A Domain Specific Language for Dataflow ProgrammingIn-Person
PADL
Riley Evans University of Bristol, Samantha Frohlich University of Bristol, Meng Wang University of Bristol