continuous delete via recursion instead of poor flow control through exception handling