Move the block execution in a Proc
Return zero on Integer type missmatch