This is the homepage for Troy Astarte. I am a research associate in computing science at Newcastle University.
My PhD research was on the history of programming language semantics. I am now working on a research project on the history of concurrency in programming and computing systems, funded by the Leverhulme Trust.
I am the chair of the Newcastle University Historic Computing Committee, which curates a large collection of historic artefacts related to computing at the University. I am a member of the British Society for the History of Mathematics Council, where I am their web admin and chair the Accessibility & Diversity Working Group. I am also part of the PROGRAMme project which takes a historical and philosophical look at the question “What is a (computer) program?”.
You can download a copy of my CV (dated June 2021) by clicking on this link.
I am sad to announce that I will be leaving Newcastle University at the end of September 2021, but happy to announce that I am joining Swansea University as a Lecturer in Computer Science, with a focus on teaching. For now these web pages will continue to exist but expect a link to a new web page soon.
In Autumn 2021, I will give a talk at the sixth History and Philosophy of Computing conference.
The title is ‘From Monitors to Monitors: an Early History of Concurrency Primitives’.
You can see the abstract and extended abstract below. Slides will come later.
In Summer 2021, I gave a talk entitled ‘There will be a time-fight tomorrow: Old problems in new logics’.
The longer and more preliminary version was given at the Oxford History of Mathematics forum,
and the more condensed version at ICHST 2021.
I think there's a good story in here, but I wasn't totally happy with how it went at ICHST—
the balance of timings was somewhat off.
This is an advantage to the reader of the slides, linked below, as they can be read at a choice of pace!
The presenter notes give a flavour of the words spoken alongside each slide.
As Spring emerges in 2021, research continues on the history of concurrency project. I have paused working on temporal logic temporarily, and I am now working on a chapter about programming language constructs. I will be giving a talk about temporal logic at ICHST 2021. I am also working towards something publishable on programming languages.
With Tim Denvir, I co-delivered the Peter Landin Semantics Seminar for the BCS Formal Aspects of Computer Science group in December 2020.
My section of the talk was called ‘ALGOL 60 @ 60: More on semantics’ and was, I immodestly admit, rather well-received.
I also thoroughly enjoyed giving it.
The abstract for the whole talk, and the slides for my part, are linked in the buttons below.
The slides include the presenter notes, which give a decent flavour of the material I delivered.
A video recording can me found online by clicking the button below.
In May 2020 I finished a draft of a paper summarising the results of my PhD research. I am in the process of significantly revising it for submission to an edited volume; the resultant paper is going to be rather different (and shorter!). I have published the longer paper as a Technical Report, which is now linked in Publications.
Work on research and teaching was slowed by the COVID-19 pandemic.
However, it did not stop, and I managed to bring another year of CSC3321 to a successful close in May 2020.
Remote teaching was interesting and challenging, but my students seemed satisfied.
Remote research was equally challenging, but my work on temporal logic still progressed.
An abstract for a talk I plan to give in 2021 can be found by clicking on the links below and will give a flavour of my current research.
In January 2020, I travelled to Amsterdam once again to teach on the ‘History of Digital Cultures’ course at Universiteit van Amsterdam. A continually valuable experience, I supervised Master's students researching topics like the history of the Agile development methodology, and cyber warfare.
In November 2019, I officially started working on the Leverhulme Trust funded project “Separation and Interference: learning from the history of concurrency”. This is an exciting project with a lot of scope; I have started by looking at the history of temporal logic. My collaborator Cliff Jones is researching process algebras.
Later in October 2019, the History of Formal Methods 2019 (HFM2019) workshop took place,
as part of FM'19.
I was co-organiser and co-chair of the workshop, alongside my Newcastle colleague Brian Randell.
This full-day event featured talks on the history of various different kinds of formal methods,
from B to Z.
We finished the day with discussion on the topic “What have formal methods ever done for us?” which was open to the whole audience.
Proceedings are now published; see the link below.
In October 2019, I attended the SHOT annual conference in Milan,
and the SIG-CIS meeting co-located with them.
I did not give a talk there; however I did at the subsequent HaPoC 2019 conference.
The talk was entitled ‘On the difficulty of describing difficult things’ and was a summary of the findings from my PhD research.
You can see the short and extended abstracts and slides for that talk by clicking on the buttons below.
I have written a paper on this material and am in the process of finding publication.
At the start of June 2019,
the Newcastle University Historic Computing Committee hosted an event on the history of computing at Newcastle,
specifically the acquisition of the IBM System/360-67 machine and the deployment of the Michigan Terminal System.
Together these were groundbreaking because they allowed time-sharing—the
use of the computer by multiple users at the same time.
The slides from the event and the large information handout can be found by clicking on the buttons below.
In May 2019 I wrapped up teaching the Stage 3 course ‘CSC3321: Understanding Programming Languages’, which I took over from my colleague Cliff Jones. This is an advanced course on the semantics of programming languages, and teaching it was an extremely valuable and enjoyable experience. Thanks to all of my students!
In March 2019, I was made the new chair of the Newcastle University Historic Computing Committee. This group of volunteers from both NUIT (the University's IT Service) and the School of Computing, curates a large collection of artefacts relating to computing at Newcastle University. The collection was formed from Roger Broughton's collection (see the link for his web pages on the collection) gathered over many years as operations supervisor for the IT Service (in its various guises). The Committee now is working on cataloguing every artefact in its possession (helped by a new catalogue website designed by Lindsay Marshall), as well as organising exhibitions in cabinets around the Urban Sciences Building.
In February 2019, I passed my viva subject to minor corrections. My examiners were Adrian Johnstone (external) and Jason Steggles (internal). My corrections were approved in June 2019 and I graduated in July 2019. A copy of my thesis can be found below in the Publications section.
In January 2019, I returned to Amsterdam again to teach on the ‘History of Digital Cultures’ course at Universiteit van Amsterdam.
I joined the ANR research project PROGRAMme which is a historical and philoshopical investigation into the question “What is a (computer) program?” This is an international interdisciplinary group effort and we last met in October 2018 in Bertinoro, Italy, for a few days of stimulating intellectual discussion. During that time we launched the project wiki—not yet open to the general public—which we hope will be an interesting vehicle for collaborative work.
I took a break from thesis writing to attend the European Society for the History of Science Biennial Conference 2018.
There, I gave a talk entitled ‘Origins and Impact of Formal Semantics’,
a rather grand title for what was mostly a talk about John McCarthy's work in formal semantics.
Abstract and the slides can be found from the buttons below.
The majority of 2018 was spent writing my thesis ‘Formalising Meaning: a History of Programming Language Semantics’.
It is lengthy and goes rather in-depth in places, but I am quite pleased with it.
You can read the abstract by clicking the button below.
Once it has been submitted, I will host it here for the hordes of excited readers.
I spent the month of January 2018 in Amsterdam, teaching on the History of Digital Cultures module offered by the Universiteit van Amsterdam (an old version of the course description can be found on the UvA website). This wonderful opportunity was offered to me by Gerard Alberts, a very fine historian. I had a great time supervising students through their month-long research projects, and was very impressed with the quality of work produced. I also feel I learnt a lot about the process of history, and believe I will write a better thesis as a result.
In October 2017, I went to the
Fourth International Conference on the History and Philosophy of Computing
an excellent conference full of interesting talks and even more interesting people.
There, I presented a talk entitled ‘Towards an Interconnected History of Semantics’,
which—as implied by the word 'towards'—was something of a work-in-progress.
The aim was to address the confluence and influence in the history of semantics rather than making comparisons,
and the talk was essentially a series of anecdotes about various events.
A short abstract and slides for the talk can be found by clicking the buttons below.
Additionally, an 'extended abstract' three pages in length is also available.
I also gave a version of the talk at the BSHM Research in Progress symposium again in February 2018.
The British Society for the History of Mathematics invited me to their Research in Progress symposium held at the Queen's College, Oxford, in February 2017.
There I gave a talk about a particularly important point in the history of programming language semantics,
I attended the
Third Symposium for the History and Philosophy of Programming
in Paris on 25th June 2016,
and presented on the joint work I have been doing with Cliff Jones.
The title of the presentation was
‘Formal semantics of ALGOL 60: a comparison of four descriptions’.
You can read the extended abstract for the talk or see the slides by clicking the appropriate button below.
‘The history of programming language semantics: an overview’ is a technical report.
It summarises the major findings of my PhD research,
exploring motivations for semantics work, various factors that influenced the work,
and criticism of semantics.
A conclusion is made about the impact of formal semantics work on the development of computer science.
The emphasis is on contextual factors rather than technical ones.
‘Challenges for semantic description:
comparing responses from the main approaches’
is a paper authored by Cliff Jones and me.
It is a technical explanation of some of the aspects of programming languages that make writing semantics tricky,
and a comparison of some of the solutions proposed.
It includes the semantics of an example core language,
and a more realistic concurrent object-oriented language.
This paper has been published as a technical report and also in the proceedings of SETSS 2017.
These proceedings are published as LNCS 11174.
‘Formalism in the Forest: the 1964
‘Formal semantics of ALGOL 60: four descriptions in their historical context’ is a paper co-written with Cliff Jones.
It looks at technical and historical aspects of four formal descriptions of ALGOL 60.
There is also an earlier technical report version of the paper, published with a slightly different title.
I am interested in the history of computing, in particular the history of theoretical computer science, as well as the history of mathematics. I also take an interest in the formal and theoretical aspects of computer science. This includes semantics of programming languages, modelling of systems (including and especially concurrent systems), and verification of programs and systems.
You can contact me on the following address: troy dot astarte at ncl dot ac dot uk (replace with appropriate punctuation). Web page last updated: 2021-09-14.