Agents are monads (but not that kind) · HackerLangs