Two things to point out:
1. I cannot recall where I read this, but one approach I've seen described works roughly as follows:
Use the CSS nodisplay to hide a field on a form and then reject the form if the field is filled in. The idea is that spambots won't see the css and fill the field in. In case a human browser has disabled or doesn't have CSS and actually sees this dummy field, you can label it something like "Email address, but don't actually fill this in"
Anyway you get the idea.
2. One of the Ruby Quizzes (http://www.rubyquiz.com/quiz48.html) outlines an approach for "Turing Test" CAPTCHAs. It would be pretty easy to port the idea into Tcl.
Matt