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:30 | Welcome |
09:30-10:50 | Session 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:05 | Break |
11:05-12:00 | Keynote
Philip Wadler, University of Edinburgh, A practical theory of language-integrated query slides
|
12:00-13:00 | Lunch
|
13:00-14:20 | Session 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:35 | Break
|
14:35-15:55 | Session 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:10 | Break
|
16:10-17:30 | Session 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:00 | Wrap up, followed by drinks and nibbles.
|