Perl Is A Scripting Language Which Uses A Syntax Simliar To C/C++. It Is Commonly Used By Web Programmers To Create Scripts For Web Servers. Perl Is Especially Good At Parsing Text, So Programmers Often Use It For Reading And Searching Through Text Files.
1.Difference between the variables in which chomp function work ?
Scalar: It is denoted by $ symbol. Variable can be a number or a string.
Array: Denoted by @ symbol prefix. Arrays are indexed by numbers.
The namespace for these types of variables is different. For Example: @add, $add. The scalar variables arein one table of names or namespace and it can hold single specific information at a time and array variablesare in another table of names or namespace. Scalar variables can be either a number or a string.
2.How can we create Perl programs in UNIX, Windows NT, Macintosh and OS/2 ?
“Emacs” or “vi” can be used in UNIX and in Windows NT we can use “notepad”. In Macintosh we can useMacPerl’s text editor or any other text editor and in OS/2, e or epm can be used
3.Which feature of Perl provides code reusability ? Give any example of that feature.
Inheritance feature of Perl provides code reusability. In inheritance, the child class can use the methodsand property of parent class
4.In Perl we can show the warnings using some options in order to reduce or avoid the errors. What are that options?
5.Does Perl have objects? If yes, then does it force you to use objects? If no, then why?
Yes, Perl has objects and it doesn't force you to use objects. Many object oriented modules can be usedwithout understanding objects. But if the program is too large then it is efficient for the programmer to makeit object oriented.
6.Can we load binary extension dynamically?
Yes, we can load binary extension dynamically but your system supports that. If it doesn't support, then youcan statically compile the extension.
7.In Perl, there are some arguments that are used frequently. What are that arguments and what do they mean?
-w (argument shows warning)
-d (use for debug)
-c (which compile only not run)
-e (which executes)
We can also use combination of these like:
-wd
8.How many types of primary data structures in Perl and what do they mean?
The scalar: It can hold one specific piece of information at a time (string, integer, or reference). It startswith dollar $ sign followed by the Perl identifier and Perl identifier can contain alphanumeric andunderscores. It is not allowed to start with a digit. Arrays are simply a list of scalar variables.
Arrays: Arrays begin with @ sign.
Associative arrays: It also frequently called hashes, are the third major data type in Perl after scalars andarrays. Hashes are named as such because they work very similarly to a common data structure thatprogrammers use in other languages--hash tables. However, hashes in Perl are actually a direct languagesupported data type.
9.Which functions in Perl allows you to include a module file or a module and what is the difference between them?
“use”
1. The method is used only for the modules (only to include .pm type file)
2. The included objects are verified at the time of compilation.
3. We don’t need to specify the file extension.
4. loads the module at compile time.
“require”
1. The method is used for both libraries and modules.
2. The included objects are verified at the run time.
3. We need to specify the file Extension.
4. Loads at run-time.
suppose we have a module file as “Module.pm”
use Module;
or
require "Module.pm";
(will do the same)
10.Which guidelines by Perl modules must be followed?
In Perl, the following guidelines must follow by the modules:
The file name of a module must the same as the package name.
The name of the package should always begin with a capital letter.
The entire file name should have the extension ".pm".
In case no object oriented technique is used the package should be derived from the Exporter class.
Also if no object oriented techniques are used the module should export its functions and variables to themain namespace using the @EXPORT and @EXPOR_OK arrays (the use directive is used to load themodules).
11.How the interpreter is used in Perl?
Every Perl program must be passed through the Perl interpreter in order to execute.
The interpreter compiles the program internally into a parse tree. Any words, spaces, or marks after apound symbol will be ignored by the program interpreter. After converting into parse tree, interpreterexecutes it immediately. Perl is commonly known as an interpreted language, is not strictly true. Since theinterpreter actually does convert the program into byte code before executing it, it is sometimes called aninterpreter/compiler. Although the compiled form is not stored as a file.
12.For a situation in programming, how can you determine that Perl is a suitable?
If you need faster execution the Perl will provide you that requirement. There a lot of flexibility inprogramming if you want to develop a web based application. We do not need to buy the license for Perlbecause it is free. We can use CPAN (Comprehensive Perl Archive Network), which is one of the largestrepositories of free code in the world.
13.How many types of operators are used in the Perl?
Arithmetic operators
+, - ,*
Assignment operators:
+= , -+, *=
Increment/ decrement operators:
++, --
String concatenation:
‘.’ operator
comparison operators:
==, !=, >, =
Logical operators:
&&, ||, !
14.Where the command line arguments are stored and if you want to read command-line arguments with Perl, how would you do that?
The command line arguments in Perl are stored in an array @ARGV.
$ARGV[0] (the first argument)
$ARGV[1] (the second argument) and so on.
$#ARGV is the subscript of the last element of the @ARGV array, so the number of arguments
on the command line is $#ARGV + 1
15.Where the command line arguments are stored and if you want to read command-line arguments with Perl, how would you do that?
16.What is the use of -w, -t and strict in Perl?
When we use –w, it gives warnings about the possible interpretation errors in the script. Strict tells Perl toforce checks on the definition and usage of variables. This can be invoked using the use strict command. Ifthere are any unsafe or ambiguous commands in the script, this pragma stops the execution of the scriptinstead of just giving warnings. When used –t, it switches on taint checking. It forces Perl to check theorigin of variables where outside variables cannot be used in sub shell executions and system calls
17.Which has the highest precedence, List or Terms? Explain?
Terms have the highest precedence in Perl. Terms include variables, quotes, expressions in parenthesis etc.List operators have the same level of precedence as terms. Specifically, these operators have very strongleft word precedence.
18.List the data types that Perl can handle?
Scalars ($): It stores a single value.
Arrays (@): It stores a list of scalar values.
Hashes (%): It stores associative arrays which use a key value as index instead of numerical indexes
19.What is the use of -n and -p options?
The -n and -p options are used to wrap scripts inside loops. The -n option makes the Perl execute the scriptinside the loop. The -p option also used the same loop as -n loop but in addition to it, it uses continue. Ifboth the -n and -p options are used together the -p option is given the preference.
20.What is the usage of -i and 0s options?
The -i option is used to modify the files in-place. This implies that Perl will rename the input fileautomatically and the output file is opened using the original name. If the -i option is used alone then nobackup of the file would be created. Instead -i.bak causes the option to create a backup of the file.
21.Write a program that explains the symbolic table clearly.
In Perl, the symbol table is a hash that contains the list of all the names defined in a namespace and itcontains all the functions and variables.
22.How can information be put into hashes?
When a hash value is referenced, it is not created. It is only created once a value is assigned to it. Thecontents of a hash have no literal representation. In case the hash is to be filled at once the unwinding ofthe hash must be done. The unwinding of hash means the key value pairs in hash can be created using alist, they can be converted from that as well. In this conversion process the even numbered items are placedon the right and are known as values. The items placed on the left are odd numbered and are stored askeys. The hash has no defined internal ordering and hence the user should not rely on any particularordering.
23.Why Perl aliases are considered to be faster than references?
In Perl, aliases are considered to be faster than references because they do not require any dereferencing.
24.How can memory be managed in Perl?
Whenever a variable is used in Perl, it occupies some memory space. Since the computer has limitedmemory the user must be careful of the memory being used by the program.
On execution of above program, after reading a file it will print the first word of each line into another file.If the files are too large then the system would run out of memory. To avoid this, the file can be dividedinto sections.
25.What do you mean by context of a subroutine?
It is defined as the type of return value that is expected. You can use a single function that returns differentvalues.
26.List the prefix dereference in Perl.
$-Scalar variables
%-Hash variables
@-arrays
&-subroutines
Type globs-*myvar stands for @myvar, %myvar.
27.In CPAN module, name an instance you use.
In CPAN, the CGI and DBI are very common packages
28.What are the advantages of c over Perl?
There are more development tools for C than for PERL. PERL execute slower than C programs. Perlappears to be an interpreted language but the code is complied on the fly. If you don't want others to useyour Perl code you need to hide your code somehow unlike in C. Without additional tools it is impossible to create an executable of a Perl program
29.“Perl regular expressions match the longest string possible". What is the name of this match?
It is called as "greedy match" because Perl regular expressions normally match the longest string possible.
30.How can you call a subroutine and identify a subroutine?
‘&myvariable’ is used to call a sub-routine and ‘&’ is used to identify a sub-routine.
31.What is use of '->' symbol?
In Perl, ‘->’ symbol is an infix dereference operator. if the right hand side is an array subscript, hash key ora subroutine, then the left hand side must be a reference.
32.Where do we require ‘chomp’ and what does it mean?
We can eliminate the new line character by using ‘chomp’. It can used in many different scenarios.
33.What does the'$_' symbol mean?
The ‘$_’ is a default variable in Perl and $_ is known as the "default input and pattern matching space
34.What is PERL? What is the basic command to print a String in Perl?
Perl is a programming language designed for text processing. It runs on various platforms Windows, MacOS and various versions of UNIX.
To print a string, you need to observe the following -
A string should have double Quotesà “…..”
A special character referred as “new line” à \n
A semicolon at the end of the program à ;
Example: print “Hello, World!\n”;
35.Explain which feature of PERL provides code reusability?
To provide code re-usability in PERL inheritance feature is used. In Inheritance, the child class can use themethods and property of the parent class.
36.Mention the difference between die and exit in Perl?
Die will print a message to the std err before ending the program while Exit will simply end up theprogram.
37.In Perl, what is grep function used for?
To filter the list and return only those elements that match certain criteria Perl grep function is used.
38.What is the syntax used in Perl grep function?
The syntax used in Perl is
a) grep BlOCK LIST
b) grep ( EXPR, LIST )
39.Explain what is the scalar data and scalar variables in Perl?
Scalar in Perl means a single entity like a number or string. So, the Java concept of int, float, double andstring equals to perls scalar and the numbers and strings are exchangeable. While scalar variable is used tostore scalar data. It uses $ sign and followed by one or more alphanumeric characters or underscore. It is acase sensitive.
40.What does -> symbol indicates in Perl?
In Perl, the arrow - > symbol is used to create or access a particular object of a class.
41.Mention how many ways you can express string in Perl?
You can express string in Perl in many ways
For instance “this is jobsmate.”
qq/this is jobsmate like double quoted string/
qq^this is jobsmate like double quoted string^
q/this is jobsmate /
q&this is jobsmate&
q(this is jobsmate)
42.Explain USE and REQUIREMENT statements?
REQUIRE statement: It is used to import functions with a global scope such that their objects andfunctions can be accessed directly
Example: Require Module,
Var=module::method(); //method called with the module reference
USE statements are interpreted and are executed during parsing, while during run time the requirestatements are executed.
Example: Use Module
Var=method(); //method can be called directly
43.Explain what is Chop & Chomp function does?
44.Mention what is CPAN?
CPAN means Comprehensive Perl Archive Network, a large collection of Perl software anddocumentation.
45.Explain what is Polymorphism in Perl?
In Perl, Polymorphism means the methods defined in the base class will always over-ride the methodsdefined in the parent class.
46.Mention what are the two ways to get private values inside a subroutine or block?
There are two ways through which private values can be obtained inside a subroutine or block
Local Operator: On global variables only this operator can operate. The value of the private variable issaved on the Local Operator and makes the provision to restore them at the end of the block
My Operator: To define or create a new variable this operator can be used. Variable that is created by MyOperator will always be declared private to block inside which it is defined.
47.Explain what is STDIN, STDOUT and STDERR?
STDIN: The STDIN file handle is used to read from the keyboard
STDOUT: It is used to write into the screen or another program
STDERR: It is also used to write into a screen. STDERR is a standard error stream that is used in Perl.
48.What is the closure in PERL?
The closure is a block of code that is used to capture the environment where it is defined. It particularlycaptures any lexical variables that block consists of and uses in an outer space.
49.Explain what is Perl one liner?
One liner is one command line programs and can be executed from the command line immediately.
For example,
# run program under the debugger
perl-d my_file
50.Explain what is Ivalue?
An Ivalue is a scalar value which can be used to store the result of any expression. Usually, it appears atthe left-hand side of the expression and represent a data space in memory.
51.What is Grooving & Shortening of arrays and what is Splicing of arrays?
52.Explain what is the function that is used to identify how many characters are there in a string?
To tell how many characters are there in a string, length () function is used.
53.Explain what are prefix dereferencer and list them out?
Using a particular prefix when you dereference a variable, they are called prefix dereferencer.
54.Explain what is the function of Return Value?
The Return Value function returns a reference to an object blessed into CLASSNAME.
55.How to make perl files self executable?
56.What is the use of the -w switch in perl?
The -w switch tells perl to produce extra warning messages about potentially dangerous constructs.
57.Do we have to compile create object file and then execute it?
The advantage of Perl is that you don't have to compile create object file and then execute.
Note: The pound sign "#" is the symbol for comment entry. There is no multiline comment entry , so youhave to use repeated # for each line.
58.What are scalar functions?
Forces EXPR to be interpreted in scalar context and returns the value of EXPR.
Scalar Functions: