Friday, March 24, 2017

Perl - Quick Guide

Perl - Introduction

Perl is a general-purpose programming language originally developed for text manipulation and now used for a wide range of tasks including system administration, web development, network programming, GUI development, and more.

What is Perl?

  • Perl is a stable, cross platform programming language.
  • Though Perl is not officially an acronym but few people used it as Practical Extraction and Report Language.
  • It is used for mission critical projects in the public and private sectors.
  • Perl is an Open Source software, licensed under its Artistic License, or the GNU General Public License (GPL).
  • Perl was created by Larry Wall.
  • Perl 1.0 was released to usenet's alt.comp.sources in 1987
  • At the time of writing thi tutorial, latest version of perl is 5.16.2
  • Perl is listed in the Oxford English Dictionary.
PC Magazine named Perl a finalist for its 1998 Technical Excellence Award in the Development Tool category.

Perl Features

  • Perl takes the best features from other languages, such as C, awk, sed, sh, and BASIC, among others.
  • Perls database integration interface DBI supports third-party databases including Oracle, Sybase, Postgres, MySQL and others.
  • Perl works with HTML, XML, and other mark-up languages.
  • Perl supports Unicode.
  • Perl is Y2K compliant.
  • Perl supports both procedural and object-oriented programming.
  • Perl interfaces with external C/C++ libraries through XS or SWIG.
  • Perl is extensible. There are over 20,000 third party modules available from the Comprehensive Perl Archive Network (CPAN).
  • The Perl interpreter can be embedded into other systems.

Perl and the Web

  • Perl used to be the most popular web programming language due to its text manipulation capabilities and rapid development cycle.
  • Perl is widely known as " the duct-tape of the Internet".
  • Perl can handle encrypted Web data, including e-commerce transactions.
  • Perl can be embedded into web servers to speed up processing by as much as 2000%.
  • Perl's mod_perl allows the Apache web server to embed a Perl interpreter.
  • Perl's DBI package makes web-database integration easy.

Perl is Interpreted

Perl is an interpreted, which means that your code can be run as is, without a compilation stage that creates a non portable executable program.
Traditional compilers convert programs into machine language. When you run a Perl program, it's first compiled into a byte code, which is then converted ( as the program runs) into machine instructions. So it is not quite the same as shells, or Tcl, which are strictly interpreted without an intermediate representation.
Neither it is like most versions of C or C++, which are compiled directly into a machine dependent format. It is somewhere in between, along with Python and awk and Emacs .elc files.

Perl - Environment Setup

Before we start writing our Perl programs, let's understand how to setup our Perl environment. Perl is available on a wide variety of platforms:
  • Unix (Solaris, Linux, FreeBSD, AIX, HP/UX, SunOS, IRIX etc.)
  • Win 9x/NT/2000/
  • WinCE
  • Macintosh (PPC, 68K)
  • Solaris (x86, SPARC)
  • OpenVMS
  • Alpha (7.2 and later)
  • Symbian
  • Debian GNU/kFreeBSD
  • MirOS BSD
  • And many more...
This is more likely that your system will have perl installed on it. Just try giving following command at the $ prompt:
$perl -v
If you have perl installed on your machine then you will get a message something as follows:
This is perl 5, version 16, subversion 2 (v5.16.2) built for i686-linux

Copyright 1987-2012, Larry Wall

Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.

Complete documentation for Perl, including FAQ lists, should be found on
this system using "man perl" or "perldoc perl".  If you have access to the
Internet, point your browser at https://www.perl.org/, the Perl Home Page.
If you do not have perl already installed then proceed to the next section.

No comments:

Post a Comment