The OpenNET Project
 
Поиск (теги):    НОВОСТИ (+) КОНТЕНТ WIKI MAN'ы ФОРУМ

19.12.2007 13:13  Релиз Perl 5.10.0

Анонсирован выход релиза Perl 5.10.0.

Perl 5.10.0 включает в себя некоторые элементы Perl 6, а также:

  • Новые возможности регуляных выражений
  • Оптимизированную систему распределения памяти
  • Переработанный механизм работы с UTF-8 строками
  • Возврат к старой схеме обработки сигналов (до 5.8)
  • В базовый состав включены модули: Math::BigInt::FastCalc, Compress::Zlib, IO::Zlib, Archive::Tar, Digest::SHA, ExtUtils::CBuilder, ExtUtils::ParseXS, Module::CoreList.
  • Реализован оператор "// " ($a // $b эквивалентно defined $a ? $a : $b; $c //= $d эквивалентно $c = $d unless defined $c).


  1. Главная ссылка к новости (http://search.cpan.org/~rgarcia/perl-5.1...)
  2. OpenNews: Языку Perl исполнилось 20 лет
  3. Differences between the 5.8.8 release and the 5.10.0 release.
Тип: К сведению
Ключевые слова: perl, (найти похожие документы)
При перепечатке указание ссылки на opennet.ru обязательно
Реклама
Обсуждение Линейный вид (Ajax) | Показать все | RSS
 
  • 1.1, vadiml, 13:22, 19/12/2007 [ответить] [смотреть все]
  • +/
    > Переработанный механизм работы с UTF-8 строками

    это, наверное, самое нужное, а то приходится на каждом углу указывать что используется utf8 и всё равно проверять правильно ли используется

     
     
  • 2.2, зю, 15:05, 19/12/2007 [^] [ответить] [смотреть все]
  • +/
    а где именно надо указывать?
    я может что-то делаю не так, но ни в одном месте у меня нет указания на utf8 и все строки таковыми и остаются без каких-либо телодвижений.
    юзаю бздю и линукс, правда, все окружение по возможности всегда utf8.
    кстати, перл и выбрал из-за того что никакого гимора с юникодом.
     
     
  • 3.3, fennel, 16:16, 19/12/2007 [^] [ответить] [смотреть все]
  • +/
    А ты попробуй regexp с русскими буквами сделать. Классы русских букв не работают.
     
     
  • 4.7, 2l00p, 07:44, 21/12/2007 [^] [ответить] [смотреть все]
  • +/
    Linux a6m 2.6.18-4-k7 #1 SMP Mon Mar 26 17:57:15 UTC 2007 i686 GNU/Linux

    LANG=ru_RU.UTF-8
    LC_CTYPE="ru_RU.UTF-8"
    LC_NUMERIC="ru_RU.UTF-8"
    LC_TIME="ru_RU.UTF-8"
    LC_COLLATE="ru_RU.UTF-8"
    LC_MONETARY="ru_RU.UTF-8"
    LC_MESSAGES="ru_RU.UTF-8"
    LC_PAPER="ru_RU.UTF-8"
    LC_NAME="ru_RU.UTF-8"
    LC_ADDRESS="ru_RU.UTF-8"
    LC_TELEPHONE="ru_RU.UTF-8"
    LC_MEASUREMENT="ru_RU.UTF-8"
    LC_IDENTIFICATION="ru_RU.UTF-8"
    LC_ALL=

    This is perl, v5.8.8 built for i486-linux-gnu-thread-multi

    ------------------
    #!/usr/bin/perl -w

    use encoding "utf8";

    $_ = "Жизнь, она как жёрдочка в курятнике - короткая и вся в дерьме.";

    s/\w{8}/СЛОВО/g;
    print $_;
    <>;
    ------------------

    Всё отлично работает.

     
  • 3.4, angra, 21:48, 19/12/2007 [^] [ответить] [смотреть все]
  • +/
    Поэкспериментируй с tr, например замени часть латинских букв вроде c,m,o,a на русские или наоборот.
     
  • 1.5, MicRO, 08:37, 20/12/2007 [ответить] [смотреть все]  
  • +/
    угу регулярка+utf был жескачь, нуна щас 5.10 потестить поглядеть как работает
     
  • 1.6, Stanislaus, 15:54, 20/12/2007 [ответить] [смотреть все]  
  • +/
    Ураа!

    Новый switch воодушевляет.
    given ($foo) {
        when (/^abc/) { $abc = 1; }
        when (/^def/) { $def = 1; }
        when (/^xyz/) { $xyz = 1; }
        default { $nothing = 1; }
    }
    Насчет плохой работы utf8:
    use utf8; # чтобы указать, что исходник программы написан с использованием utf-8
    # если данные поступают из неизвестного источника и Perl не может определить, что это utf-8:
    # Используйте модуль Encode
    # то есть, например, чтобы
    my ($data) = $sth->fetchrow_array;
    $data =~ s/морожное/пирожное/gi;
    # сработало нормально, нужно указать Perl, что исходник в UTF-8, и скорее всего бит Unicode в $data не установлен.
    use utf8;
    use Encode;
    ...
    my ($data) = map {Encode::decode('UTF-8',$_)} $sth->fetchrow_array;
    $data =~ s/морожное/пирожное/gi;

     
  • 1.8, Аноним, 10:39, 26/12/2007 [ответить] [смотреть все]  
  • +/
    про смарт-матчи зря забыли упомянуть... весь текст скрыт [показать]
     

    Ваш комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:
     
    Навигация
     
     Новости для экспорта XML
     В социальных сетях:  twitter    
     Сводные | за день | мини-новости
     Разделы новостей
     Что нового на OpenNet
     Поиск в новостях
     Новые комментарии
     Добавить свою новость

    Важное
    - 19.09 Релиз Wayland 1.6 (47 +32)
    - 08.09 Выпуск системной библиотеки Glibc 2.20, ознаменовавший слияние с Eglibc (120 +28)

    Советы
    - 18.09 Запуск Android-приложений в окружении Chrome OS или в браузере Chrome
    - 17.09 Добавление поддержки SSL в pgbouncer при помощи stunnel
    - 17.08 Простой способ существенно увеличить производительность открытого драйвера RadeonSI
    - 02.06 Увеличение числа вкладок, вмещающихся в строке Firefox
    - 01.06 Как в mpd5 присвоить определенный номер для ng интерфейса

    Обсуждаемые новости
    - 20:04 Выпуск графического тулкита GTK+ 3.14.0 и графической библио (12)
    - 20:03 apulse - эмулятор API звукового сервера PulseAudio через ALS (233)
    - 20:01 Второй бета-выпуск FreeBSD 10.1  (18)
    - 19:57 Запуск Android-приложений в браузере Chrome при помощи Chrom (37)
    - 19:35 Увидел свет пакетный менеджер RPM 4.12.0 (26)
    - 19:31 Представлен uselessd, минималистичный вариант systemd (160)
    - 19:24 Для Linux обеспечена официальная поддержка Netflix  (51)
    - 18:42 KDE будет упрощён по умолчанию, расширенные возможности пере (113)


      Закладки на сайте
      Проследить за страницей
    Created 1996-2014 by Maxim Chirkov  
    ДобавитьРекламаВебмастеруГИД  
    RUNNet TopList