SlideShare a Scribd company logo
1 of 23

      
       Границы моего языка означают границы моего мира. (5.6) 
       
       © Людвиг Витгенштейн, 
       Логико-философский трактат

      
       Perl 
      
     
      
       
      
     
      
       Practical Extraction and Report Language  
       Практический язык для извлечения данных и составления отчётов

      
       Появление 
      
     
      
       1987 г., Larry Wall,  разработка утилиты генерации  
       отчетов  по конференциям Usenet 
      
     
      
       Доступные инструменты: 
      
     
      
       С 
       shell 
       sed 
       awk 
       Lisp 
      
     
      
       Pearl

      
       Larry Wall 
      
     
      
       
      
     
      
       Образование: лингвист 
       Специализация во время учебы: африканские языки 
       
       Автор программ: 
       ,[object Object],

      
       Добродетели  программиста 
      
     
      
       1. Лень 
       2. Нетерпение 
       3. Самомнение 
       (с) Larry Wall, Camel book

      
       Perl 
      
     
      
       Высокоуровневый интерпретируемый динами-ческий язык программирования общего назначения 
       
       Особенности: 
       ,[object Object],

      
       Свобода Perl 
      
     
      
       TIMTOWTDI 
       
       "There is more than one way to do it":  
       "есть более одного способа сделать что-то"

      
       Принципы 
      
     
      
       ,[object Object],

      
       Принципы 
      
     
      
       ,[object Object],

      
       Типы данных 
      
     
      
       
       
       
       
       
        
         Тип 
        
        
         Сим 
         вол 
        
        
         При 
         мер 
        
        
         Описание 
        
       
       
        
         Скаляр 
        
        
         $ 
        
        
         $foo 
        
        
         единиченое значение; может быть числом, строкой, указанием на файл, а так же ссылкой. 
        
       
       
        
         Массив 
        
        
         @ 
        
        
         @foo 
        
        
         Упорядоченная коллекция скаляров. 
        
       
       
        
         Хеш-таблица 
        
        
         % 
        
        
         %foo 
        
        
         Коллекция из пар строка-скаляр; строки называются ключами, а скаляры — значениями. Синоним — Ассоциативный массив. 
        
       
       
        
         Указание на файл 
        
        
         нет 
        
        
         $foo или FOO 
        
        
         Представление открытого файла или другой цели, открытой для чтения и/или записи. 
        
       
       
        
         Функция 
        
        
         & 
        
        
         &foo 
        
        
         Отрезок кода, который принимает аргументы, исполняет действия и возвращает значения.

      
       Порог вхождения 
      
     
      
       Адаптируемый 
       
       Начальный 
       
       
       
       Продвинутый 
       
       
       
       Глубокий

      
       Краткие формы 
      
     
      
       if ($a==5) { 
       $b=4; 
       } 
       $b=4 if ($a==5); 
       ($a==5) && $b=4; 
       
       ################################ 
       
       unless ($a==5) { 
       $b=4; 
       } 
       $b=4 unless ($a==5); 
       ($a==5) || $b=4;

      
       Контекст 
      
     
      
       open FILE, "data.txt"; 
       
       $a = <FILE>; 
       print $a; 
       
       @b = <FILE>; 
       print @b; 
       
       close FILE;

      
       CPAN 
      
     
      
       Comprehensive Perl Archive Network — «всеобъемлющая сеть архивов Perl» 
       
       www.cpan.org 
       
       2010-12-18 online since 1995-10-26 
       8158 MB 228 mirrors 
       8630 authors 18922 modules

      
     
      
     
      
       
      
     
      
       http://xkcd.com/224/

      
       Мифы Perl 
      
     
      
       1. Perl мертв — на нем больше не пишут 
       
       2. Perl is write-only:  
       Программы тяжело читать/тести-ровать/ подерживать

      
       Возраст CPAN

      
       TIOBE.com

      
       Perl is write-only 
      
     
      
       Perl Best Practices 
       
       Perl::Tidy 
       
       Perl::Critic 
       
       Test::*

      
       Спасибо за внимание! 
      
     
      
       
      
     
      
       ,[object Object],

More Related Content

Similar to Perl introduction

Rupyru2007 Rastyagaev Ruby
Rupyru2007 Rastyagaev RubyRupyru2007 Rastyagaev Ruby
Rupyru2007 Rastyagaev Rubyemarkine
 
Scripting languages
Scripting languagesScripting languages
Scripting languagesLev Panov
 
Reia programming language
Reia programming languageReia programming language
Reia programming languagePhilipp Peerj
 
Dynamic Language Runtime
Dynamic Language RuntimeDynamic Language Runtime
Dynamic Language RuntimeGetDev.NET
 
The basic design of the PHP language
 The basic design of the PHP language The basic design of the PHP language
The basic design of the PHP languageVladimir Burdaev
 
