Learn branching with the if statement.
- [Voiceover] Pearl provides a complete set of conditional branch statements starting with the basic if. Here's a working copy of conditional.pl from chapter five of the exercise files. The if statement is probably the most common conditional in Pearl, or in most language. So it seems like a good place for us to start. The if keyword, as you can see down here on line 10, the if keyword is followed by a logical condition in parentheses. You can see there it's $x == 1.
That double equals sign is the conditional test for equality and the condition is evaluated first, and if it's true the block of code is executed. And you see that block of code here starting with this curly brace ending with that curly brace on line 12. If the condition is not true, then the next line of code after the block is executed, and the code inside the block is never executed. Either way, after the block is executed then the next line of code is run anyway.
So if I go ahead and run this, you see it prints true, and then it says x is 1 and y is 1 and it prints true because $x is equal to 1. If I change this condition to, say, 47 and save and run you see now it no longer says true, but that next line of code on line 14 is still executed. So this form is actually very common in a great many languages. And it's probably familiar to you if you've done much coding.
Go ahead and make this true again. Pearl however has an entirely different way of doing this that is incredibly useful and might seem a little bit strange if you've done programming in another language. This is uniquely Pearl and it's called a post fix conditional and it looks like this, say "true" if $x == 1; and so when I run this you see it still works, and if I change this to 47 and save and run you'll see we get the same result as in the block oriented way.
So this is a feature, like I said, that's unique to Pearl. It can be very useful. It's also a little bit controversial because it's so unlike anything you'll see in other languages. Some will say it's not good practice. I like it though, and here's why, I like that it puts the action on the line first, so say "true" is the first thing on the line, and you can see that, and then you see the conditional and you say, "Okay so this will happen under these conditions." I think it's great for cases where you have a simple action that can be succinctly expressed in one short line of code.
I find this clearer than putting the condition first again, for simple one line statements, and because the action is the first thing you see on the line, it's up to you whether you want to use it or not but you need to know about it because you will see it a lot in other people's code. Here's a few important notes about post fix if, it's only good for a single statement, if you want to use a block, you need to use the normal block oriented syntax with the condition first. Post fix if does not require parentheses around the condition, although they are certainly allowed.
So I can put parentheses out here if I want to, it's just not required, and again, I'll save and run. You can see that it still works. Also you may not use else or elseif with the post fix notation. Post fix notation is available for loops as well, and we'll cover that later in this chapter.
Watch to learn the details of the Perl syntax, from variables, conditionals, loops, and data structures to regular expressions, functions, and references. A quick-start guide is included for experienced developers who want to get up and running with Perl 5 fast, and the entire course is recommended for both new and experienced programmers alike. Later chapters cover file handling and reusing code with Perl modules, plus Perl best coding practices.
- Understanding Perl's general syntax and the anatomy of a Perl script
- Writing statements and expressions
- Creating assignments
- Working with variables and strings
- Using data types effectively
- Defining logical flow with conditionals and loops
- Using special variables
- Using Perl operators
- Performing simple Perl programming tasks with expressions
- Matching data
- Defining and calling functions
- Using references
- Handling files in the file I/O
- Using built-in functions
- Reusing code with modules
- Coding with Perl best practices
Skill Level Intermediate
Foundations of Programming: Refactoring Codewith Simon Allardice1h 44m Intermediate
1. Setting Up
About Perl3m 36s
2. Quick Start
3. Basic Syntax
4. Values and Variables
7. Special Variables
9. Regular Expressions
11. References and Structures
12. File I/O
13. Built-In Functions
15. Best Practices
- Mark as unwatched
- Mark all as unwatched
Are you sure you want to mark all the videos in this course as unwatched?
This will not affect your course history, your reports, or your certificates of completion for this course.Cancel
Take notes with your new membership!
Type in the entry box, then click Enter to save your note.
1:30Press on any video thumbnail to jump immediately to the timecode shown.
Notes are saved with you account but can also be exported as plain text, MS Word, PDF, Google Doc, or Evernote.