From Wikiversity
Jump to navigation Jump to search

Perl (wiktionary | wikipedia | wikibooks)
Portal:Engineering and Technology > School:Computer Science > Topic:Computer Programming > Topic:Perl

Perl, like Python and PHP is an essential part of a learning path such as Open Source Degree Confirmation, The Art of Computer Programming, Linux Server Administration or Web services Using LAMP.

LAMP: Linux | Apache | MySQL | PostgreSQL | Perl || Python || PHP.

Prerequisites[edit | edit source]

The usual Introduction to Programming and Introduction to Programming Logic, plus a broad selection of of CS topics of interest - to you. Walk your own path.

A suggestion: If you are leaning toward Web applications... A large percentage of Perl's real-world application has to do with the Web and Web Programming. If this is the route you're taking, Perl might be for you. If so, some fundamentals of Web Design are in order, particularly Web Design/Dynamic Websites and Web Design/Dynamic Websites/Creating Database Tables. While these learning materials lean toward Javascript and PHP, learners should be aware that Perl may offer a practical alternative in many cases.

Learners are advised to gain some understanding of related topics: CGI, Python, Databases, etc. and to approach the study of Perl with an open mind as a part of a larger study of Computer Science. Perl is many things, but it is NOT a panacea, silver bullet or stand-alone programming language. Its strength is being able to adapt and contribute to its environment.

Course Description[edit | edit source]

Perl has a rich set of text-processing tools, a flexible syntax, Unix-friendly familiarity, excellent documentation and a massive support community. We will learn that Perl comes with a host of standard built-in functions and another host of available functions that help the programmer write solid, reliable code. We will start with whole programs that touch the gamut of statements, variables, operators, functions, expressions, flow control, subroutines, objects and on to real-time, real-life, practical extraction and reporting linguistics.

Contrary to some schools of thought, Perl is not in competition with Python, PHP or even C/C++ but rather complementary providing a "glue" for filling in specific niché jobs. This course will show how to get tasks done and at the same time show some philosophical reasons why to use Perl for those specific jobs.

As we dig a little deeper, we'll learn about Perl within the context of applied Computer Science as a component of the ACS Practicum. We will use Perl to help demonstrate modularity, human-machine interfaces, database principles, API fundamentals, inter-process communication, lexical scoping and other theoretical aspects of Computer Science. 22:08, 10 December 2007 (UTC)

Lessons[edit | edit source]

See a Perl Hello, World!

Learning guides[edit | edit source]

Tutorials[edit | edit source]

Under Development and Wish List[edit | edit source]

These are lessons which have been suggested, or have been started but are still stub articles. Please help by adding to the content here.

Enrolled[edit | edit source]

Please sign below if you're participating in the Perl topic. Use a hash mark, 4 tildes and any comment to sign.

  1. AdamG 15:57, 1 October 2006 (UTC) I'm interested in learning Perl. I know python scripting and would like to learn other languages for perspective/comparison.
  2. CQ 18:11, 10 October 2006 (UTC) I'm a novice Perl coder. I like the language and features of Perl and I helped create the WikiaPerl site, which desires to participate here at Wikiversity.
  3. Matthewdavid 10:25, 29 December 2006 (UTC) I am learning perl. I am a sys admin. Much of what I administrate is written in Perl and I'd like to be able to modify and create in the language.
  4. Cavac 2007-01-04; i wrote some Perl tutorials for my Blog and i'm gonna port them to Wikiversity.
  5. Ikluft 23:07, 21 July 2007 (UTC) I'm a Perl programmer. I'll look for chances to help in my spare time. I started with turning the references section from a wish list to the links the original author apparently wanted.
  6. Patch 01:31, 21 December 2007 (UTC) I'm a novice perl programmer. I need something I can do on the fly and will stand up to my demands. Perl seems perfect for the job.
  7. --Albstp 11:53, 11 March 2008 (UTC)I am a newbie to Perl. I need to study perl as it is really interesting. I need to do some good perl programming.
  8. Spookcomix 00:20, 3 November 2008 (UTC) I'm currently transitioning from network administration to technical writing for a company that uses Perl behind their flagship products. I'm hoping to chip in at some point.
  9. Boris Suvorov 21:51pm, 30 November 2008 (UTC) I'm in need to learn perl to assist my company with special tools for developers. I also want to understand how Perl is applied to Web programming.
  10. BJ Covert Action 18:34, 16 January 2009 (UTC) I'm in the process of learning Perl for both recreation and professional purposes. I would love to help others learn by relating my own experience
  11. KStulce 12:59PM, 16 March 2009 (UTC) I've primarily used Perl in job-related workflow applications with the [PlanetPress Suite] for various customers, though I don't get the opportunity to use Perl very often. I adore Perl and have scoured the Internet for various Perl resources, and I have also purchase many of the O'Reilly books, which I tend to read when the opportunity arises for new projects. I'm in need to stay current and knowledgeable with Perl, even to the point of making up personal projects to stay on par, which I have seen posted in Topic_talk:Perl.

Resources[edit | edit source]

Search for Perl on Wikipedia.
Wikibooks has a book on the topic of Perl Programming.

Documentation[edit | edit source]

The following subsections refer to official Perl documentation available from CPAN. These pages are also available locally by the same names as manpages or via POD documentation on any Unix (or Cygwin) perl installation.

Perl Overview[edit | edit source]

  • perl Perl overview
  • perlintro Perl introduction for beginners
  • perltoc Perl documentation table of contents

Perl Tutorials[edit | edit source]

  • perllol Perl data structures: arrays of arrays

Perl Reference Manual[edit | edit source]

  • perlmod Perl modules: how they work
  • perlmodlib Perl modules: how to write and use
  • perlmodstyle Perl modules: how to write modules with style
  • perlmodinstall Perl modules: how to install from CPAN
  • perlnewmod Perl modules: preparing a new module for distribution
  • perlutil utilities packaged with the Perl distribution

Perl Internals and C Language Interface[edit | edit source]

  • perlembed Perl ways to embed perl in your C or C++ application
  • perldebguts Perl debugging guts and tips
  • perlxstut Perl XS tutorial
  • perlxs Perl XS application programming interface
  • perlclib Internal replacements for standard C library functions
  • perlguts Perl internal functions for those doing extensions
  • perlcall Perl calling conventions from C
  • perlapi Perl API listing (autogenerated)
  • perlintern Perl internal functions (autogenerated)
  • perliol C API for Perl’s implementation of IO in Layers
  • perlapio Perl internal IO abstraction interface

Miscellaneous[edit | edit source]

  • perldoc Look up Perl documentation in Pod format

Language-Specific[edit | edit source]

  • perlcn Perl for Simplified Chinese (in EUC-CN)
  • perljp Perl for Japanese (in EUC-JP)
  • perlko Perl for Korean (in EUC-KR)
  • perltw Perl for Traditional Chinese (in Big5)

Platform-Specific[edit | edit source]