A Language-based Approach to Unifying Events and Threads - Li and Zdancewic, 2006 So far in this mini-series we've seen that thread and event-based models are duals, that threads are a bad idea - you should really be using events, and that events are a bad idea - you should really be using threads. What … Continue reading A language-based approach to unifying events and threads
Tag: Programming Languages
The Semantic Elegance of Applicative Languages
The Semantic Elegance of Applicative Languages - Turner '81. Here's a paper you can enjoy simply for its prose! In what does the alleged superiority of applicative languages consist? In what indeed! And while we're at it, what's an applicative language? I looked up a few definitions; if we call it a functional language I … Continue reading The Semantic Elegance of Applicative Languages
Church’s Thesis and Functional Programming
Church's Thesis and Functional Programming - Turner 2006 One of a collection of papers celebrating the 70th anniversary of Church's thesis in 2006, as recently recommended by Erik Meijer on twitter. Both the thesis and the lambda calculus have been of seminal influence on the development of Computing Science. There were three independently developed definitions … Continue reading Church’s Thesis and Functional Programming
Probabilistic Programming
Probabilistic Programming - Gordon et al 2014 Let's jump straight into some code - what is the meaning of this program in the PROB programming language? On lines 2 and 3, c1 and c2 are assigned to the result of a Fair Coin Toss. We then constrain the allowed outcomes (line 4) to be those … Continue reading Probabilistic Programming
One VM to Rule Them All
One VM to rule them all - Wuerthinger et al. 2013 Building high-performance virtual machines is hard , and a number of widely used languages only have lower-performance implementations. Wuerthinger et al. want to make it easier for you to create high-performance VMs without needing to create highly complex implementations. According to the paper: Java … Continue reading One VM to Rule Them All
The Power of Interoperability: why objects are inevitable
The power of interoperability: why objects are inevitable - Aldrich 2013 This is a thought-provoking essay from 2013 in defence of objects and OOP. To many, the reason for objects' success is not obvious. Indeed, objects have been strongly criticised. ... While there has unquestionably been some hype about objects over the years, I have … Continue reading The Power of Interoperability: why objects are inevitable
Monads for functional programming
Monads for functional programming - Wadler, 1992 There's something about the word 'monad', and about the concept of monads, that people find off-putting. If this was a paper coming from an OO (e.g. Java) perspective it might have been titled something like "A principled approach for wrapper types" which doesn't sound nearly so daunting does … Continue reading Monads for functional programming