Came across what seems like a very simple and workable mechanism for dealing with comment spam: To distinguish between automated requests on the comment script and actual (presumably legitimate) web uses of it, simply add a hidden field with a known value to the web form, and check for that value in the script. Without using the web form, the value will be absent and the automated submission will fail. Described here for WordPress in PHP, but the technique would be easy to duplicate in MT/perl:
http://www.livejournal.com/users/cikkolata/114763.html
Of course this might not be all that different from requiring preview. But I would love to see SA offer an equivalent of this technique.