Иван Стеценко: ЯП Zephir. Панацея или лечение?
Иван Стеценко: ЯП Zephir. Панацея или лечение?Иван Стеценко: ЯП Zephir. Панацея или лечение?
Иван Стеценко: ЯП Zephir. Панацея или лечение?Oleg Poludnenko
 
Regexp
RegexpRegexp
Regexpkumup
 
AI&BigData Lab. Варвара Красавина "Оптимизация поиска в системе LeadScanner с...
AI&BigData Lab. Варвара Красавина "Оптимизация поиска в системе LeadScanner с...AI&BigData Lab. Варвара Красавина "Оптимизация поиска в системе LeadScanner с...
AI&BigData Lab. Варвара Красавина "Оптимизация поиска в системе LeadScanner с...GeeksLab Odessa
 
Top10 доводов против языка Ruby
Top10 доводов против языка RubyTop10 доводов против языка Ruby
Top10 доводов против языка Rubyguest5f907e
 
Алексей Туля - А нужен ли вам erlang?
Алексей Туля - А нужен ли вам erlang?Алексей Туля - А нужен ли вам erlang?
Алексей Туля - А нужен ли вам erlang?Minsk Linux User Group
 
Alexander Dymo - IT-клуб Николаева - April 2011 - Ruby: Beaty and the Beast
Alexander Dymo - IT-клуб Николаева - April 2011 - Ruby: Beaty and the BeastAlexander Dymo - IT-клуб Николаева - April 2011 - Ruby: Beaty and the Beast
Alexander Dymo - IT-клуб Николаева - April 2011 - Ruby: Beaty and the BeastAlexander Dymo
 
разработка бизнес приложений (6)
разработка бизнес приложений (6)разработка бизнес приложений (6)
разработка бизнес приложений (6)Alexander Gornik
 
Александр Гладыш — Lua
Александр Гладыш — LuaАлександр Гладыш — Lua
Александр Гладыш — LuaYury Yurevich
 
Общие сведения о языке программирования Паскаль
Общие сведения о языке программирования ПаскальОбщие сведения о языке программирования Паскаль
Общие сведения о языке программирования ПаскальAndrey Dolinin
 
Pavel Rumantsev - Java Script
Pavel Rumantsev - Java ScriptPavel Rumantsev - Java Script
Pavel Rumantsev - Java Scriptbeloslab
 
введение в Javascript
введение в Javascriptвведение в Javascript
введение в Javascriptinqubick
 

Similar to Perl introduction (20)

Rupyru2007 Rastyagaev Ruby
Rupyru2007 Rastyagaev RubyRupyru2007 Rastyagaev Ruby
Rupyru2007 Rastyagaev Ruby
 
python vs ruby
python vs rubypython vs ruby
python vs ruby
 
Scripting languages
Scripting languagesScripting languages
Scripting languages
 
Reia programming language
Reia programming languageReia programming language
Reia programming language
 
Dynamic Language Runtime
Dynamic Language RuntimeDynamic Language Runtime
Dynamic Language Runtime
 
The basic design of the PHP language
 The basic design of the PHP language The basic design of the PHP language
The basic design of the PHP language
 
Иван Стеценко: ЯП Zephir. Панацея или лечение?
Иван Стеценко: ЯП Zephir. Панацея или лечение?Иван Стеценко: ЯП Zephir. Панацея или лечение?
Иван Стеценко: ЯП Zephir. Панацея или лечение?
 
Regexp
RegexpRegexp
Regexp
 
Perl course in SPbSU
Perl course in SPbSUPerl course in SPbSU
Perl course in SPbSU
 
Php
PhpPhp
Php
 
AI&BigData Lab. Варвара Красавина "Оптимизация поиска в системе LeadScanner с...
AI&BigData Lab. Варвара Красавина "Оптимизация поиска в системе LeadScanner с...AI&BigData Lab. Варвара Красавина "Оптимизация поиска в системе LeadScanner с...
AI&BigData Lab. Варвара Красавина "Оптимизация поиска в системе LeadScanner с...
 
Top10 доводов против языка Ruby
Top10 доводов против языка RubyTop10 доводов против языка Ruby
Top10 доводов против языка Ruby
 
Ruby basics
Ruby basicsRuby basics
Ruby basics
 
Алексей Туля - А нужен ли вам erlang?
Алексей Туля - А нужен ли вам erlang?Алексей Туля - А нужен ли вам erlang?
Алексей Туля - А нужен ли вам erlang?
 
Alexander Dymo - IT-клуб Николаева - April 2011 - Ruby: Beaty and the Beast
Alexander Dymo - IT-клуб Николаева - April 2011 - Ruby: Beaty and the BeastAlexander Dymo - IT-клуб Николаева - April 2011 - Ruby: Beaty and the Beast
Alexander Dymo - IT-клуб Николаева - April 2011 - Ruby: Beaty and the Beast
 
