A code snippet of the procedure on GitHub. The compilation helps the Oracle interpreter to process your code faster. In the Recompile dialog, select With "debug" option. A block without a name is an anonymous block. The anonymous block is not stored in the Oracle database.
All the statements of a block are passed to oracle engine all at once which increases processing speed and decreases the traffic. SQL statements are passed to Oracle engine one at a time which increases traffic and decreases speed. SQL has no facility of error checking during manipulation of data. It is declarative, that defines what needs to be done, rather than how things need to be done.