This module does not work like Common Lisp's unwind-protect. The CL unwind-protect form guarantees that the clean-up block will be executed no matter how the protected block is exited.
However, Unwind::Protect does not run the clean-up block if you exit from the protected block with a goto or if the protected block calls exit().
I have created the Protect::Unwind module so that hopefully Common Lisp programmers new to perl will not use the buggy Unwind::Protect module.
1 out of 1 found this review helpful. Was this review helpful to you? Yes No