Perl 音标拼音: [p'ɚl]
A {high -level } programming language , started
by {Larry Wall } in 1987 and developed as an {open source }
project . It has an eclectic heritage , deriving from the
ubiquitous {C } programming language and to a lesser extent
from {sed }, {awk }, various {Unix } {shell } languages , {Lisp },
and at least a dozen other tools and languages . Originally
developed for {Unix }, it is now available for many
{platforms }.
Perl 's elaborate support for {regular expression } matching and
substitution has made it the {language of choice } for tasks
involving {string manipulation }, whether for text or binary
data . It is particularly popular for writing {CGI scripts }.
The language 's highly flexible syntax and concise regular
expression operators , make densely written Perl code
indecipherable to the uninitiated . The syntax is , however ,
really quite simple and powerful and , once the basics have
been mastered , a joy to write .
Perl 's only {primitive } data type is the "scalar ", which can
hold a number , a string , the undefined value , or a typed
reference . Perl 's {aggregate } data types are {arrays }, which
are ordered lists of {scalars } indexed by {natural numbers },
and hashes (or "{associative arrays }") which are unordered
lists of scalars indexed by strings . A reference can point to
a scalar , array , hash , {function }, or {filehandle }. {Objects }
are implemented as references "{blessed }" with a {class } name .
Strings in Perl are {eight -bit clean }, including {nulls }, and
so can contain {binary data }.
Unlike C but like most Lisp dialects , Perl internally and
dynamically handles all memory allocation , {garbage
collection }, and type {coercion }.
Perl supports {closures }, {recursive functions }, {symbols }
with either {lexical scope } or {dynamic scope }, nested {data
structures } of arbitrary content and complexity (as lists or
hashes of references ), and packages (which can serve as
classes , optionally inheriting {methods } from one or more
other classes ). There is ongoing work on {threads },
{Unicode }, {exceptions }, and {backtracking }. Perl program
files can contain embedded documentation in {POD } (Plain Old
Documentation ), a simple markup language .
The normal Perl distribution contains documentation for the
language , as well as over a hundred modules (program
libraries ). Hundreds more are available from The
{Comprehensive Perl Archive Network }. Modules are themselves
generally written in Perl , but can be implemented as
interfaces to code in other languages , typically compiled C .
The free availability of modules for almost any conceivable
task , as well as the fact that Perl offers direct access to
almost all {system calls } and places no arbitrary limits on
data structure size or complexity , has led some to describe
Perl , in a parody of a famous remark about {lex }, as the
"Swiss Army chainsaw " of programming .
The use of Perl has grown significantly since its adoption as
the language of choice of many {World -Wide Web } developers .
{CGI } interfaces and libraries for Perl exist for several
{platforms } and Perl 's speed and flexibility make it well
suited for form processing and on -the -fly {web page } creation .
Perl programs are generally stored as {text } {source } files ,
which are compiled into {virtual machine } code at run time ;
this , in combination with its rich variety of data types and
its common use as a glue language , makes Perl somewhat hard to
classify as either a "{scripting language }" or an
"{applications language }" -- see {Ousterhout 's dichotomy }.
Perl programs are usually called "Perl scripts ", if only for
historical reasons .
Version 5 was a major rewrite and enhancement of version 4 ,
released sometime before November 1993 . It added real {data
structures } by way of "references ", un -adorned {subroutine }
calls , and {method } {inheritance }.
The spelling "Perl " is preferred over the older "PERL " (even
though some explain the language 's name as originating in the
acronym for "Practical Extraction and Report Language "). The
program that interprets /compiles Perl code is called
"perl ", typically "/usr /local /bin /perl " or "/usr /bin /perl ".
Latest version : 5 .005_03 stable , 5 .005_62 in development , as
of 1999 -12 -04 .
{(http ://perl .com /)}.
{Usenet } newsgroups : {news :comp .lang .perl .announce },
{news :comp .lang .perl .misc }.
["Programming Perl ", Larry Wall and Randal L . Schwartz ,
O 'Reilly & Associates, Inc. Sebastopol, CA. ISBN
0-93715-64-1].
["Learning Perl" by Randal L. Schwartz, O'Reilly & Associates,
Inc., Sebastopol, CA].
[{Jargon File}]
(1999-12-04)Practical Extraction and Report Language (
PERL )
Perl : /
perl /,
n . [
Practical Extraction and Report Language ,
a .
k .
a .
Pathologically Eclectic Rubbish Lister ]
An interpreted language developed by Larry Wall ,
author of patch (
1 )
and rn (
1 )).
Superficially resembles awk ,
but is much hairier ,
including many facilities reminiscent of sed (
1 )
and shells and a comprehensive Unix system -
call interface .
Unix sysadmins ,
who are almost always incorrigible hackers ,
generally consider it one of the languages of choice ,
and it is by far the most widely used tool for making ‘
live ’
web pages via CGI .
Perl has been described ,
in a parody of a famous remark about lex (
1 ),
as the Swiss -
Army chainsaw of Unix programming .
Though Perl is very useful ,
it would be a stretch to describe it as pretty or elegant ;
people who like clean ,
spare design generally prefer Python .
See also Camel Book ,
TMTOWTDI .
安装中文字典英文字典查询工具!
中文字典英文字典工具:
复制到剪贴板
英文字典中文字典相关资料:
operators - What does =~ do in Perl? - Stack Overflow 14 The '=~' operator is a binary binding operator that indicates the following operation will search or modify the scalar on the left The default (unspecified) operator is 'm' for match The matching operator has a pair of characters that designate where the regular expression begins and ends Most commonly, this is ' ' Give Perl Re tutorial
What is the meaning of @_ in Perl? - Stack Overflow 128 perldoc perlvar is the first place to check for any special-named Perl variable info Quoting: @_: Within a subroutine the array @_ contains the parameters passed to that subroutine More details can be found in perldoc perlsub (Perl subroutines) linked from the perlvar: Any arguments passed in show up in the array @_
What does the - gt; arrow do in Perl? - Stack Overflow 7 Perl arrow operator has one other use: Class−>method invokes subroutine method in package Class though it's completely different than your code sample Only including it for completeness for the question in the title
operators - What is the difference between || and or in Perl . . . 53 From Perl documentation: OR List operators On the right side of a list operator, it has very low precedence, such that it controls all comma-separated expressions found there
What does exactly perl -pi -e do? - Stack Overflow What does exactly perl -pi -e do? Asked 10 years, 4 months ago Modified 10 years, 4 months ago Viewed 9k times
Perl flags -pe, -pi, -p, -w, -d, -i, -t? - Stack Overflow Below are the flags that I encounter most often, and I don't have a clue what they mean: perl -pe perl -pi perl -p perl -w perl -d perl -i perl -t I will be very grateful if you tell me what each of those mean and some use cases for them, or at least tell me a way of finding out their meaning
What is the difference of using special variable $_ and @_ in Perl? Please explain what exactly the difference of $_ and @_ is in Perl When to use which, given by example code
terminology - What does ~~ mean in Perl? - Stack Overflow 5 It is the smartmatch operator In general, when you want information about operators in Perl, see perldoc perlop
What does \\@array mean in Perl? - Stack Overflow I have some Perl code where I noticed an array is used with a leading backslash like \\@array Can anybody explain what does it mean?
What should every Perl hacker know about perl -ne? 16 There is one important thing to know about perl -ne and perl -pe scripts: they implicitly use <> "Why is that important?" you might ask The magic <> operator uses the 2 arg form of open If you recall, 2 arg open includes the specification of mode with the filename in one argument