Drew Murphy Drew Ebelhar. History December 18, 1987 Creator- Larry Wall Objective: To develop a general purpose Unix scripting language to make report.

Slides:



Advertisements
Similar presentations
Agenda Definitions Evolution of Programming Languages and Personal Computers The C Language.
Advertisements

Molecular Biomedical Informatics Web Programming 1.
Copyright © 1998 by Addison Wesley Longman, Inc. 1 Chapter One Preliminaries, including –Why study PL concepts? –Programming domains –PL evaluation criteria.
Object Oriented Programming in Java George Mason University Fall 2011
Perl Practical Extraction and Report Language Senior Projects II Jeff Wilson.
CIS 101: Computer Programming and Problem Solving Lecture 8 Usman Roshan Department of Computer Science NJIT.
Programming Languages Language Design Issues Why study programming languages Language development Software architectures Design goals Attributes of a good.
Ryan Piercy Jon Hooker. Invented by Nicklaus Wirth Named After Blaise Pascal Pascal’s Triangle Invented a Digital Computer.
ISBN Chapter 1 Preliminaries. Copyright © 2004 Pearson Addison-Wesley. All rights reserved.1-2 Chapter 1 Topics Motivation Programming Domains.
Programming Languages Structure
Python Jordan Miller and Lauren Winkleman CS 311 Fall 2011.
Perl Lecture #1 Scripting Languages Fall Perl Practical Extraction and Report Language -created by Larry Wall -- mid – 1980’s –needed a quick language.
CSE305 Programming Languages Notes are based primarily on Sebesta text. Quotes are from Sebesta text, unless otherwise noted. Sources other than Sebesta.
Lecture 1: Overview of Java. What is java? Developed by Sun Microsystems (James Gosling) A general-purpose object-oriented language Based on C/C++ Designed.
CSE 1301 J Lecture 2 Intro to Java Programming Richard Gesick.
Python Introduction.
Introduction to Programming G50PRO University of Nottingham Unit 1 : Introduction Paul Tennent
CSC 110 A 1 CSC 110 Introduction to Python [Reading: chapter 1]
Program development & programming languages Chapter 13.
Ch 1. Introduction Dr. Bernard Chen Ph.D. University of Central Arkansas Spring 2012.
Introduction and Overview of the Course CS 480/680 – Comparative Languages.
CS 355 – Programming Languages
High-level Languages.
COMPUTER PROGRAMMING Source: Computing Concepts (the I-series) by Haag, Cummings, and Rhea, McGraw-Hill/Irwin, 2002.
1 Perl Perl basics Perl Elements Arrays and Hashes Control statements Operators OOP in Perl.
1 Computing Software. Programming Style Programs that are not documented internally, while they may do what is requested, can be difficult to understand.
Ruby! Ronald L. Ramos. What is Ruby? Ruby is a scripting language designed by Yukihiro Matsumoto, also known as Matz. It runs on a variety of platforms,
Programming for Beginners Martin Nelson Elizabeth FitzGerald Lecture 13: An Introduction to C++
Copyright © 2006 Addison-Wesley. All rights reserved.1-1 ICS 410: Programming Languages.
Java Programming, Second Edition Chapter One Creating Your First Java Program.
Copyright © 2007 Addison-Wesley. All rights reserved.1-1 Reasons for Studying Concepts of Programming Languages Increased ability to express ideas Improved.
A very basic overview of Server-Side Scripting Or what is PHP, Perl, Python, Ruby and what can they do for me?
Guide to Programming with Python Chapter One Getting Started: The Game Over Program.
Compiled and Interpreted Languages CS 480/680 – Comparative Languages.
Introduction to Perl Yupu Liang cbio at MSKCC
Perl Language Yize Chen CS354. History Perl was designed by Larry Wall in 1987 as a text processing language Perl has revised several times and becomes.
Web Server Administration Chapter 7 Installing and Testing a Programming Environment.
TCL TK. Tcl/Tk C functions can become Tcl commands that are invoked interactively Tk = scriptable, portable user interface –Windows, X (Unix), MacOS,
 2001 Prentice Hall, Inc. All rights reserved. Chapter 1 – Introduction to Computers, the Internet and the World Wide Web Outline 1.1Introduction 1.2What.
Copyright © 2006 The McGraw-Hill Companies, Inc. Programming Languages 2nd edition Tucker and Noonan Chapter 1 Overview A good programming language is.
How to execute Program structure Variables name, keywords, binding, scope, lifetime Data types – type system – primitives, strings, arrays, hashes – pointers/references.
WHY ARE WE HERE? Nick Derrickson BA371, Winter 2016.
Java Programming, Second Edition Chapter Twelve Advanced Inheritance Concepts.
 History  Ease of use  Portability  Standard  Security & Privacy  User support  Application &Popularity Today  Ten Most Popular Programming Languages.
Python 1 SIGCS 1 Intro to Python March 7, 2012 Presented by Pamela A Moore & Zenia C Bahorski 1.
Scripting Languages Info derived largely from Programming Language Pragmatics, by Michael Scott.
PROGRAMMING VOCABULARY. The Words ◦ FORTRAN ◦ COBOL ◦ PASCAL ◦ BASIC ◦ C ◦ Java ◦ Flash ◦ PERL ◦ Ruby ◦ Python.
Ada, Scheme, R Emory Wingard. Ada History Department of Defense in search of high level language around Requirements drafted for the language.
Perl By Warren David Cocke Greg Wallace Josh Johnson.
Perl Ed Finegan. Overview of Pearl Perl is a high-level programming language written by Larry Wall. It derives from the C programming language and to.
Introduction to Computer Programming Concepts M. Uyguroğlu R. Uyguroğlu.
A S P. Outline  The introduction of ASP  Why we choose ASP  How ASP works  Basic syntax rule of ASP  ASP’S object model  Limitations of ASP  Summary.
HIGH-LEVEL LANGUAGE PROGRAMMING PARADIGMS. Programming languages come in many forms or 'paradigms'. Each form of language offers advantages over other.
High-level language programming paradigms. Programming languages come in many forms or 'paradigms'. Each form of language offers advantages over other.
Perl A language for Systems and Network Administration and Management.
Programming Languages 2nd edition Tucker and Noonan
Basic 1960s It was designed to emphasize ease of use. Became widespread on microcomputers It is relatively simple. Will make it easier for people with.
NOCTI Study Guide #2.
PROGRAMMING LANGUAGES
PERL.
PERL.
Introduction of Programming Languages
Introduction Python is an interpreted, object-oriented and high-level programming language, which is different from a compiled one like C/C++/Java. Its.
Cory Redmond Zachary Trim Jeffery Dumas
Programming Basics Web Programming.
Programming Vocabulary
Perl Kurtis Hage.
7 Best Programming Languages Based as per Earnings & Opportunities
Introduction to Python
Reasons To Study Programming Languages
Presentation transcript:

Drew Murphy Drew Ebelhar

History December 18, 1987 Creator- Larry Wall Objective: To develop a general purpose Unix scripting language to make report processing easier. Gained widespread popularity in the late ‘90s as a CGI scripting language. Perl 5 is the latest version, with Perl 6 currently under development.

Changes from 5 to 6 Most changes attempt to normalize language. Adds static typing to the already present dynamic typing. Makes object-oriented programming easier. Introduces feature similar to interfaces in Java. Syntactical simplification.

Brief Overview Perl is a high-level general purpose Unix based scripting language Named “Perl” after the Parable of the Pearl in the Gospel of Matthew. Occasionally backronymed Practical Extraction and Report Language. Derived heavily from C. Together with Python and PHP, form the three P’s of the internet, which denote the most popular dynamic languages for writing web applications.

Functional TEXT MANIPULATION CGI scripting Graphics programming System administration Network programming Bioinformatics Lovingly referred to as the “Swiss army chainsaw of programming languages”, as well as the “duct tape that holds the internet together”. ity

Who’s using Perl? Amazon Craigslist IMDb Yahoo Priceline

Design While Fortran and C attempt to make efficient use of the expensive hardware, Perl makes efficient use of expensive programmers by making code easy to write. Perl is extremely generous to the programmer at the expense of CPU and memory resources The compiler is very forgiving and as a result debugging can be difficult Does not enforce any particular paradigm(procedural,OOP,functional)

Sample Program – Hello World #!/usr/bin/perl use strict; use warning; my $hello = "Hello World!"; print $hello;

Some Code $ perl myscript.pl $myVar = 10; $myOtherVar = 9; $myString = “Some = (“An”,”Array”,”of”,”Strings”); if($myVar != $myOtherVar) { print(“Ten does most definitely not equal nine.\n”); else { print(“The universe exploded.\n”); } for $p (1..10) { print(“$p\n”); }

Readability Pros None. Cons Usually many ways to accomplish an operation. Tolerates exceptions to its rules. Large number of language primitives.

Writability Pros Easy to learn, yet extensive. Supports many programming paradigms, such as objected-oriented, procedural, and functional programming. Many built-in functions, such as sorting. Can interact with other languages within code. Cons No writing standard for the language exists.

Reliability Pros Dynamic type checking. Cons Doesn’t require variable declaration unless the “use strict;” command is used. Compiler is not strict, so bugs are difficult to find when present.

Cost Pros Easy to learn, so cost of training programmers is cheap. Free Uses hybrid implementation system, so compilation time is faster. Available on many platforms. Cons Difficult to maintain or update programs, as there is generally poor readability.

References