This glossary covers the terms used in describing the Perl language,
and common terms used on the Internet that may be useful when locating and installing
Perl or searching for Perl utilities or modules on the Network.
account A user ID and disk area restricted
for the use of a particular person. Usually password protected.
alias A short name used to represent a more
complicated one. Often used for mail addresses or host domain names.
alphanumeric character A character that is
a single letter or a single digit.
analog A form of electronic communication using
a continuous electromagnetic wave, such as television or radio. Any continuous
wave form, as opposed to digital on/off transmissions.
archive A repository of files available for
access at an Internet site. Also, a collection of files, often a backup of a
disk or files saved to tape to allow them to be transferred.
argument A parameter passed to a subroutine
or function.
ARPA (Advanced Research Projects Agency)
a government agency that originally funded the research on the ARPANET (became
DARPA in the mid-1970s).
ARPANET An experimental communications network
funded by the government that eventually developed into the Internet.
array Data structure enumerating a number of
elements indicated in Perl with an @ sign at the start of the variable name.
array context An array value is required (either
a normal array or an associative array, both of which are lists).
article Message submitted to a UseNet newsgroup.
Unlike an e-mail message that goes to a specific person or group of persons,
a newsgroup message goes to directories (on many machines) that can be read
by any number of people.
ASCII Data that is limited to letters, numbers,
and punctuation.
attribute A form of a command-line switch as
applied to tags in the HTML language. HTML commands or tags can be more specific
when attributes are used. Not all HTML tags utilize attributes.
associative array Data structure enumerating
a number of elements each associated with a key indicated in Perl with a % at
the start of the variable name.
associativity A term to describe the way an
operator takes its operands.
awk UNIX text processing utility program.
bang A slang term for an exclamation point.
bang address A type of e-mail address that
separates host names in the address with exclamation points. Used for mail sent
to the UUCP network, where specifying the exact path of the mail (including
all hosts that pass on the message) is necessary. The address is in the form
of machine!machine!userID, where the number of machines listed depends on the
connections needed to reach the machine where the account userID is.
binary Data that may contain non-printable
characters, including graphics files, programs, and sound files.
BinHex A program that is used to encode binary
files as ASCII so that they can be sent through e-mail.
bit The basic unit of digital communications.
There are 8 bits in a byte.
BITNET (Because It's Time Network) A non-TCP/IP
network for small universities without Internet access.
bitwise functions Functions that treat their
arguments as an array of binary bits.
bitwise operators Operators that treat their
operands as an array of binary bits.
block A group of statements enclosed in braces.
bookmarks Term used by some World Wide Web
browsers for marking URLs you access frequently.
Boolean logic Logic dealing with True/False
values (for example, the operators AND, OR, and NOT are Boolean operators).
bounce An e-mail message you receive that tells
you that an e-mail message you sent wasn't delivered. Usually contains an error
code and the contents of the message that wasn't delivered.
bps (bits per second) A unit of measurement
that expresses the speed at which data is transferred between computers.
bridge A device that connects one physical
section of a network to another, often providing isolation.
browser A utility that lets you look through
collections of things. For example, a file browser lets you look through a file
system. Applications that let you access the World Wide Web are called browsers.
byte A digital storage unit large enough to
contain one ASCII character. Compare to bit.
C A programming language that was the basis
for many Perl features.
CERN The European Laboratory for Particle Physics,
where the World Wide Web was first conceived of and implemented.
child A subprocess.
client User of a service. Also often refers
to a piece of software that gets information from a server.
command line Line on a terminal-based interface
where you enter commands to the operating system.
compress A program that compacts a file so
it fits into a smaller space. Also can refer to the technique of reducing the
amount of space a file takes up.
CompuServe A commercial online service that
gives its subscribers access to the Internet in addition to its other features.
concatenate To join two strings.
context Many functions return either array
values or scalar values depending on the context, that is, whether returning
an array or a scalar value is appropriate for the place where the call was made.
CPAN (Central Perl Archive Network)
a series of machines on the Internet that act as central repositories for Perl
distributions, documentation, libraries, and modules. The master site is at
ftp://ftp.funet.fi/pub/languages/perl/CPAN/, but many mirror sites exist
in other countries.
cyberspace A term used to refer to the entire
collection of sites accessible electronically. If your computer is attached
to the Internet or another large network, it exists in cyberspace.
database An structured way of storing data
in an organized way, often described in terms of a number of tables each made
up of a series of records, each record being made of a number of fields.
data type Perl has three basic data types:
scalar ($), array (@), and associative array (%), that is, these are the different
kinds of variables that Perl can use.
daemon A program that runs automatically on
a computer to perform a service for the operating system.
DARPA (Defense Advanced Research Projects Agency, originally
ARPA) The government agency that funded the research that developed
the ARPANET.
DBM A UNIX database format.
debugging The process of tracking down errors
in a program, often aided by examining or outputting extra information designed
to help this process.
dedicated line See leased line.
DES (Data Encryption Standard) An algorithm
developed by the U.S. government to provide security for data transmitted over
a network.
dialup A type of connection where you use a
modem to connect to another computer or an Internet provider via phone lines.
digest A form of mailing list where a number
of messages are concatenated (linked) and sent out as a single message.
digital Type of communications used by computers,
consisting of individual on and off pulses. Compare to analog.
directory In most computer file systems files
are grouped into a hierarchical tree structure with a number of files in each
directory (the files are like the leaves and the directories are like the branches
of this tree).
directory handle A link between a Perl program
and a directory that is created when the directory is opened.
DNS See Domain Name System (DNS).
DOD (Department of Defense) A U.S. government
agency that originally sponsored the ARPANET research.
domain Highest subdivision of the Internet,
for the most part by country (except in the U.S., where it's by type of organization,
such as educational, commercial, and government). Usually the last part of a
host name; for example, the domain part of ibm.com is .com, which represents
the domain of commercial sites in the U.S.
Domain Name System (DNS) The system that translates
between Internet IP address and Internet host names.
dot address See host address.
download Move a file from a remote computer
to your local computer.
effective GID The group identifier of the current
process, which may have been changed from the original GID by various means.
effective UID The user identifier of the current
process, which may have been changed from the original UID by various means.
egrep A UNIX pattern matching utility that
finds matching patterns in text files.
e-mail An electronic message delivered from
one computer user to another. Short for electronic mail.
e-mail address An address used to send e-mail
to a user on the Internet, consisting of the user name and host name (and any
other necessary information, such as a gateway machine). An Internet e-mail
address is usually of the form username@hostname.
emoticon See smiley face.
encryption The process of scrambling a message
so that it can be read only by someone who knows how to unscramble it.
environment Every process has a number of variables
associated with it, these are described as the environment; Perl provides ways
of examining and changing these environment variables.
ethernet A type of local area network hardware.
Many TCP/IP networks are ethernet based.
expire Remove an article from a UseNet newsgroup
after a specified interval.
FAQ (Frequently Asked Question document, pronounced as fak) Contains
a list of commonly asked questions on a topic. Most UseNet newsgroups have a
FAQ to introduce new readers to popular topics in the newsgroup.
feed Send UseNet newsgroups from your site
to another site that wants to read them.
FIFO (First-In First-Out) A queue where the
first item placed in the queue is the first item processed when the queue is
processed.
file Basic unit of storage of computer data
in a file structure; files can normally be binary or text only (ASCII).
file handle A link between a Perl program and
a file that is created when the file is opened.
file test Perl has a number of file test operators
that can test various aspects of a file, the most basic being whether the file
exists or not.
finger A program that provides information
about users on an Internet host (possibly may include a user's personal information,
such as project affiliation and schedule).
firewall A device placed on a network to prevent
unauthorized traffic from entering the network.
flame Communicate in an abusive or absurd manner.
Often occurs in newsgroup posts and e-mail messages.
flushing When data is output to a text file
it is usually buffered to make processing more efficient, flushing forces any
items in the buffer to be actually written to the file.
formats Perl allows the specification of formats
to control the layout of text output.
forms Online data-entry sheets supported by
some World Wide Web browsers.
frame relay A type of digital data communications
protocol.
freeware Software that is made available by
the author at no cost to anyone who wants it (although the author retains rights
to the software).
FTP (File Transfer Protocol) An Internet communications
protocol that allows you to transfer files between hosts on the Internet.
function A function is a set of commands that
may be passed to some arguments and return a result.
gateway A device that interfaces two networks
that use different protocols.
GID (Group identifier), a number representing
the group that a process belongs to in the operating system.
gigabit Very high-speed (one billion bits per
second) data communications.
gigabyte A unit of data storage approximately
equal to one billion bytes of data.
global variables Variables that can be referred
to anywhere within a package.
Gopher An application that allows you to access
publicly available information on Internet hosts that provide Gopher service.
Gopherbook An application that uses an interface
resembling a book to access Gopher servers.
grep A UNIX pattern matching utility.
GUI (Graphical User Interface) A computer interface
based on graphical symbols rather than text. Windowing environments and Macintosh
environments are GUIs.
gzip A file compression program originally
designed to replace the UNIX compress utility.
hacking Originally referred to playing around
with computer systems; now often used to indicate destructive computer activity.
hash lookup Find the value associated with
a specified key in an associative array.
hash table A method used for implementing associative
arrays, which allows the keys to be converted to numbers for internal storage
purposes.
home page The document that your World Wide
Web browser loads when it starts up. It should have links to other documents
that you use frequently. Also, the main entry point to a site is sometimes called
its home page (the default first page for that site).
hop-check A utility that allows you to find
out how many routers are between your host and another Internet host. See also
traceroute.
host address A unique number assigned to identify
a host on the Internet (also called IP address or dot address). This address
is usually represented as four numbers between 1 and 254 and separated by periods,
for example, 192.58.107.230.
host name A unique name for a host that corresponds
to the host address.
hosts Individual computers connected to the
Internet; see also nodes.
hot list A list of your favorite World Wide
Web sites that can be accessed quickly by your WWW browser.
HTML (Hypertext Markup Language) The formatting
language that is used to create World Wide Web documents.
HTTP (Hypertext Transport Protocol) The communications
protocol that allows WWW hypertext documents to be retrieved quickly.
hyperlinks See links.
hypertext An online document that has words
or graphics containing links to other documents. Usually, selecting the link
area on-screen (with a mouse or keyboard command) activates these links.
IEEE (Institute of Electrical and Electronics Engineers) The
professional society for electrical and computer engineers.
IETF (Internet Engineering Task Force) A group
of volunteers that helps develop Internet standards.
Internet The term used to describe all the
worldwide interconnected TCP/IP networks.
Internet Explorer A Microsoft Windows 95 Web
browser.
InterNIC The NSFNET manager sites on the Internet
that provide information about the Internet.
IP (Internet Protocol) The communications protocol
used by computers connected to the Internet.
IP address See host address.
IPC (Inter-Process Communication) Perl
has a way to access the UNIX system for passing values between running processes.
ISO (International Standards Organization) An
organization that sets worldwide standards in many different areas.
key In an associative array, a series of unique
keys are associated with values.
LAN (Local Area Network) A network of computers
that is limited to a (usually) small physical area, like a building.
leased line A dedicated phone line used for
network communications.
library In Perl 4, the standard way to distribute
code was in a library (accessed using the require() function); in Perl
5, modules are normally used, though libraries may still be used.
LIFO (Last-In First-Out) A queue where
the last item placed in the queue is the first item processed when the queue
is processed.
links The areas (words or graphics) in an HTML
document that cause another document to be loaded when the user clicks them.
list A list is a series of values separated
by commas; lists are often enclosed in parentheses to avoid ambiguity and these
parentheses are often necessary.
list context This is the same as array context.
listproc Software that automates the management
of electronic mailing lists. See also LISTSERV, majordomo, and
SmartList.
LISTSERV Software that automates the management
of electronic-mailing lists. See also listproc, majordomo, and
SmartList.
local variables Local variables can only be
accessed in the current block and in subroutines called from that block.
local host The computer you are currently using.
logical operators This term is used to mean
Boolean operators, that is, those dealing with True/False values.
logon Provide a user ID and password to allow
you to use the resources of a computer.
mailers Applications that let you read and
send e-mail messages.
mailing list A service that forwards an e-mail
message sent to it to everyone on a list, allowing a group of people to discuss
a particular topic.
majordomo Software that automates the management
of electronic mailing lists. See also listproc, LISTSERV, and
SmartList.
man A UNIX command that provides information
about the UNIX command entered in the parameter command. (The man command is
short for manual entry.)
match A string that does fit a specified pattern.
metacharacters Characters that have a special
meaning and so may need to be escaped to turn off that meaning.
MIME (Multi-Purpose Internet Mail Extensions) An
extension to Internet mail that allows for the inclusion of non-textual data
such as video and audio in e-mail.
modem An electronic device that allows digital
computer data to be transmitted via analog phone lines.
moderator A person who examines all submissions
to a newsgroup or mailing list and allows only those that meet certain criteria
to be posted. Usually, the moderator makes sure that the topic is pertinent
to the group and that the submissions aren't flames.
module The standard Perl 5 way to distribute
libraries of functions.
Mosaic A graphical interface to the World Wide
Web (WWW).
motd (message of the day) A message
posted on some computer systems to let people know about problems or new developments.
my variables Perl 5 has a type of variable
that is truly local to only the block in which it is declared, as distinct from
local variables that can actually be accessed from subroutines called from the
block.
namespace Variables names can have different
scopes (such as global, local, and my) that determine which variable is being
referred to at any point in a Perl program. The term namespace is used when
describing how a variable name fits into this scheme (for example, a local variable
in a subroutine is not in the package namespace).
netiquette Network etiquette conventions used
in written communications, usually referring to UseNet newsgroup postings but
also applicable to e-mail.
netnews A collective way of referring to the
UseNet newsgroups.
Netscape A popular commercial World Wide Web
browser.
network A number of computers physically connected
to enable communication with one another.
newsgroups The electronic discussion groups
of UseNet.
newsreaders Applications that let you read
(and usually post) articles in UseNet newsgroups.
NFS (Network File System) A file system developed
by Sun Microsystems that is now widely used on many different networks.
NIC (Network Interface Card) And add-on card
to allow a machine to access a LAN (most commonly an ethernet card).
NIC (Network Information Center) A service
that provides administrative information about a network.
NNTP (Network News Transport Protocol) The
communications protocol that is used to send UseNet news on the Internet.
nodes Individual computers connected to a network;
see also hosts.
NSFNET Network funded by the National Science
Foundation, now the backbone of the Internet.
null character A character with the value 0.
null list An empty list represented as empty
parentheses.
operand Argument to an operator (often an expression
itself that must be evaluated first).
operator Usually a symbol that indicates that
the relevant arguments (operands) are processed according to some rule and replaced
with an appropriate result. Operators that are words are also allowed. This
means that the distinction between a function and an operator is one based on
the order of evaluation rather than a difference in what they do. In fact, in
Perl 5, all functions can effectively be used as operators by omitting the parentheses.
package A unit of Perl code that determines
the scope of the variables. Variables in a Perl program without any explicit
package declaration are assumed to be in the package main.
packet The unit of data transmission on the
Internet. A packet consists of the data being transferred with additional overhead
information, such as the transmitting and receiving addresses.
packet switching The communications technology
that the Internet is based on, where data being sent between computers is transmitted
in packets.
parallel Means of communication in which digital
data is sent multiple bits at a time, with each simultaneous bit being sent
over a separate line.
parameter Means the same as argument.
pattern An expression defining a set of strings
that match the pattern and a set that do not.
PDIAL A list of mailing lists maintained by
Stephanie da Silva (arielle@taronga.com), periodically posted to the
news.answers, news.announce.newusers, and news.lists UseNet
newsgroups.
peer-to-peer Internet services that can be
offered and accessed by anyone, without requiring a special server.
Perl (Practical Extraction and Report Language)
a language well suited to text file processing as well as other tasks.
PGP (Pretty Good Privacy) An application that
allows you to send and receive encrypted e-mail.
PID Process identifier, a number indicating
the number assigned by the operating system to that process.
ping A utility that sends out a packet to an
Internet host and waits for a response (used to check if a host is up).
pipe The concept in an operating system where
the output of one program is fed into the input of another.
Pipeline A complete Internet service package.
POP (Point of Presence) Indicates availability
of a local access number to a public data network.
port (hardware) A physical channel on a computer
that allows you to communicate with other devices (printers, modems, disk drives,
and so on).
port (network) An address to which incoming
data packets are sent. Special ports can be assigned to send the data directly
to a server (FTP, Gopher, WWW, telnet, or e-mail) or other specific program.
post To send a message to a UseNet newsgroup.
postmaster An address to which you can send
questions about a site (asking if a user has an account there or if they sell
a particular product, for example).
PPP (Point-To-Point Protocol) A driver that
allows you to use a network communications protocol over a phone line, used
with TCP/IP to allow you to have a dial-in Internet host.
pragma A Perl 5 module whose real purpose is
to act as a compile time directive rather than supply any functions (for example,
the integer module that switches to integer arithmetic).
precedence The order in which operators are
evaluated is based on their precedence.
procedure In some languages a distinction is
made between subroutines that do not return a value (procedures) and those that
do (functions). Perl itself does not make such distinctions, though the term
may be used.
process In multitasking operating systems such
as UNIX, many programs may be run at once and each one as it is running is called
a process.
protocol The standard that defines how computers
on a network communicate with one another.
public domain software Software that is made
available by the author to anyone who wants it. (In this case, the author gives
up all rights to the software.)
recursion When a subroutine makes a call to
itself.
regular expressions A way of specifying a pattern
so that some strings match the pattern and some strings do not. Parts of the
matching pattern can be marked for use in operations such as substitution.
repeater Device that allows you to extend the
length of your network by amplifying and repeating the information it receives.
remote Pertaining to a host on the network
other than the computer you now are using.
remote host A host on the network other than
the computer you currently are using.
rlogin A UNIX command that allows you to log
on to a remote computer.
RFC (Request for Comments) A document submitted
to the Internet governing board to propose Internet standards or to document
information about the Internet.
router Equipment that receives an Internet
packet and sends it to the next machine in the destination path.
scalar A type of Perl variable that is not
an array, this includes all integer, floating-point, and string variables in
Perl; scalar variable names begin with the $ sign.
scalar context A scalar value is required.
script A Perl program is often called script
as it is an interpreted set of instructions in a text file (line a UNIX shell
script).
scope The scope of a variable determines whether
the variable name can be seen from various parts of a Perl program (see global,
local, and my).
sed A UNIX editing utility.
serial Means of communication in which digital
data is sent one bit at a time over a single physical line.
server Provider of a service. Also often refers
to a piece of hardware or software that provides access to information requested
from it. See also client.
server-side include (SSI) A command that directs
the server to run a program, usually in the Perl programming language. SSIs
are server-specific.
shareware Software that is made available by
the author to anyone who wants it, with a request to send the author a nominal
fee if the software is used on a regular basis.
shell The UNIX command interpreter (you often
have a choice from a number of different shells).
signal A means of passing information between
the operating system and a running process, the process can trap the signal
and respond accordingly.
signature A personal sign-off used in e-mail
and newsgroup posts, often contained in a file and automatically appended to
the mail or post. Often contains organization affiliation and pertinent personal
information.
site A group of computers under a single administrative
control.
SLIP (Serial Line Internet Protocol) A way
of running TCP/IP via the phone lines to allow you to have a dialup Internet
host.
SmartList Software that automates the management
of electronic-mailing lists. See also listproc, LISTSERV, and
majordomo.
smiley face An ASCII drawing such as :-) (look
at it sideways) used to help indicate an emotion in a message. Also called emoticon.
SMTP (Simple Mail Transport Protocol) The accepted
communications protocol standard for exchange of e-mail between Internet hosts.
SNMP (Simple Network Management Protocol) A
communications protocol used to control and monitor devices on a network.
socket A means of network communications via
special entities; Perl allows direct access to the UNIX C socket mechanism.
string A sequence of characters.
subscribe Become a member of a mailing list
or newsgroup; also refers to obtaining Internet provider services.
subscript The index number used to specify
an element in an array.
substring A contiguous part of a string, starting
at a certain character and continuing for a certain length.
surfing Jumping from host to host on the Internet
to get an idea of what can be found. Also used to refer to briefly examining
a number of different UseNet newsgroups.
syntax A statement that contains programming
code.
T1 Communications lines operating at 1.544M/sec.
T3 Communications lines operating at 45M/sec.
tag A slang reference for commands that are
part of HTML. See also HTML.
tainted A means in Perl of flagging variables
as untrustworthy because the value has been input by a non-trusted source (this
allows the development of secure programs for applications such as Web server
programs reading user input).
tar (tape archive program) A UNIX-based program
that creates packages of directory structures.
TCP (Transmission Control Protocol) The network
protocol used by hosts on the Internet.
telnet A program that allows remote logon to
another computer.
terminal emulation Running an application that
lets you use your computer to interface with a command-line account on a remote
computer, as if you were connected to the computer with a terminal.
thread All messages in a newsgroup or mailing
list pertaining to a particular topic.
toggle Alternate between two possible values.
token ring A network protocol for LAN.
traceroute A utility that allows you to find
out how many routers are between your host and another Internet host. See also
hop-check.
traffic The information flowing through a network.
UID User identifier, a number representing
a user account (all files and processes in UNIX are associated with the owner's
UID).
unary operator An operator with one operand.
UNIX An operating system used on many Internet
hosts.
upload Move a file from your local computer
to a remote computer.
URL (Universal Resource Locator) Used to specify
the location and name of a World Wide Web document. You can also specify other
Internet services available from WWW browsers, for example, http://www.nsf.gov
or gopher://gopher2.tc.umn.edu, or ftp://ftp.funet.fi/pub/languages/perl/CPAN/.
UseNet A collection of computer discussion
groups that are read all over the world.
user name The ID used to log on to a computer.
UUCP (UNIX to UNIX Copy Protocol) An early
transfer protocol for UNIX machines that required having one machine call the
other one on the phone.
UUDecode A program that lets you construct
binary data that was UUEncoded.
UUEncode A program that lets you send binary
data through e-mail.
variable A storage place in memory used in
a program while it is running to store values that may be altered by the program.
viewers Applications that are used to display
non-text files, such as graphics, sound, and animation.
virus A computer program that covertly enters
a system by means of a legitimate program, usually doing damage to the system;
compare to worm.
VMS (Virtual Memory System) An operating system
used on hosts made by Digital Equipment Corporation.
VRML (Virtual Reality Modeling Language) An
experimental language that lets you display 3D objects in Web documents.
WAIS (Wide Area Information Servers) A system
for searching and retrieving documents from participating sites.
WAN (Wide Area Network) A network of computers
that are geographically dispersed.
Web Chat An application that allows you to
carry on live conversations over the World Wide Web.
Web Crawler A Web search tool.
WHOIS A service that lets you look up information
about Internet hosts and users.
World Wide Web (WWW or Web) A hypertext-based
system that allows browsing of available Internet resources.
worm A computer program that invades other
computers over a network, usually non-destructively; compare to virus.
X-modem A communication protocol that lets
you transfer files over a serial line. See also Y-modem and Z-modem.
yacc A UNIX utility program for generating
compilers based on a grammar (Yet Another Compiler Compiler).
Y-modem A communication protocol that lets
you transfer files over a serial line. See also X-modem and Z-modem.
Z-modem A communication protocol that lets
you transfer files over a serial line. See also X-modem and Y-modem.
ZIP Probably the singular most popular file
compression and archive program for PCs.