Perfect programs are hard to get in the very first attempt. They have to go through various steps of debugging to fix all errors. There are two types of errors – Syntax errors and Logical errors. Syntax errors are easy to fix and are found fast. On the other hand, logical errors are hard to find and fix. Thus, a debugger is required to fix those errors.
In Perl, a debugger is an environment that executes the program line by line. This process is also known as single-stepping through the program. To enter into debugger, follow the Syntax given below:
perl -d <program_name>
Sample Program to Debug:
Listing Sample Code with Debugger
- ‘l’ command :
The ‘l’ command lets us print a partial part of our scripts. There are several versions of this command that we can use –
- Use ‘l’ – Displays 10 lines of script from location of cursor.
- Using l 4+6 – Displays 6 lines of script starting from line 4.
- Using l 4-7 – Displays lines 4 through 7 of script.
- Using l 20 – Displays script on line 20.
- Using l foo – Displays approximately first 10 lines of foo() function.
- ‘-‘ command :
Outputs 10 lines of script before the current line. Suppose that you are current on line 20, then, lines 9 to 19 will be displayed.
- ‘w’ command :
Adds a watch expression.
- ‘//’ and ‘??’ :
// and ?? search for a given pattern in the script. The /pattern/ searches for a pattern in forward direction while, the ?pattern? searches for a pattern in the backward direction from the current position of cursor.
/pattern/ or ?pattern?
- ‘S’ command :
This command lists all the subroutines not matching a given pattern.
- Perl - Introduction to Debugger
- Perl | Breakpoints of a Debugger
- Perl | Line Action Commands in a Debugger
- Perl | Displaying Variable Values with a Debugger
- Perl | Basic Syntax of a Perl Program
- R - Creating, Listing, and Deleting Objects in Memory
- Hello World Program in Perl
- Perl Tutorial - Learn Perl With Examples
- Perl vs C/C++
- Perl | last in loop
- while loop in Perl
- Perl | int() function
- Perl | CGI Security
- Perl | Operators | Set - 1
- Perl | qq operator
- Perl Hash
- Perl | Scalars
- Perl | each() Function
- Use of print() and say() in Perl
- Perl | Classes in OOP