Difference between revisions of "PERL/C2/Blocks-in-Perl/English-timed"
From Script | Spoken-Tutorial
PoojaMoolya (Talk | contribs) (Created page with '{| border=1 ! <center>'''Visual Cue'''</center> ! <center>'''Narration'''</center> |- | 00.01 |Welcome to the spoken tutorial on ''' BLOCKS''' in Perl. |- | 00.06 | In this…') |
PoojaMoolya (Talk | contribs) |
||
Line 22: | Line 22: | ||
|00.26 | |00.26 | ||
|You can use any text editor of your choice. | |You can use any text editor of your choice. | ||
− | |||
|- | |- | ||
Line 55: | Line 54: | ||
|01.02 | |01.02 | ||
|'''END''' | |'''END''' | ||
− | |||
|- | |- | ||
Line 85: | Line 83: | ||
|We can have several ''' BEGIN ''' blocks inside a ''' Perl''' script. | |We can have several ''' BEGIN ''' blocks inside a ''' Perl''' script. | ||
− | |||
|- | |- | ||
|01.26 | |01.26 | ||
| These blocks will get executed in the order of declaration. | | These blocks will get executed in the order of declaration. | ||
− | |||
|- | |- | ||
Line 106: | Line 102: | ||
| 01.45 | | 01.45 | ||
| Press ''' Enter.''' | | Press ''' Enter.''' | ||
− | |||
|- | |- | ||
|01.47 | |01.47 | ||
|Piece of code to be executed at the time of compilation | |Piece of code to be executed at the time of compilation | ||
− | + | ||
− | + | ||
|- | |- | ||
|01.51 | |01.51 | ||
| Press '''Enter ''' | | Press '''Enter ''' | ||
− | |||
|- | |- | ||
Line 125: | Line 118: | ||
|01.55 | |01.55 | ||
|Now, let us look at an example of '''BEGIN''' blocks. | |Now, let us look at an example of '''BEGIN''' blocks. | ||
− | |||
|- | |- | ||
Line 150: | Line 142: | ||
|02.20 | |02.20 | ||
|Let us look at what I have written inside the script. | |Let us look at what I have written inside the script. | ||
− | |||
|- | |- | ||
|02.24 | |02.24 | ||
|Here, we have printed some text before and after ''' BEGIN''' blocks. | |Here, we have printed some text before and after ''' BEGIN''' blocks. | ||
− | |||
|- | |- | ||
Line 164: | Line 154: | ||
| 02.37 | | 02.37 | ||
|Please note, I have not given the semicolon after the ''' BEGIN''' blocks. | |Please note, I have not given the semicolon after the ''' BEGIN''' blocks. | ||
− | |||
|- | |- | ||
| 02.42 | | 02.42 | ||
|Putting a semicolon, will result in a syntax error, on execution of the program. | |Putting a semicolon, will result in a syntax error, on execution of the program. | ||
− | |||
|- | |- | ||
Line 182: | Line 170: | ||
| 02.58 | | 02.58 | ||
|''' perl beginBlock dot pl''' | |''' perl beginBlock dot pl''' | ||
− | |||
|- | |- | ||
Line 191: | Line 178: | ||
|03.04 | |03.04 | ||
|You will get the output as displayed on the terminal. | |You will get the output as displayed on the terminal. | ||
− | |||
|- | |- | ||
| 03.09 | | 03.09 | ||
| Notice that The line written inside the first '''BEGIN''' block gets printed first and | | Notice that The line written inside the first '''BEGIN''' block gets printed first and | ||
− | |||
|- | |- | ||
|03.16 | |03.16 | ||
| The first '''print statement''' in the script actually gets printed after the '''BEGIN block statements. ''' | | The first '''print statement''' in the script actually gets printed after the '''BEGIN block statements. ''' | ||
− | + | ||
− | + | ||
|- | |- | ||
| 03.25 | | 03.25 | ||
Line 210: | Line 194: | ||
| 03.31 | | 03.31 | ||
| From this example, it is evident that: | | From this example, it is evident that: | ||
− | |||
|- | |- | ||
| 03.34 | | 03.34 | ||
|The code written inside the ''' BEGIN''' blocks gets executed first. | |The code written inside the ''' BEGIN''' blocks gets executed first. | ||
− | |||
|- | |- | ||
Line 224: | Line 206: | ||
| 03.46 | | 03.46 | ||
| '''BEGIN blocks''' always get executed in the '''First In First Out''' manner. | | '''BEGIN blocks''' always get executed in the '''First In First Out''' manner. | ||
− | |||
|- | |- | ||
|03.52 | |03.52 | ||
|So one of the use of this '''block''' is to include files inside a Perl script, before actual execution starts. | |So one of the use of this '''block''' is to include files inside a Perl script, before actual execution starts. | ||
− | |||
|- | |- | ||
Line 246: | Line 226: | ||
|04.17 | |04.17 | ||
|We can have several ''' END blocks''' inside a '''Perl script.''' | |We can have several ''' END blocks''' inside a '''Perl script.''' | ||
− | |||
|- | |- | ||
Line 255: | Line 234: | ||
| 04.26 | | 04.26 | ||
| That is, in '''Last define First execute''' pattern. | | That is, in '''Last define First execute''' pattern. | ||
− | |||
|- | |- | ||
Line 281: | Line 259: | ||
|Close curly bracket | |Close curly bracket | ||
− | |||
|- | |- | ||
|04.49 | |04.49 | ||
|Now let us look at an example of END blocks. | |Now let us look at an example of END blocks. | ||
− | |||
|- | |- | ||
Line 298: | Line 274: | ||
| 05.00 | | 05.00 | ||
|and press '''Enter''' | |and press '''Enter''' | ||
− | |||
|- | |- | ||
|05.03 | |05.03 | ||
| This will open the ''' endBlock dot pl''' file in '''gedit.''' | | This will open the ''' endBlock dot pl''' file in '''gedit.''' | ||
− | |||
|- | |- | ||
Line 309: | Line 283: | ||
| Type the following piece of code as displayed on the screen. | | Type the following piece of code as displayed on the screen. | ||
− | |||
|- | |- | ||
| 05.13 | | 05.13 | ||
Line 325: | Line 298: | ||
| 05.29 | | 05.29 | ||
| Please note, I have not given the ''' semicolon''' after the '''END''' block. | | Please note, I have not given the ''' semicolon''' after the '''END''' block. | ||
− | |||
|- | |- | ||
|05.34 | |05.34 | ||
|If we give the semicolon, there will be a syntax error on compilation. | |If we give the semicolon, there will be a syntax error on compilation. | ||
− | |||
|- | |- | ||
Line 344: | Line 315: | ||
|''' perl endBlock dot pl''' | |''' perl endBlock dot pl''' | ||
− | + | |- | |
| 05.53 | | 05.53 | ||
|and '''press Enter.''' | |and '''press Enter.''' | ||
− | |||
|- | |- | ||
|05.55 | |05.55 | ||
| You will get the output as displayed on the terminal. | | You will get the output as displayed on the terminal. | ||
− | |||
|- | |- | ||
Line 373: | Line 342: | ||
| 06.23 | | 06.23 | ||
|The code written inside the ''' END''' blocks get executed at the end. | |The code written inside the ''' END''' blocks get executed at the end. | ||
− | |||
|- | |- | ||
Line 386: | Line 354: | ||
|06.41 | |06.41 | ||
|So, one use of '''END''' block is to destroy objects created in the program, before exiting. | |So, one use of '''END''' block is to destroy objects created in the program, before exiting. | ||
− | |||
|- | |- | ||
Line 463: | Line 430: | ||
|08.07 | |08.07 | ||
|Press '''Enter ''' | |Press '''Enter ''' | ||
− | |||
|- | |- | ||
Line 488: | Line 454: | ||
|08.24 | |08.24 | ||
|Press '''Enter ''' | |Press '''Enter ''' | ||
− | |||
|- | |- | ||
Line 505: | Line 470: | ||
|08.37 | |08.37 | ||
|In this tutorial, we have learnt - | |In this tutorial, we have learnt - | ||
− | |||
|- | |- | ||
Line 518: | Line 482: | ||
|08.48 | |08.48 | ||
|using sample programs | |using sample programs | ||
− | |||
|- | |- | ||
Line 535: | Line 498: | ||
|09.02 | |09.02 | ||
|Watch the video available at the following link | |Watch the video available at the following link | ||
− | + | ||
− | + | ||
|- | |- | ||
|09.06 | |09.06 | ||
|It summaries the Spoken Tutorial project | |It summaries the Spoken Tutorial project | ||
− | |||
|- | |- | ||
Line 549: | Line 510: | ||
| 09.14 | | 09.14 | ||
| The Spoken Tutorial Project Team Conducts workshops using spoken tutorials | | The Spoken Tutorial Project Team Conducts workshops using spoken tutorials | ||
− | + | ||
− | + | ||
|- | |- | ||
|09.20 | |09.20 | ||
Line 562: | Line 522: | ||
| 09.32 | | 09.32 | ||
| Spoken Tutorial Project is a part of the Talk to a Teacher project | | Spoken Tutorial Project is a part of the Talk to a Teacher project | ||
− | |||
|- | |- | ||
|09.37 | |09.37 | ||
|It is supported by the National Mission on Education through ICT, MHRD, Government of India. | |It is supported by the National Mission on Education through ICT, MHRD, Government of India. | ||
− | |||
|- | |- | ||
Line 580: | Line 538: | ||
|10.00 | |10.00 | ||
|This is Amol signing off. | |This is Amol signing off. | ||
− | + | ||
− | + | ||
|- | |- | ||
|10.02 | |10.02 |
Revision as of 15:22, 2 June 2014
|
|
---|---|
00.01 | Welcome to the spoken tutorial on BLOCKS in Perl. |
00.06 | In this tutorial, we will learn about the various BLOCKS available in Perl |
00.13 | I am using Ubuntu Linux 12.04 operating system and Perl 5.14.2 |
00.21 | I will also be using the gedit Text Editor. |
00.26 | You can use any text editor of your choice. |
00.31 | As a pre-requisite, you should have basic knowledge of Variables, Comments in Perl |
00.38 | Knowledge of Data structures in PERL will be an added advantage. |
00.44 | Please go through the relevant spoken tutorials on the spoken tutorial website. |
00.50 | Perl provides 5 special blocks. |
00.53 | These blocks get executed at various stages of a Perl program. |
00.59 | These blocks are: |
01.01 | BEGIN |
01.02 | END |
01.03 | UNITCHECK |
01.04 | CHECK. |
01.05 | INIT |
01.06 | Let us start with understanding the BEGIN block. |
01.10 | BEGIN block get executed at the time of compilation. |
01.15 | So, any code written inside this block gets executed first during compilation. |
01.22 | We can have several BEGIN blocks inside a Perl script. |
01.26 | These blocks will get executed in the order of declaration. |
01.31 | That is in the First define First execute pattern |
01.35 | The syntax for BEGIN block is as follows |
01.40 | BEGIN in capital letters space open curly bracket |
01.45 | Press Enter. |
01.47 | Piece of code to be executed at the time of compilation |
01.51 | Press Enter |
01.52 | Close curly bracket |
01.55 | Now, let us look at an example of BEGIN blocks. |
01.59 | Open the Terminal and type |
02.02 | gedit beginBlock dot pl space ampersand |
02.08 | and press Enter. |
02.10 | This will open the beginBlock dot pl file in gedit. |
02.15 | Type the following piece of code as displayed on the screen. |
02.20 | Let us look at what I have written inside the script. |
02.24 | Here, we have printed some text before and after BEGIN blocks. |
02.31 | Similarly, I have written one print statement in each BEGIN block. |
02.37 | Please note, I have not given the semicolon after the BEGIN blocks. |
02.42 | Putting a semicolon, will result in a syntax error, on execution of the program. |
02.49 | Now, press Ctrl+s to save the file. |
02.53 | Then switch to terminal and execute the script by typing, |
02.58 | perl beginBlock dot pl |
03.01 | and press Enter. |
03.04 | You will get the output as displayed on the terminal. |
03.09 | Notice that The line written inside the first BEGIN block gets printed first and |
03.16 | The first print statement in the script actually gets printed after the BEGIN block statements. |
03.25 | BEGIN blocks gets executed in the order of their declaration. |
03.31 | From this example, it is evident that: |
03.34 | The code written inside the BEGIN blocks gets executed first. |
03.40 | This is irrespective of the location of the BEGIN block inside PERL script. |
03.46 | BEGIN blocks always get executed in the First In First Out manner. |
03.52 | So one of the use of this block is to include files inside a Perl script, before actual execution starts. |
04.01 | Now, let us understand the END block |
04.04 | END block get executed at the end of PERL program |
04.09 | Code written inside this block gets executed after PERL has finished executing the program. |
04.17 | We can have several END blocks inside a Perl script. |
04.21 | These blocks will get executed in reverse order of declaration |
04.26 | That is, in Last define First execute pattern. |
04.30 | The syntax for END block is as follows |
04.35 | END in capital letters open curly bracket |
04.39 | Press Enter |
04.40 | Piece of code to be executed at the end of the PERL script |
04.45 | Press Enter |
04.46 | Close curly bracket |
04.49 | Now let us look at an example of END blocks. |
04.53 | Open the Terminal and type |
04.56 | gedit endBlock dot pl space ampersand |
05.00 | and press Enter |
05.03 | This will open the endBlock dot pl file in gedit. |
05.08 | Type the following piece of code as displayed on the screen. |
05.13 | Let us look at what I have written inside this script. |
05.17 | Here we have printed some text before and after END blocks. |
05.23 | Similarly, we have written one print statement in each END block. |
05.29 | Please note, I have not given the semicolon after the END block. |
05.34 | If we give the semicolon, there will be a syntax error on compilation. |
05.41 | Now, press Ctrl+s to save the file. |
05.45 | Then switch to terminal and execute the script by typing, |
05.50 | perl endBlock dot pl |
05.53 | and press Enter. |
05.55 | You will get the output as displayed on the terminal. |
06.00 | Notice that : The line written inside the END block is printed last. |
06.06 | The last print statement in the script actually gets printed before the END block statements and |
06.13 | END blocks gets executed in the reverse order of their declaration. |
06.20 | From the example, it is evident that |
06.23 | The code written inside the END blocks get executed at the end. |
06.29 | This is irrespective of the location of the END block inside the PERL script and |
06.36 | END blocks gets executed in the Last In First Out manner. |
06.41 | So, one use of END block is to destroy objects created in the program, before exiting. |
06.49 | Similarly, PERL has UNITCHECK, CHECK and INIT blocks. |
06.55 | These blocks are used rarely by developers and are a bit difficult to understand. |
07.02 | So, I will be just briefing you about these blocks. |
07.06 | UNITCHECK, CHECK and INIT blocks are useful- |
07.10 | to catch the transition between compilation and execution phase of the main program and |
07.18 | to perform some checks or initialisation, after compilation and before execution |
07.24 | UNITCHECK and CHECK blocks runs in Last in First out manner |
07.31 | whereas INIT block runs in First In First Out manner. |
07.37 | The syntax for UNITCHECK block is as follows |
07.41 | UNITCHECK in capital letters space open curly bracket |
07.46 | Press Enter |
07.48 | Piece of code to be executed |
07.50 | Press Enter |
07.52 | Close curly bracket |
07.54 | The syntax for CHECK block is as follows |
07.58 | CHECK in capital letters space open curly bracket |
08.03 | Press Enter |
08.04 | Piece of code to be executed |
08.07 | Press Enter |
08.08 | Close curly bracket |
08.11 | The syntax for INIT block is as follows |
08.15 | INIT in capital letters space open curly bracket |
08.20 | Press Enter |
08.21 | Piece of code to be initialised |
08.24 | Press Enter |
08.26 | Close curly bracket |
08.28 | For better understanding, I recommend that you experiment with these blocks in your Perl scripts. |
08.36 | Let us summarize. |
08.37 | In this tutorial, we have learnt - |
08.40 | BEGIN and END blocks in detail and |
08.44 | Introduction to UNITCHECK, CHECK and INIT blocks |
08.48 | using sample programs |
08.52 | Here is assignment for you - |
08.54 | Type the below code inside a PERL script; |
08.58 | Execute the script and observe the output. |
09.02 | Watch the video available at the following link |
09.06 | It summaries the Spoken Tutorial project |
09.09 | If you do not have good bandwidth, you can download and watch it |
09.14 | The Spoken Tutorial Project Team Conducts workshops using spoken tutorials |
09.20 | Gives certificates to those who pass an online test |
09.24 | For more details, please write to contact at spoken hyphen tutorial dot org |
09.32 | Spoken Tutorial Project is a part of the Talk to a Teacher project |
09.37 | It is supported by the National Mission on Education through ICT, MHRD, Government of India. |
09.45 | More information on this Mission is available at spoken hyphen tutorial dot org slash NMEICT hyphen Intro |
09.57 | Hope you enjoyed this Perl tutorial. |
10.00 | This is Amol signing off. |
10.02 | Thanks for joining. |