One final point about interactive development in Factor. If I'm unsure how to solve a problem (either I can't recall the algorithm off-hand, or I'm using an unfamiliar Factor library; there are enough contributed libraries now that I cannot possibly remember all APIs at once), then what I do is I just start pushing some object on the stack. Then I look at them in the inspector, checking out the instance variables, etc. Then I start calling words in the listener to manipulate these objects. Then I look at the results in the inspector, go read some help, etc. Then call some more words. At the end, I've solved my problem "manually",