syndicate-2017/tonyg-dissertation/index.md

92 lines
3.9 KiB
Markdown
Raw Normal View History

2018-01-17 15:13:08 +00:00
---
title: PhD Dissertation of Tony Garnock-Jones
layout: page
---
# Conversational Concurrency
by **Tony Garnock-Jones**
PhD dissertation, supervised by Matthias Felleisen
Northeastern University, December 2017
<span id="dissertation"></span>The dissertation itself is available in two formats:
- [PDF]({{ site.baseurl
}}/papers/conversational-concurrency-201712310922.pdf), for
printing or offline use. (1.8MB)
- [Single-page HTML](html/), for reading online. (1.7MB)
2018-01-17 15:13:08 +00:00
On this page, you will find a
[recording](#dissertation-defense-talk-recording) of my dissertation
defense talk, the [slides](#dissertation-defense-slides) I used for my
talk, and the [proof scripts](#proofs) accompanying the dissertation.
### Dissertation defense talk recording
I defended my thesis on the 8th of December, 2017. The talk was
recorded. There is a copy on the
[Internet Archive](https://archive.org/details/TonyGarnockJonesDoctoralDissertationDefense8Dec2017)
(embedded below) and another at
[YouTube](https://www.youtube.com/watch?v=w8jgUFWVD5s). (The sound is
*very* quiet on the recording.)
2018-01-17 15:13:08 +00:00
<p class="center"><iframe src="https://archive.org/embed/TonyGarnockJonesDoctoralDissertationDefense8Dec2017" width="640" height="480" frameborder="0" webkitallowfullscreen="true" mozallowfullscreen="true" allowfullscreen></iframe></p>
2018-01-17 15:13:08 +00:00
### Dissertation defense slides
The slides from my defense talk are available
[here](html/presentation.html) (also embedded below). Use the `n` and
`p` keys to move to the next and previous slide, respectively.
<p class="center"><iframe src="html/presentation.html" width="640" height="480"></iframe></p>
### Proofs
The Coq scripts representing the proofs of some of the theorems from
my dissertation will be available here shortly.
<!-- ### Abstract -->
<!-- Concurrent computations resemble conversations. In a conversation, -->
<!-- participants direct utterances at others and, as the conversation -->
<!-- evolves, exploit the known common context to advance the conversation. -->
<!-- Similarly, collaborating software components share knowledge with each -->
<!-- other in order to make progress as a group towards a common goal. -->
<!-- This dissertation studies concurrency from the perspective of -->
<!-- cooperative knowledge-sharing, taking the conversational exchange of -->
<!-- knowledge as a central concern in the design of concurrent programming -->
<!-- languages. In doing so, it makes five contributions: -->
<!-- 0. It develops the idea of a common dataspace as a medium for -->
<!-- knowledge exchange among concurrent components, enabling a new -->
<!-- approach to concurrent programming. -->
<!-- While dataspaces loosely resemble both “fact spaces” from the -->
<!-- world of Linda-style languages and Erlang's collaborative model, -->
<!-- they significantly differ in many details. -->
<!-- 0. It offers the first crisp formulation of cooperative, -->
<!-- conversational knowledge-exchange as a mathematical model. -->
<!-- 0. It describes two faithful implementations of the model for two -->
<!-- quite different languages. -->
<!-- 0. It proposes a completely novel suite of linguistic constructs for -->
<!-- organizing the internal structure of individual actors in a -->
<!-- conversational setting. -->
<!-- The combination of dataspaces with these constructs is dubbed Syndicate. -->
<!-- 0. It presents and analyzes evidence suggesting that the proposed -->
<!-- techniques and constructs combine to simplify concurrent -->
<!-- programming. -->
<!-- The dataspace concept stands alone in its focus on representation and -->
<!-- manipulation of conversational frames and conversational state and in -->
<!-- its integral use of explicit epistemic knowledge. The design is -->
<!-- particularly suited to integration of general-purpose I/O with -->
<!-- otherwise-functional languages, but also applies to actor-like -->
<!-- settings more generally. -->