A Mighty Host

is gathering!

Faced with something that is immensely large, or unknown, of which we still do not know enough or of which we shall never know, the author tells us he is unable to say, and so he proposes a list very often as a specimen, example, or indication, leaving the reader to imagine the rest.

—Umberto Eco, The Infinity of Lists

I was thinking about text generators, and how I could teach myself about the State monad in Haskell by using it to write one, or rather write a combinator library which could be used to write many of them. And then, not long after that, I was sadly dipping into Umberto Eco's The Infinity of Lists after his death, and reading about the catalogue of ships in the Iliad, and that's how @amightyhost was born.

UPDATE: now available on Mastodon!


  • Animals, weapons, trees, clothes and armour: WordNet via NLTK and Wikipedia
  • Cities, forests, mountains, deserts and waterways: GeoNames
  • Illustrations: Albrecht Altdorfer, The Battle of Alexander at Issus, 1529
  • A slightly cleaned-up and Stack-a-tised version of the TextGen combinator it runs on