in reply to
Ways of commenting subroutines
Another possibility beyond those talked about here are using comment-to-documentation formats such as Javadoc or Doxygen, which require to have certain key lines in the comments preceeding a function to describe what happens; the comments are still quite readable within the code, and you've got an easy way to make usable documentation outside of the POD mechanism if your project calls for it.
Dr. Michael K. Neylon - email@example.com
"You've left the lens cap of your mind on again, Pinky" - The Brain