S'pose you realize you're in the market for an embedded [DSL] that, let's say, controls a natural gas pipeline system. One approach is just to start writing things you want the language to be able to handle--for example, set valve(Pittsburgh,18,1349) open puts "Flow in critical link is $flow(Valdosta,7,88)." if [string equal open ... But wait! This is valid Tcl already! Let's figure out what the output from such a sequence should be, and we immediately have a case that can be coded directly in [tcltest]. Now all that remains is to implement (just) enough to pass the test we've composed. This is [TDD] with a vengeance! ---- [Category Glossary]