Our next meeting will be held on Thursday, October 22nd.
As you all no doubt saw, SAPLING 09 was recently held here in Sydney and
I managed to attend and more importantly convinced two of the presenters
to come along and present at FP-Syd.
Our two presenters will be:
Roman Leshchinskiy on "Loop fusion in Haskell"
----------------------------------------------
Functional programming languages encourage programmers to use collective
operations instead of explicit loops. This is wonderful as code
written in this style contains less bugs, is easier to understand and
easier to maintain. The only drawback is the burden it places on the
compiler.
Unless optimised aggressively, such programs are quite inefficient since
they create unnecessary temporaries and execute many small loops instead
of a few big ones. The performance penalty is even worse in the case of
parallel collective operations.
The standard solution to these problems is automatic loop fusion which
allows the compiler to generate efficient code for pipelines of
collective operations. In this talk, I will present two complementary
approaches to loop fusion developed as part of the Data Parallel Haskell
project: stream fusion for sequential loops and fusion based on distributed
types for parallel ones. Together, they form the backbone of our DPH backend
and are, to a large extent, responsible for its efficiency.
A/Prof Barry Jay on "Pattern Calculus"
--------------------------------------
Pattern calculus is a new foundation for computation based on pattern
matching. This generalisation from substitution to matching combines
the pure functionality of lambda-calculus with the ability to describe
arbitrary data structures by patterns. In turn, this leads to new
forms of program re-use, or polymorphism, such as *path polymorphism*,
which may traverse all paths through a structure, and *pattern
polymorphism*, in which patterns may be computed dynamically.
The talk will provide an overview of the speaker's recent monograph on
pattern calculus
\url{http://www.springer.com/computer/foundations/book/978-3-540-89184-0}
covering pure pattern calculus, typed pattern calculus, and its
implementation in the bondi programing language
\url{http://bondi.it.uts.edu.au/} here in Sydney.
Bio: Barry Jay is an Associate Professor at the School of Software,
University of Technology, Sydney. After a BSc (Hons) in Pure
Mathematics at University of Sydney, and a PhD in category theory from
McGill University, he took a senior fellowship at the Laboratory for
the Foundations of Computer Science in the University of Edinburgh,
before returning to Sydney. His research focuses on programming
language design, with an emphasis on the treatment of data structures
in a functional setting.
As usual there is an RSVP form here:
http://spreadsheets.google.com/viewform?formkey=cjlDYkJOSkF0RXNoVkwzUDBfUG1Ia2c6MA..
The meeting is at the Google offices at 48 Pirrama Road, Pyrmont, in a
building called Workplace6 (or WP6).
Google will admit people from 5:45, as usual. The building *should* let you
in, in which case come straight up to level 5. If it doesn't, call Shane
on 0405 491 744 or James on 0401 219 398 and they'll pop downstairs.
*** Please try to arrive before 6:30pm so Shane and James do not
*** have to miss part of the first talk while letting you in.
Cheers,
Erik
--
----------------------------------------------------------------------
Erik de Castro Lopo
http://www.mega-nerd.com/
> As usual there is an RSVP form here:
>
> http://spreadsheets.google.com/viewform?formkey=cjlDYkJOSkF0RXNoVkwzUDBfUG1Ia2c6MA..
Just a reminder that everyone should RSVP to the form above with either a
"Yes" (i will be attending) or a "No" (I won't) so that the Google people
can get name tags printed and get the catering right.
For anyone who is still undecided all I can say is that this meeting is
shaping up to be a very special one. Its also the second last meeting for
the year.