[CSE Seminar and YOW! Night] REMINDER: Presentations on functional programming by Professors John Hughes & Simon Peyton Jones, 7 & 8 December 2011

7 views
Skip to first unread message

Manuel M T Chakravarty

unread,
Dec 5, 2011, 10:21:11 PM12/5/11
to CSE List, PLS List, ertos.s...@cse.unsw.edu.au, fp-...@googlegroups.com, sci.S...@mq.edu.au
== These talks are THIS week! ==

As part of YOW! 2011 (the Australian Software Developer Conference),
two highly renowned researchers in functional programming will be in
Sydney and give presentations.


** 7 December (TOMORROW), 5.15PM @ Four Seasons **

John Hughes and Simon Peyton Jones will speak at the
YOW! Night, 7 December, 5.15PM:

http://yownightsydneydec11.eventbrite.com/

[There is an entrance fee, but it is discounted to
$5 for university students and staff.]


** 8 December (DAY AFTER TOMORROW), 10AM @ CSE, UNSW, Level 1 Seminar room **

John and Simon will both give another, more academically
oriented presentation as a CSE Seminar @ UNSW, 8 December, 10AM,
Level 1 Seminar room.

The details for the CSE seminar are appended.


Simon and John are charismatic speakers and you don't want to miss these talks!

Manuel


-=- CSE Seminar, 8 December 2011, 10AM -=-

We will have two talks with a short break in-between.

Location: CSE Seminar room (K17_113), Level 1, CSE Building (K17)
<http://www.cse.unsw.edu.au/contact/map.html>

== Talk #1 ==

Title: Accelerating race condition detection through procrastination
Speaker: John Hughes (Chalmers University & Quviq AB)

Abstract

Race conditions are notoriously frustrating to find, and good tools
can help. The main difficulty is reliably provoking the race
condition. In previous work we presented a randomising
scheduler for Erlang that helps with this task.

In a language without pervasive shared mutable state, such as Erlang,
performing scheduling decisions at random uncovers race conditions
surprisingly well. However, it is not always enough. We describe a
technique, procrastination, that aims to provoke race
conditions more often than by random scheduling alone. It works by
running the program and looking for pairs of events that might
interfere, such as two message sends to the same process. Having
found such a pair of events, we re-run the program but try to provoke
a race condition by reversing the order of the two events.

We apply our technique to a piece of industrial Erlang code. Compared
to random scheduling alone, procrastination allows us to find minimal
failing test cases more reliably and more quickly.

John Hughes

John Hughes has worked with functional programming since 1980,
was one of the designers of Haskell, and has been heavily involved
with Erlang in recent years. In 2000 he and Koen Claessen published
the first version of QuickCheck, a software testing tool which recently
won the ACM SIGPLAN award for Most Influential Paper from ICFP
in that year. He has focussed more and more on testing since then,
co-founding Quviq AB in 2006 to market a commercial version of
QuickCheck. He is currently both a Professor at Chalmers University,
Sweden, and CEO of Quviq AB.


== Talk #2 ==

Title: Termination Combinators Forever
Speaker: Simon Peyton Jones (Microsoft Research)

Abstract

Nobody wants their compiler, or theorem prover, to go into an infinite loop,
but making sure that never happens usually means applying some over-conservative
heuristic like “never unfold a recursive function”. Approaches like that don’t
work at all when you are doing partial evaluation or supercompilation, which
fundamentally depend on inlining recursive functions.

What we need is an online termination test. That is easier said than done; it
is easy to make a mistake. In this talk I’ll describe a new combinator library
that lets you build complex termination tests by combining simpler ones, while
guaranteeing that that the result really is a termination test. The library
elegantly encapsulates some clever mathematical ideas on well-quasi orders the
cunning details are hidden from the customer.

I’ll use Haskell as the language of exposition, but you don’t need to be a
Haskell guru to understand it, and the library would work equally well in other
languages.

Simon Peyton Jones

Simon Peyton Jones, MA, MBCS, CEng, graduated from Trinity College Cambridge in
1980. After two years in industry, he spent seven years as a lecturer at
University College London, and nine years as a professor at Glasgow University,
before moving to Microsoft Research (Cambridge) in 1998.

His main research interest is in functional programming languages, their
implementation, and their application. He has led a succession of research
projects focused around the design and implementation of production-quality
functional-language systems for both uniprocessors and parallel machines. He was
a key contributor to the design of the now-standard functional language Haskell,
and is the lead designer of the widely-used Glasgow Haskell Compiler (GHC). He
has written two textbooks about the implementation of functional languages.

More generally, he is interested in language design, rich type systems, software
component architectures, compiler technology, code generation, runtime systems,
virtual machines, and garbage collection. He is particularly motivated by direct
use of principled theory to practical language design and implementation --
that's one reason he loves functional programming so much.

sjgprs

unread,
Dec 7, 2011, 4:52:58 AM12/7/11
to fp-syd
i hope that you give both of these chaps a very warm welcome. If
Simon is anything like John, who I have had the pleasure of meeting
several times, he will be down to earth and very approachable. I look
forward to reading some positive reports on what went on - minus the
dancing :)

On Dec 6, 3:21 am, Manuel M T Chakravarty <c...@cse.unsw.edu.au>
wrote:

Reply all
Reply to author
Forward
0 new messages