SAPLING 2013

09:30-17:30, December 16, 2013

Building E6A, Room 102, Macquarie University

Keynote

A practical theory of language-integrated query

Speaker: Professor Philip Wadler, University of Edinburgh
James Cheney, Sam Lindley, Philip Wadler (University of Edinburgh)

How best to blend a domain-specific language into a host language? For the domain of databases, the old question of how to achieve language integrated query is receiving renewed attention, in part because of its support through Microsoft's LINQ framework. We present a practical theory of language-integrated query based on quotation and normalisation of quoted terms. Higher-order features prove useful even for constructing first-order queries. We prove a theorem characterising when a host query is guaranteed to generate a single SQL query, and we present experimental results confirming our technique works, even in situations where Microsoft's LINQ framework either fails to produce an SQL query or, in one case, produces an avalanche of SQL queries. Our ideas are implemented in F#, and the talk briefly considers how they might apply to other languages such as Scala and Haskell.

Program

09:30Welcome
09:30-10:50Session 1, Chair: Ben Lippmeier
Timothy Jones, Victoria University of Wellington, Grace: An Introductory Object-Oriented Language abstract slides
Bernhard Scholz, Nicholas Allen and Padmanabhan Krishnan, Oracle Labs, Finding Security Bugs in Java Programs Using Datalog abstract slides
Abdallah Saffidine, University of New South Wales, General Game Playing and the Game Description Language abstract slides
Richard Garner, Macquarie University, Homotopy type theory abstract slides
10:50-11:05Break
11:05-12:00Keynote
Philip Wadler, University of Edinburgh, A practical theory of language-integrated query slides
12:00-13:00Lunch
13:00-14:20Session 2, Chair: Manuel Chakravarty
David J. Pearce and Lindsay Groves, Victoria University of Wellington, Whiley: a Platform for Research in Software Verification abstract slides
Gabi Keller and Liam O'Connor, University of New South Wales, File System Verification abstract slides
Tiejun Gao, Australian National University, Using Managed Runtime Systems to Tolerate Holes in Wearable Memories abstract slides
Kunshan Wang, Yi Lin, and Steve Blackburn, Australian National University, Sharpen Your Axe – A Micro Virtual Machine Which You Can Depend On abstract slides
14:20-14:35Break
14:35-15:55Session 3, Chair: Steve Blackburn
Matthew Roberts, Macquarie University, Type Inference for the Spine View of Data abstract slides
Barry Jay and Jose Vergara, University of Technology, Sydney, Typed Boa Calculus abstract slides
Jose Vergara and Barry Jay, University of Technology, Sydney, Implementing Intensional Computation abstract slides
Fritz Henglein and Ralf Hinze, University of Copenhagen, Sorting and Searching by Distribution: From Generic Discrimination to Generic Tries abstract slides
15:55-16:10Break
16:10-17:30Session 4, Chair: Barry Jay
Ben Lippmeier, University of New South Wales, Capabilities, Coeffects and Lax Truth abstract slides
Rob Everest, University of New South Wales, Embedding foreign code abstract slides
Amos Robinson, University of New South Wales, Rate inference for flow fusion abstract slides
Kieran Gorman, Timothy Jones and Lindsay Groves, Victoria University of Wellington, Melchior: Web Programming in Haskell abstract slides
17:00Wrap up, followed by drinks and nibbles.