разработка бизнес приложений (6)
разработка бизнес приложений (6)разработка бизнес приложений (6)
разработка бизнес приложений (6)
 
Александр Гладыш — Lua
Александр Гладыш — LuaАлександр Гладыш — Lua
Александр Гладыш — Lua
 
Общие сведения о языке программирования Паскаль
Общие сведения о языке программирования ПаскальОбщие сведения о языке программирования Паскаль
Общие сведения о языке программирования Паскаль
 
Pavel Rumantsev - Java Script
Pavel Rumantsev - Java ScriptPavel Rumantsev - Java Script
Pavel Rumantsev - Java Script
 
введение в Javascript
введение в Javascriptвведение в Javascript
введение в Javascript
 

Perl introduction

  • 1. Границы моего языка означают границы моего мира. (5.6) © Людвиг Витгенштейн, Логико-философский трактат
  • 2. Perl Practical Extraction and Report Language Практический язык для извлечения данных и составления отчётов
  • 3. Появление 1987 г., Larry Wall, разработка утилиты генерации отчетов по конференциям Usenet Доступные инструменты: С shell sed awk Lisp Pearl
  • 4.
  • 5.
  • 6. Добродетели программиста 1. Лень 2. Нетерпение 3. Самомнение (с) Larry Wall, Camel book
  • 7.
  • 8. Свобода Perl TIMTOWTDI &quot;There is more than one way to do it&quot;: &quot;есть более одного способа сделать что-то&quot;
  • 9.
  • 10.
  • 11. Типы данных Тип Сим вол При мер Описание Скаляр $ $foo единиченое значение; может быть числом, строкой, указанием на файл, а так же ссылкой. Массив @ @foo Упорядоченная коллекция скаляров. Хеш-таблица % %foo Коллекция из пар строка-скаляр; строки называются ключами, а скаляры — значениями. Синоним — Ассоциативный массив. Указание на файл нет $foo или FOO Представление открытого файла или другой цели, открытой для чтения и/или записи. Функция & &foo Отрезок кода, который принимает аргументы, исполняет действия и возвращает значения.
  • 12. Порог вхождения Адаптируемый Начальный Продвинутый Глубокий
  • 13. Краткие формы if ($a==5) { $b=4; } $b=4 if ($a==5); ($a==5) && $b=4; ################################ unless ($a==5) { $b=4; } $b=4 unless ($a==5); ($a==5) || $b=4;
  • 14. Контекст open FILE, &quot;data.txt&quot;; $a = <FILE>; print $a; @b = <FILE>; print @b; close FILE;
  • 15. CPAN Comprehensive Perl Archive Network — «всеобъемлющая сеть архивов Perl» www.cpan.org 2010-12-18 online since 1995-10-26 8158 MB 228 mirrors 8630 authors 18922 modules
  • 16. http://xkcd.com/224/
  • 17. Мифы Perl 1. Perl мертв — на нем больше не пишут 2. Perl is write-only: Программы тяжело читать/тести-ровать/ подерживать
  • 18. Возраст CPAN
  • 19. TIOBE.com
  • 20.
  • 21.
  • 22. Perl is write-only Perl Best Practices Perl::Tidy Perl::Critic Test::*
  • 23.

Editor's Notes

  1. \n \n \n \n \n
  2. \n \n \n \n \n
  3. \n \n \n \n \n
  4. \n \n \n \n \n
  5. \n \n \n \n \n
  6. \n \n \n \n \n Лень \n качество, что заставляет вас идти на большие усилия, чтобы сократить общие расходы энергии. Она заставляет вас писать трудосберегающих программы, которые другие люди найдут полезными, и документ, что вы написали, поэтому вам не придется отвечать так много вопросов об этом. \n Нетерпение \n гнева вы чувствуете, когда компьютер лениться. Это заставляет вас писать программы, которые не просто реагировать на ваши потребности, но на самом деле предвидеть их. Или, по крайней мере претендовать на. \n Высокомерие \n Чрезмерная гордость, такие вещи Зевса zaps вас. Кроме того качества, что заставляет вас писать (и поддерживать) программы, которые другие люди не хотят говорить плохие вещи о. \n \n \n
  7. \n \n \n \n \n \n
  8. \n \n \n \n \n
  9. \n \n \n \n \n
  10. \n \n \n \n \n
  11. \n \n \n \n \n
  12. \n \n \n \n \n
  13. \n \n \n \n \n
  14. \n \n \n \n \n
  15. \n \n \n \n \n
  16. \n \n \n \n \n
  17. \n \n \n \n \n
  18. \n \n \n \n \n
  19. \n \n \n \n \n
  20. \n \n \n \n \n
  21. \n \n \n \n \n
  22. \n \n \n \n \n
  23. \n \n \n \n \n