Making a Lego Domino Machine [video]
youtube.com
youtube.com
If you've never tried it before, I highly recommend giving it a shot - it's extremely satisfying. I use Clojure, but other lisps also have fantastic repl environments that facilitate this style of development. "Bottom Up vs Top Down Design in Clojure"[0] is the talk that really made it clear to me how to design programs this way.
[0]https://www.youtube.com/watch?v=Tb823aqgX_0&list=PLZdCLR02gr...