agents are repls (and so are you)

Usage has two ends. You push text in. You pull text out. They are not the same operation, and they are not synchronised — there’s no clock ticking between a push and the next pull. You can push three messages before reading one reply, or read stale output from an hour ago, or push nothing and just watch. The ends are free.

Tea-Leaf Fingerprints

Circuits is an experiment in bundling very simple functions. Three constructors — Lift a plain function, Compose two circuits, Knot a feedback loop — and the whole thing stays open. You can rearrange, measure, annotate, or run it backwards before it ever executes. Version 0.2 adds Net, the piece we were missing for contravariant tracking: a value that flows backwards through the computation, letting us run circuits in reverse.

Haskell and the elegant attack.

Welcome back to the Happy Haskell HAckers Tour. As we approach our next stop, let me firstly apologise for the recent detours. Our bus driver, Yoneda, mixed up the maps and started following the GHC After Dark1 script. But now we’re back on track, and coming up on your left is our monument to the Haskell literals:

lowercase haskell

Type-level trickery, UpperCase Haskell, is the showy rock-star of Haskell and all power to the Type. I like a good Type as much as anyone, but what keeps me using the language is the work-a-day value-level coding tool-kit - lower case haskell.

Machine Learning

Much advocacy of Haskell, in general, boils down to type-safety and elimination of bugs. How boring. My personal experience is that bugs are trickier in Haskell and I can write bad code in an extraordinary variety of ways.