Musings of an Accidental Computing Scientist

Musings of an Accidental Computing Scientist

The climate cost of the AI revolution

On the energy cost of Large Language Models, what their widespread adoption could mean for global CO₂ emissions, and what could be done about it.

Why I wrote Haku

Haku is a natural language functional programming language based on literary Japanese. This article is about my motivation for creating Haku.

Frugal computing

On the need for low-carbon and sustainable computing and the path towards zero-carbon computing.

A universal interpreter

The Böhm-Berarducci encoding of a type can be considered as a universal interpreter. We illustrate this in Raku with an evaluator and pretty printer.

Encoding types as functions in Raku

The Böhm-Berarducci encoding is a way to express an algebraic data type as a function type. We show how to do this in Raku using roles.

Function types

A brief introduction into function types, with a way to implement them in Raku and examples in many languages.

Everything is a function

Although it might seem that a language like Haskell has a lot of different objects and constructs, they can all be reduced to functions.

The Winds of Kyoto

A very short story for the Fifth Annual Kyoto Writing Competition.

A strategy for debugging

For a long time it has been my contention that for a developer, more that programming, debugging should be treated as a core skill.

Imagine we had better weather forecasts

Current weather forecasts are at the same time very advanced and yet not good enough. Earlier and more accurate warnings could help to limit the damage of su...