From fiona.blackett at strath.ac.uk Wed Oct 1 17:18:57 2025 From: fiona.blackett at strath.ac.uk (Fiona Blackett) Date: Wed, 1 Oct 2025 16:18:57 +0000 Subject: [msp-interest] [MSP101] Jeremy Singer: Let's Take Esoteric Programming Languages Seriously (4pm Fri 3/10, LT1414a) Message-ID: Hello all, This Friday at 4pm we have an MSP101 talk by Jeremy Singer, please see below for details! Additionally, we have a talk by Sean Watters coming up at our normal time (1pm on Monday, 6th October) so stay tuned for that announcement Cheers, Fiona Blackett ---------------------------------------------------------------------------------------------- Date, time and place: Friday 3rd October, 16:00, Livingstone Tower room LT1414a Speaker: Jeremy Singer (University of Glasgow Title: Let's Take Esoteric Programming Languages Seriously Zoom Link: https://strath.zoom.us/j/83368306590?pwd=r8QvZDeXG8YvJAKGTBMRb7rumX2Dh7.1 Meeting ID 833 6830 6590 Password: whiteboard Abstract: Esoteric programming languages are challenging to learn, but their unusual features and constraints may serve to improve programming ability. From languages designed to be intentionally obtuse (e.g. INTERCAL) to others targeting artistic expression (e.g. Piet) or exploring the nature of computation (e.g. Fractan), there is rich variety in the realm of esoteric programming languages. This essay examines the counterintuitive appeal of esoteric languages and seeks to analyse reasons for this popularity. We will explore why people are attracted to esoteric languages in terms of (a) program comprehension and construction, as well as (b) language design and implementation. Our assertion is that esoteric languages can improve general PL awareness, at the same time as enabling the esoteric programmer to impress their peers with obscure knowledge. We will also consider pedagogic principles and the use of AI, in relation to esoteric languages. Emerging from the specific discussion, we identify a general set of "good" reasons for designing new programming languages. It may not be possible to be exhaustive on this topic, and it is certain we have not achieved that goal here. However we believe our most important contribution is to draw attention to the varied and often implicit motivations involved in programming language design. ---------------------------------------------------------------------------------------------- -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.strath.ac.uk/archives/msp-interest/attachments/20251001/42519be4/attachment.html From fredrik.nordvall-forsberg at strath.ac.uk Thu Oct 9 18:38:20 2025 From: fredrik.nordvall-forsberg at strath.ac.uk (Fredrik Nordvall Forsberg) Date: Thu, 9 Oct 2025 18:38:20 +0100 Subject: [msp-interest] [MSP101] Fredrik Nordvall Forsberg: An introduction to constructive logic (4pm Fri 10/10, LT210) Message-ID: <5bb4f72a-aafb-47e8-ae2f-28848f8328cc@strath.ac.uk> Hi all, I am happy to report that tomorrow's rescheduled MSP101 seminar will go ahead, with an introductory talk given by yours truly. Depending on how well Fiona is feeling, there might also be another talk already on Monday, in our regular slot. Best wishes, Fred Date, time and place: ? Friday 10 October, 16:00, Livingstone Tower room LT210 Speaker: ? Fredrik Nordvall Forsberg (MSP) Title: ? An introduction to constructive logic Abstract: Constructive logic (also known as intuitionistic logic) is logic without the Law of the Excluded Middle, which states that P or ? P holds for every proposition P. Hilbert famously said that denying mathematicians the use of the Law of the Excluded Middle is "the same as denying the boxer the use of his fists". I will try to convince you that there sometimes is merit in not trying to punch people in the head. For example, constructive logic is the internal logic of toposes, and so a constructive proof can often be reinterpreted to show a much stronger result than a classical one, e.g., a constructed proof of the existence of a function might in fact automatically yield the existence of a continuous or computable function. Constructive logic often leads to interesting mathematics, as it allows for finer distinctions than classical logic. I will also discuss how and when, despite appearances, constructive logic can be seen as an extension of classical logic, rather than as a restriction. Zoom link: https://strath.zoom.us/j/83368306590?pwd=r8QvZDeXG8YvJAKGTBMRb7rumX2Dh7.1 ? (Meeting ID 833 6830 6590, passcode whiteboard) MSP101 Feeds: ? Web: http://msp.cis.strath.ac.uk/msp101.html ? RSS: http://msp.cis.strath.ac.uk/msp101.rss ? iCal: http://msp.cis.strath.ac.uk/msp101.ics From fiona.blackett at strath.ac.uk Tue Oct 21 15:57:21 2025 From: fiona.blackett at strath.ac.uk (Fiona Blackett) Date: Tue, 21 Oct 2025 14:57:21 +0000 Subject: [msp-interest] [MSP101] Sean Watters: What I did in my PhD (1pm Mon 27/10, LT310) Message-ID: Hello all, Next Monday Sean will be giving our MSP101 talk, on what he did during his PhD! Cheers, Fiona Blackett ---------------------------------------------------------------------------------------------- Date, time and place: Monday 27rd October, 1:00 pm, Livingstone Tower room LT310 Speaker: Sean Watters (MSP) Title: What I did in my PhD Zoom Link: https://strath.zoom.us/j/82143788147?pwd=dMy8sftupiQ8eEiIqLzodkMra6RTfn.1 Meeting ID: 821 4378 8147 Password: whiteboard Abstract: The modal ?-calculus is a modal logic that type theorists don't usually spare much thought for; it's usually treated classically, and its main application is as a specification language for model checking, where it subsumes weaker but more commonly used logics like LTL, CTL, and PDL. Meanwhile, modal logicians study the ?-calculus using very "1930s" concepts like explicitly named variables. Most of my efforts during my PhD have been spent trying to pull the theory of the modal ?-calculus into this century (AKA into Agda) using the tools of type theory, but my real interest is in what we type theorists might glean from the exchange. For example, the modal ?-calculus is a fixpoint logic, with a very mature account of fixpoint alternation - something that every proof assistant (to my knowledge) is lacking. In this talk, I'll be using the ?-calculus and some of my recent work on it as a motivating example to give a slightly non-standard introduction to some important MSP ideas - syntaxes with binding, and data types as fixpoints. I'll cover the least fixpoint (which computer scientists love), the greatest fixpoint (which we sometimes tolerate), and the rational fixpoint (which many forget exists, but plays a key role in my work). If time permits, I'd also like to open the door to the terrifying world of arbitrary fixpoint alternation, and some (very very early) ideas for taming it. ---------------------------------------------------------------------------------------------- -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.strath.ac.uk/archives/msp-interest/attachments/20251021/e0f1aafd/attachment.html From fiona.blackett at strath.ac.uk Thu Oct 30 16:38:27 2025 From: fiona.blackett at strath.ac.uk (Fiona Blackett) Date: Thu, 30 Oct 2025 16:38:27 +0000 Subject: [msp-interest] [MSP101] Georgi Nakov: Matrix Typing Rules (1pm Mon 3/11, LT1414a) Message-ID: Hello all, Next Monday we will have our MSP101 talk, titled Matrix Typing Rules, and given by Georgi Nakov. See below for details! Cheers, Fiona Blackett ---------------------------------------------------------------------------------------------- Date, time and place: Monday 3rd November, 1:00 pm, Livingstone Tower room LT1414a Speaker: Georgi Nakov (MSP) Title: Matrix Typing Rules Zoom Link: https://strath.zoom.us/j/82143788147?pwd=dMy8sftupiQ8eEiIqLzodkMra6RTfn.1 Meeting ID: 821 4378 8147 Password: whiteboard Abstract: What is an appropriate type for a matrix, and what are the accompanying typing rules? Depending on your mileage, the answer might seem obvious or dull - can't we start with a humble $\mathsf{Matrix}\,A\,m\,n$? I would argue that better candidates exist, and that suitable typing rules are far from obvious, at least if we aim at actually implementing the said rules. In this talk, I will embark on the long journey of turning something that looks good on paper into something that works in code. We try to abolish any implicit assumptions, hidden computation and blind guessing from the initial typing rules, and refine them until they can guide a precise implementation. With guest occurrences of the usual suspects - bidirectional typing, thinnings, and typecheckers-that-get-to-know-monoid-laws. ---------------------------------------------------------------------------------------------- -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.strath.ac.uk/archives/msp-interest/attachments/20251030/db02233f/attachment.html