<?xml version="1.0" encoding="iso-8859-1"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:content="http://purl.org/rss/1.0/modules/content/">

<channel>
<title>Perl - Web Developer Tutorials</title>
<link>http://www.devshed.com</link>
<!-- PubSubHubbub Discovery -->
<link rel="hub"  href="http://devshednet.superfeedr.com/" xmlns="http://www.w3.org/2005/Atom" />
<link rel="self" href="http://www.devshed.com/rss-feeds-10.xml" xmlns="http://www.w3.org/2005/Atom" />
<!-- End Of PubSubHubbub Discovery -->
<atom:link href="http://www.devshed.com/rss-feeds-10.xml" rel="self"/>
<description>Perl Tutorials at Dev Shed.  DevShed is a community focused on both beginner and advanced tutorials in Java, C, PHP, Python, MySQL and Ruby-on-rails...amongst others.</description>
<language>en-us</language>
<lastBuildDate>Wed, 15 Feb 2012 04:00:44 -0500</lastBuildDate>
<pubDate>Wed, 15 Feb 2012 04:00:44 -0500</pubDate>
<item><title>Subroutines and Functions in Perl</title>
<pubDate>Fri, 10 Feb 2012 08:00:05 -0500</pubDate>
<link>http://www.devshed.com/c/a/Perl/Subroutines-and-Functions-in-Perl/</link>
		<description><![CDATA[Subroutines and functions save time by letting you reuse code. This six-part series will show you how to create and use them in Perl. This article was excerpted from chapter six of the book Beginning Perl, Second Edition, written by James Lee (Apress; ISBN: 159059391X).]]></description>
		<content:encoded><![CDATA[When programming, there will naturally be activities we will want to do again and again: adding up the values in an array, stripping extraneous blank spaces from a string, getting infor mation into a hash in a particular format, and so on. It would be tedious to write out the code for each of these little processes every time we need to use one, and maintaining each code segment would be horrific: if there's a bug in the way we've coded the activity, we'll have to go through and find each one of them and fix it. It would be better if we could define a particular process just once, and then be ...]]></content:encoded>
<category>Perl</category>
<guid isPermaLink="true">http://www.devshed.com/c/a/Perl/Subroutines-and-Functions-in-Perl/</guid>
</item>
<item><title>Perl Basics: Writing and Debugging Programs</title>
<pubDate>Wed, 18 Jan 2012 11:00:05 -0500</pubDate>
<link>http://www.devshed.com/c/a/Perl/Perl-Basics-Writing-and-Debugging-Programs/</link>
		<description><![CDATA[In this third part of a three-part article series on the basics of Perl programming, you'll learn how to use escape sequences in your programming, and how to use the Perl debugger. This article is excerpted from chapter one of the book Beginning Perl, Second Edition by James Lee (Apress; ISBN: 159059391X).]]></description>
		<content:encoded><![CDATA[Escape Sequences  UTF8 gives us 65536 characters, and ASCII gives us 256 characters, but on the average keyboard, there's only a hundred or so keys. Even using the shift keys, there will still be some characters that you aren't going to be able to type. There'll also be some things that you don't want to stick in the middle of your program, because they would make it messy or confusing. However, you'll want to refer to some of these characters in strings that you output. Perl provides us with mechanisms called escape sequences as an alternative way of getting to them. We've already seen the us...]]></content:encoded>
<category>Perl</category>
<guid isPermaLink="true">http://www.devshed.com/c/a/Perl/Perl-Basics-Writing-and-Debugging-Programs/</guid>
</item>
<item><title>Structure and Statements in Perl</title>
<pubDate>Wed, 11 Jan 2012 11:00:06 -0500</pubDate>
<link>http://www.devshed.com/c/a/Perl/Structure-and-Statements-in-Perl/</link>
		<description><![CDATA[In this second part of a three-part series on Perl programming, you'll learn how to structure your programs, and how to use statements. This article is excerpted from chapter one of the book Beginning Perl, Second Edition by James Lee (Apress; ISBN: 159059391X).]]></description>
		<content:encoded><![CDATA[Program Structure  One of the things we want to develop throughout this book is a sense of good programming practice. Obviously this will not only benefit you while using Perl, but in almost every other programming language too. The most fundamental notion is how to structure and lay out the code in your source files. By keeping this tidy and easy to understand, you'll make your own life as a programmer easier.   Documenting Your Programs   As we mentioned earlier, a line starting with a hash, or pound sign ( # ), is treated as a comment, and ignored. This allows you to provide comments about ...]]></content:encoded>
<category>Perl</category>
<guid isPermaLink="true">http://www.devshed.com/c/a/Perl/Structure-and-Statements-in-Perl/</guid>
</item>
<item><title>First Steps in Perl</title>
<pubDate>Thu, 05 Jan 2012 10:30:04 -0500</pubDate>
<link>http://www.devshed.com/c/a/Perl/First-Steps-in-Perl/</link>
		<description><![CDATA[In this first part of a three-part series, you'll learn the fundamentals of programming in Perl. This article is excerpted from chapter one of the book Beginning Perl, Second Edition by James Lee (Apress; ISBN: 159059391X).]]></description>
		<content:encoded><![CDATA[Every programming language has a number of things in common. The fundamental concepts of programming are going to be the same, no matter what language in which you do them. In this chapter, we'll investigate the things you need to know before you start writing any programs at all. For instance:    What is programming anyway? What does it mean to program?     How do we structure programs, and make them easy to understand?     How do computers see numbers and letters?     How do we find and eliminate errors in our programs?  Of course, we'll be looking at these from a Perl perspective, and we'll...]]></content:encoded>
<category>Perl</category>
<guid isPermaLink="true">http://www.devshed.com/c/a/Perl/First-Steps-in-Perl/</guid>
</item>
<item><title>Completing Regular Expression Basics</title>
<pubDate>Thu, 10 Jun 2010 09:00:08 -0400</pubDate>
<link>http://www.devshed.com/c/a/Perl/Completing-Regular-Expression-Basics/</link>
		<description><![CDATA[In this conclusion to a four-part series on parsing and regular expression basics in Perl, we finish our study of regular expressions; you'll even learn how to create your own. This article is excerpted from chapter one of the book Pro Perl Parsing, written by Christopher M. Frenz (Apress; ISBN: 1590595041).]]></description>
		<content:encoded><![CDATA[Regexp::Common::Comments  This module generates regular expressions that match comments inserted into computer code written in a variety of programming languages (currently 43). The syntax to call these regular expressions is as follows, where   refers to the base comment matching functionality and   provides the descriptor that indicates the particular programming language:    $RE     For example, to match Perl and C++ comments, you can use the following:   $RE   $RE    Regexp::Common::Delimited  This base module provides the functionality required to match delimited strings. The syntax is si...]]></content:encoded>
<category>Perl</category>
<guid isPermaLink="true">http://www.devshed.com/c/a/Perl/Completing-Regular-Expression-Basics/</guid>
</item>
<item><title>Modifiers, Boundaries, and Regular Expressions</title>
<pubDate>Thu, 03 Jun 2010 09:00:09 -0400</pubDate>
<link>http://www.devshed.com/c/a/Perl/Modifiers-Boundaries-and-Regular-Expressions/</link>
		<description><![CDATA[In this third part to a four-part series on parsing and regular expressions in Perl, you will learn about cloistered pattern modifiers, boundary assertions, troubleshooting regular expressions, and more. This article is excerpted from chapter one of the book Pro Perl Parsing, written by Christopher M. Frenz (Apress; ISBN: 1590595041).]]></description>
		<content:encoded><![CDATA[Cloistered Pattern Modifiers   In the previous section, you saw how to apply pattern modifiers to an entire regular expression. It is also possible to apply these modifiers to just a portion of a given regular expression; however, the syntax is somewhat different. The first step is to define the subpattern to which you want the modifier to apply. You accomplish this by placing the subpattern within a set of parentheses. Immediately after the open parenthesis, but before the subpattern, you add ?modifiers: . For example, if you want to match either ABC or AbC , rather than using alternation, yo...]]></content:encoded>
<category>Perl</category>
<guid isPermaLink="true">http://www.devshed.com/c/a/Perl/Modifiers-Boundaries-and-Regular-Expressions/</guid>
</item>
<item><title>Quantifiers and Other Regular Expression Basics</title>
<pubDate>Thu, 27 May 2010 09:00:11 -0400</pubDate>
<link>http://www.devshed.com/c/a/Perl/Quantifiers-and-Other-Regular-Expression-Basics/</link>
		<description><![CDATA[In this second part of a four-part series on parsing and regular expression basics in Perl, you'll learn about quantifiers, modifiers, and more. This article is excerpted from chapter one of the book Pro Perl Parsing, written by Christopher M. Frenz (Apress; ISBN: 1590595041).]]></description>
		<content:encoded><![CDATA[Quantifiers   As you saw in the previous section, you can create a simple regular expression by simply putting the characters or the name of a variable containing the characters you seek to match between a pair of forward slashes. However, suppose you want to match the same sequence of characters multiple times. You could write out something like this to match three instances of Yes in a row:    /YesYesYes/   But suppose you want to match 100 instances? Typing such an expression would be quite cumbersome. Luckily, the regular expression engine allows you to use quantifiers to accomplish just s...]]></content:encoded>
<category>Perl</category>
<guid isPermaLink="true">http://www.devshed.com/c/a/Perl/Quantifiers-and-Other-Regular-Expression-Basics/</guid>
</item>
<item><title>Parsing and Regular Expression Basics</title>
<pubDate>Thu, 20 May 2010 09:00:10 -0400</pubDate>
<link>http://www.devshed.com/c/a/Perl/Parsing-and-Regular-Expression-Basics/</link>
		<description><![CDATA[Parsing helps us to extract the information we need from the mounds of data available. Regular expressions assist us in the hunt. This four-part article series will show you how to use Perl with regular expressions to accomplish your parsing tasks. It is excerpted from chapter one of the book Pro Perl Parsing, written by Christopher M. Frenz (Apress; ISBN: 1590595041).]]></description>
		<content:encoded><![CDATA[The dawn of a new age is upon us, an information age, in which an ever-increasing and seemingly endless stream of new information is continuously generated. Information discovery and knowledge advancements occur at such rates that an ever-growing num ber of specialties is appearing, and in many fields it is impossible even for experts to master everything there is to know. Anyone who has ever typed a query into an Internet search engine has been a firsthand witness to this information explosion. Even the most mundane terms will likely return hundreds, if not thousands, of hits. The sciences, e...]]></content:encoded>
<category>Perl</category>
<guid isPermaLink="true">http://www.devshed.com/c/a/Perl/Parsing-and-Regular-Expression-Basics/</guid>
</item>
<item><title>Hash Functions</title>
<pubDate>Thu, 06 May 2010 09:00:10 -0400</pubDate>
<link>http://www.devshed.com/c/a/Perl/Hash-Functions/</link>
		<description><![CDATA[In this second part of a two-part series on hashes in Perl, you'll learn about hash functions and hashes in different contexts. This article is excerpted from chapter five of the book Beginning Perl, written by James Lee (Apress; ISBN: 159059391X).]]></description>
		<content:encoded><![CDATA[Hash in List Context  When we discussed lists and arrays, we spent a lot of time talking about the difference between list and scalar context. Let's look at what happens when we evaluate a hash in list context. This is demonstrated with the following program:   #!/usr/bin/perl -w # listcontext.pl  use strict;  my %person = (     name  = gt; 'John Doe',     age   = gt; 39,     phone = gt; '555-1212',     city  = gt; 'Chicago'  );  my @data = %person;  print  quot;list context:  quot;, join( quot;| quot;, @data),  quot;\n quot;; print  quot;another way:  quot;, %person,  quot;\n quot;;   This pr...]]></content:encoded>
<category>Perl</category>
<guid isPermaLink="true">http://www.devshed.com/c/a/Perl/Hash-Functions/</guid>
</item>
<item><title>Hashes</title>
<pubDate>Thu, 29 Apr 2010 09:00:14 -0400</pubDate>
<link>http://www.devshed.com/c/a/Perl/Hashes/</link>
		<description><![CDATA[Hashes in Perl aren't really that hard to understand; they're not that much harder than understanding how a phone book works. This article introduces you to hashes, what they do, and how to use them. It is excerpted from chapter five of the book Beginning Perl, written by James Lee (Apress; ISBN: 159059391X).]]></description>
		<content:encoded><![CDATA[We have talked about two types of data: scalars and arrays. Scalars are single pieces of infor mation, while arrays are single variables containing many different values.  Alternatively, some things are better expressed as a set of one-to-one correspondences. A phone book, for example, is a set of correspondences between addresses and phone numbers. In Perl, structures like the phone book are represented as a hash. Some people call them associative arrays because they look a bit like arrays where each element is associated with another value. Most Perl programmers find that a bit too long-wind...]]></content:encoded>
<category>Perl</category>
<guid isPermaLink="true">http://www.devshed.com/c/a/Perl/Hashes/</guid>
</item>
<item><title>Scalars: Building a Currency Converter</title>
<pubDate>Thu, 22 Apr 2010 09:00:10 -0400</pubDate>
<link>http://www.devshed.com/c/a/Perl/Scalars-Building-a-Currency-Converter/</link>
		<description><![CDATA[In this conclusion to a five-part series on scalars in Perl, we'll put everything we've learned together to build a currency converter. This article is excerpted from chapter two of the book Beginning Perl, written by James Lee (Apress; ISBN: 159059391X).]]></description>
		<content:encoded><![CDATA[Multiple Assignments   We've said that = is an operator, but does that mean it returns a value? Well, actually it does, it returns whatever was assigned. This allows us to set several variables up at once. Here's a simple example of this; read it from right to left:  $d = $c = $b = $a = 1;  First we set $a to 1, and the result of this is 1. $b is set with that, the result of which is 1. And so it goes on.  Scoping  All the variables we've seen so far in our programs have been global variables. That is, they can be seen and changed from anywhere in the program. For the moment, that's not too mu...]]></content:encoded>
<category>Perl</category>
<guid isPermaLink="true">http://www.devshed.com/c/a/Perl/Scalars-Building-a-Currency-Converter/</guid>
</item>
<item><title>Scalars and Variables</title>
<pubDate>Thu, 15 Apr 2010 09:00:08 -0400</pubDate>
<link>http://www.devshed.com/c/a/Perl/Scalars-and-Variables/</link>
		<description><![CDATA[In this fourth part of a five-part series on scalars in Perl, you learn how to compare the value of strings; we'll also wrap up our discusssion of operators and move on to variables. This article  is excerpted from chapter two of the book Beginning Perl, written by James Lee (Apress; ISBN: 159059391X).]]></description>
		<content:encoded><![CDATA[String Comparison   As well as comparing the value of numbers, we can compare the value of strings. This does not mean we convert a string to a number, although if you say something like  quot;12 quot;  gt;  quot;30 quot; , Perl will convert to numbers for you. This means we can compare the strings alphabetically:  Bravo  comes after  Alpha  but before  Charlie , for instance.  In fact, it's more than alphabetical order; the computer is using either ASCII or Unicode internally to represent the string, and so has converted it to a series of numbers in the relevant sequence. This means, for exam...]]></content:encoded>
<category>Perl</category>
<guid isPermaLink="true">http://www.devshed.com/c/a/Perl/Scalars-and-Variables/</guid>
</item>
<item><title>Scalars and Boolean and String Operators</title>
<pubDate>Thu, 08 Apr 2010 09:00:10 -0400</pubDate>
<link>http://www.devshed.com/c/a/Perl/Scalars-and-Boolean-and-String-Operators/</link>
		<description><![CDATA[In this third part of a five-part series on scalars in Perl, we continue our study of operators, moving on to Boolean and string operators. This article is excerpted from chapter two of the book Beginning Perl, written by James Lee (Apress; ISBN: 159059391X).]]></description>
		<content:encoded><![CDATA[The NOT Operator  Finally, you can flip the number completely, and replace all the 1s by 0s and vice versa. This is done with the not, or ~, operator:    85   01010101 170   10101010   Let's see, however, what happens when we try this in Perl:   #!/usr/bin/perl -w # bitop2.pl  print  quot;NOT 85 is  quot;, ~85,  quot;\n quot;;   Depending on the computer, the answer might be   $ perl bitop2.pl NOT 85 is 4294967210 $   Your answer might be different, and we'll explain why in a second.  Why is it so big? Well, let's look at that number in binary to see if we can find a clue as to what's going on...]]></content:encoded>
<category>Perl</category>
<guid isPermaLink="true">http://www.devshed.com/c/a/Perl/Scalars-and-Boolean-and-String-Operators/</guid>
</item>
<item><title>Scalars and Operators</title>
<pubDate>Thu, 01 Apr 2010 09:00:09 -0400</pubDate>
<link>http://www.devshed.com/c/a/Perl/Scalars-and-Operators/</link>
		<description><![CDATA[In this second part of a five-part series on scalars in Perl, you'll learn about operators (both arithmetic and bitwise), among other things. This article is excerpted from chapter two of the book Beginning Perl, written by James Lee (Apress; ISBN: 159059391X).]]></description>
		<content:encoded><![CDATA[Alternative Delimiters  That's all very well, of course, until we want a / in the string. Suppose we want to replace  Slashdot  with  /. -now we're back where we started, having to escape things again. Thankfully, Perl allows us to choose our own delimiters so we don't have to stick with // . Any nonalphanumeric (that is, nonalphabetic and nonnumeric) character can be used as a delimiter, provided it's the same on both sides of the text. Furthermore, you can use    Perl treats numbers and strings on an equal footing, and where necessary, Perl converts between strings, integers, and floating po...]]></content:encoded>
<category>Perl</category>
<guid isPermaLink="true">http://www.devshed.com/c/a/Perl/Scalars-and-Operators/</guid>
</item>
<item><title>Scalars</title>
<pubDate>Thu, 25 Mar 2010 09:00:09 -0400</pubDate>
<link>http://www.devshed.com/c/a/Perl/Scalars/</link>
		<description><![CDATA[If you're writing a program that involves computation, you're going to come face to face with some basic programming concepts. This article, the first of a five-part series, will explain scalars, one of the basic ideas of programming in Perl. It is excerpted from chapter two of the book Beginning Perl, written by James Lee (Apress; ISBN: 159059391X).]]></description>
		<content:encoded><![CDATA[The essence of programming is computation-we want the computer to do some work with the input (the data we give it). Very rarely do we write programs that tell us something we already know. Even more rarely do we write programs that do nothing interesting with our data at all. So, if we're going to write programs that do more than say hello to us, we're going to need to know how to perform computations, or operations on our data.  In this chapter, we will discuss several important basic ideas of programming in Perl:   Scalars: Single values, either numbers or strings.     Variables: A place to...]]></content:encoded>
<category>Perl</category>
<guid isPermaLink="true">http://www.devshed.com/c/a/Perl/Scalars/</guid>
</item>
</channel>
</rss>

