Talks
Talks
This an incomplete list of talks (and slides) that I have given, some with
added notes. They are organised by topic rather than chronology.
Communicating Haskell Processes (CHP) library
Conjunction
- How to Make
Your Process Invisible, a.k.a. The Dialing Philosophers (CPA 2008, September 2008,
with notes). A talk that made more sense if you were there,
explaining how conjunction can be used to seamlessly interject a
process between two others without breaking the synchronisation.
- Conjunctive Choice
(CoSMoS project meeting, October 2008). A short talk using an
example of movement rules for "sticky" platelets (taken literally in
the slides) to show how conjunction can be used.
- Implementing Choice
Using Transactional Memory (MM-NET Workshop, October 2008, with
notes). A talk using an example of agent movement to explain
disjunctive and conjunctive choice, and then going on to give an
overview of how this is implemented using Transactional
Memory.
- Conjoined Events (AMP 2010, June
2010, with notes). Roughly similar to the previous talks, bundling
all the content together to try to give a good overview of conjunction.
Tock
- Tock: Every compilation
begins with a single pass (Research Group, November 2007); the first of
two talks on the Tock compiler given at the end of 2007 with Adam Sampson.
This one focuses on nanopass compilation in Haskell, our use of generics in
Tock and work on implementing extensible pattern-matching using generics. We
have now solved the issue mentioned with generics and parametric types on
slide 15.
- Tock: A nanopass
presentation (Research Group, December 2007); the second of the two talks
on the Tock compiler given at the end of 2007 with Adam Sampson. Discusses
compiling occam, our Parsec-based parser, work using generics to navigate and
modify tree structures, our backend code-generation using function tables (and
how we test them) and some reflections on using Haskell.
- Tock: Beginning With Omega
(Research Group, January 2008, with notes). A presentation I gave to
explain the Omega Test, a technique for solving linear equations (used here to
check for array index disjointness in occam). The Omega Test is not my work,
but hopefully these slides does a decent job of explaining it, and also
discusses how to transform program code into equations to feed into the Omega
Test.
Other
This page copyright Neil Brown, 2006-2009.