Skip to content

cl-sl

An original reimplementation of the classic Unix joke command sl (Steam Locomotive): mistype ls as sl and, instead of a shell error, an original hand-authored steam locomotive runs across the terminal and exits automatically once it scrolls off screen.

Every sprite -- the locomotive, its cargo/log cars, the wings of the -F variant, and the -a accident sprite -- is original art authored for this repository. None of it is copied or transcribed from the classic sl.c train art.

See Getting started to run it, or the API reference to use it as a library.

  • Core concepts -- the train/world split and how a tick advances.
  • Architecture -- the source tree and the pure-logic/real-I/O boundary.
  • Development -- building, testing, and contributing.