Well, fallintothis explained it. There is a scheme: if the name is readable/unambigous w/out hyphens, don't use hyphens, else use some. There are exceptions like 'end-tag to match 'start-tag.
There are some "errors" assuming this scheme is correct, like 'fill-table which could be 'filltable. But Clojure has doto (not do-to) and doall (not do-all) for instance. I don't know Scheme enough, but Common Lisp, as fallintothis pointed it out, also has inconsistencies. I suppose Scheme has some.