Procedures are essentially functions with multiple possible returns. Everything that applies to functions applies to procedures.
No download links available.