Oct 18, 2020 - Programming languages for programmable money

Comments

In this post I introduce the notion of programmable money and smart contracts, why they go hand-in-hand with blockchains, how smart contracts are programmed today and how they might be programmed in the future.

Read more

Oct 28, 2019 - Unix50

Comments

This past week my employer Bell Labs celebrated the fiftieth anniversary of the Unix operating system with a big “Unix50” event in the Bell Labs headquarters in Murray-Hill, NJ and the launch of an online coding challenge called The Unix Game.

Unix was invented by Bell Labs researchers Ken Thompson and Dennis Ritchie precisely 50 years ago in the summer of 1969. Their iconic OS has since influenced a large number of other operating systems, not least of which Linux, MacOS and Android which are still based on the same basic principles.

Read more

Jun 21, 2019 - Code Compass

Comments

I’m happy to share some of the work that I have been involved in at Bell Labs over the course of last year: our import2vec model for training good machine representations of software libraries (enabling computers to establish a mathematical degree of similarity between software libraries), and a practical tool built on top of these representations called Code Compass.

Read more

Oct 15, 2018 - Programming Secure Smart Contracts

Comments

Five years ago, I wrote on this blog about a distributed computing platform called Dr. SES (distributed resilient secure ECMAScript). The goal of Dr. SES was to build a secure distributed computing platform harnessing the power of object-capabilities to build smart contracts.

Read more

Jul 22, 2018 - Isolating application sub-components with membranes

Comments

Membranes are a defensive programming pattern used to intermediate between sub-components of an application. The pattern is applicable in any memory-safe programming language, and I explain elsewhere on this blog how they work in JavaScript.

Read more