The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Увидел свет RPerl 1.0, компилятор кода Perl5

05.07.2015 19:37

После двух с половиной лет разработки состоялся релиз компилятора для языка программирования Perl - RPerl 1.0. RPerl получает на входе perl5-код (скрипт или модуль), транслирует его в представление на языке С++, которое следом конвертируется в XS-код силами модуля Inline::CPP. Полученный код может использоваться в высокоуровневом Perl5-коде как обычный модуль с XS-реализацией. В конечном счете XS-код транслируется в машинный код С++-компилятором. Исходные тексты проекта распространяются под лицензиями Artistic и GPL, т.е. RPerl распространяется на тех же условиях, что и интерпретатор Perl5.

В отличие от предыдущих попыток создания копилятора Perl (perlcc, pp, perlito, B::C, B::CC, B::Bytecode), которые не были доведены до рабочего вида или сводились к упаковке байткода в исполняемый файл, что позволяло скрыть исходные тексты, но существенно не влияло на производительность, в RPerl предпринята попытка предоставления возможности использования статических типов C++ для существенного повышения производительности. Автор проекта заявил, что подобная компиляция в среднем позволяет добиться семикратного увеличения скорости исполнения программ при использовании Perl5-структур данных и 200-кратного ускорения при использовании С++-структур. В будущем ожидается ещё большее увеличение производительности, так как на данный момент компилятор RPerl не включает в себя какие-либо особые оптимизации кода, которые потенциально могут ускорить исполнение кода.

  1. Главная ссылка к новости (http://rperl.org/...)
  2. OpenNews: Проект по развитию компилятора для языка Perl
  3. OpenNews: B-C - модуль для компиляции perl скриптов
  4. Как скомпилировать Perl скрипт в бинарный вид, чтобы другие не смогли увидеть исходный текст.
  5. Защита perl скриптов от несанкционированного копирования и модификации (security perl cgi web)
  6. OpenNews: Релиз языка программирования Perl 5.22.0
Автор новости: Аноним
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/42567-perl
Ключевые слова: perl, compile
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (68) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (-), 19:58, 05/07/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Вот бы книгу по эффективному использованию данного инструмента.
     
     
  • 2.5, angra (ok), 20:43, 05/07/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Книга по компилятору это несколько излишне, но хотя бы минимальная дока не помешала бы, а то даже синопсиса никакого за пять минут не нашел. Пока нет доки, оно нужно только авторам.
     
     
  • 3.7, Аноним (-), 20:51, 05/07/2015 [^] [^^] [^^^] [ответить]  
  • +/
    А нет - тут не все так просто. Да и вообще, с Perl же не бывает просто :).
     
  • 3.8, Аноним (-), 20:57, 05/07/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    CLI-интерфейс к компилятору как бы вот: http://search.cpan.org/~wbraswell/RPerl-1.000001/script/rperl

    Вы наверное в гугле ищете? :)

     
     
  • 4.21, angra (ok), 01:44, 06/07/2015 [^] [^^] [^^^] [ответить]  
  • +/
    По прочтению могу лишь повторить: "Пока нет доки, оно нужно только авторам.". Ибо назвать это документацией сложно.

     
     
  • 5.25, Аноним (-), 08:31, 06/07/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Я не автор, но мне тоже нужно. Описании CLI-опции вполне хватает чтобы уже работать RPerl. А так - да, нужна книга.
     

  • 1.2, oops (ok), 20:16, 05/07/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –19 +/
    что-то perl в последнее время перестали закапывать и стали развивать. Вот только почему-то только у нас в Рашке и странах СНГ к нему какое-то общее пренебрежение.
     
     
  • 2.3, Аноним (-), 20:34, 05/07/2015 [^] [^^] [^^^] [ответить]  
  • +5 +/
    У нас Pascal в универах. И не говорите преподам всякие страшные слова типа C++, Perl и т.д.
     
     
  • 3.4, Аноним (-), 20:36, 05/07/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > У нас Pascal в универах. И не говорите преподам всякие страшные слова
    > типа C++, Perl и т.д.

    Им религия не позволяет уверовать во что-то новое. Ибор в священном писании написано молиться на Pascal.

     
     
  • 4.22, Аноним (-), 04:53, 06/07/2015 [^] [^^] [^^^] [ответить]  
  • +4 +/
    характернейший пример в комментариях: http://habrahabr.ru/post/258391/
     
  • 2.6, Аноним (-), 20:47, 05/07/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вы во многом заблуждаетесь.
     
  • 2.14, vadiml (ok), 21:34, 05/07/2015 [^] [^^] [^^^] [ответить]  
  • +8 +/
    > Вот только почему-то только у нас в Рашке

    В Рашке -- может быть, не знаю как там, я в Сербии не был,
    зато в России -- все крупные инет-компании весьма активно используют перл.

     
     
  • 3.24, Аноним (-), 08:16, 06/07/2015 [^] [^^] [^^^] [ответить]  
  • –7 +/
    Не несите чушь, юзают его админы и то последнее время все меньше.
     
     
  • 4.26, Наблюдателъ (?), 08:55, 06/07/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Про YAPC::Russia погуглите.
     
  • 4.32, vadiml (ok), 13:23, 06/07/2015 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > Не несите чушь, юзают его админы и то последнее время все меньше.

    А Вы не допускаете возможности что чушь несёте Вы, а я знаю как обстоят дела потому что работаю в одной из этих фирм, а с другими доводится общаться?

     
     
  • 5.45, Аноним (-), 20:43, 06/07/2015 [^] [^^] [^^^] [ответить]  
  • –4 +/
    Ну так говори где работаешь yandex, mail.ru, vkontakte что то я не припомню чтоб там активно перл юзали.
     
     
  • 6.47, vadiml (ok), 20:48, 06/07/2015 [^] [^^] [^^^] [ответить]  
  • +5 +/
    > Ну так говори где работаешь yandex, mail.ru, vkontakte что то я не
    > припомню чтоб там активно перл юзали.

    Не знать, да ещё и забыть -- понимаю как тяжело Вам.

    PS Вам уже сказали где смотреть, с последнего yapc видео есть -- посмотрите, может быть вспомните часть того, чего Вы ниикогда не знали.

     
     
  • 7.49, Аноним (-), 22:23, 06/07/2015 [^] [^^] [^^^] [ответить]  
  • –4 +/
    снобизм прямо из монитора хлынул.
     
     
  • 8.62, Аноним (-), 17:19, 07/07/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ну а как идилотам объяснить чтоб поняли Так что - жри ... текст свёрнут, показать
     
  • 4.35, Аноним (-), 13:49, 06/07/2015 [^] [^^] [^^^] [ответить]  
  • +5 +/
    А если спросить у MSSQL-пользователей и форточка-админов, то они скажут что Linux в мире используют от силы человек двадцать.
     

  • 1.9, Аноним (-), 20:57, 05/07/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    На самом деле проделана большая работа, амбиций у ребят много. Я думал после появления стольких инструментов необходимость в этом языке отпала, но походу он скоро пойдет по стопам питона - пропихивание везде, во все области.
     
     
  • 2.10, Антоним2 (?), 21:05, 05/07/2015 [^] [^^] [^^^] [ответить]  
  • +6 +/
    У этого ЯП хорошо раскрытый высокий потенциал.
    А раскрыт он тем, что для всех отраслей безделия существуют модули и документация.
     
  • 2.11, Аноним (-), 21:05, 05/07/2015 [^] [^^] [^^^] [ответить]  
  • –7 +/
    Вам бы язык мылом помысть Амбиция - это манера, почерк быDлообразных А эти р... большой текст свёрнут, показать
     
  • 2.12, фыва (?), 21:06, 05/07/2015 [^] [^^] [^^^] [ответить]  
  • +10 +/
    лучше perl чем питон.. ибо перл есть Основа
     

  • 1.17, Pilat (ok), 22:55, 05/07/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Молодцы всё-таки американцы. Работают хорошо, теперь наши программисты могут ещё лучше пользоваться результатом их труда.
     
     
  • 2.18, Crazy Alex (ok), 23:09, 05/07/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Ну зачем же так во всеуслышание заявлять о том, что ты паразит. Хоть бы постеснялся, что ли...
     
     
  • 3.19, Pilat (ok), 01:02, 06/07/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Стеснительные все стали...
     
  • 3.20, Аноним (-), 01:15, 06/07/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Ну зачем же так во всеуслышание заявлять о том, что ты паразит.
    > Хоть бы постеснялся, что ли...

    Бывает и хуже :). Некоторые вон еще и недовольны что другие кодят не так как надо им, следуя всяким там американским законодательствам.

     
     
  • 4.23, Анонимный (?), 07:01, 06/07/2015 [^] [^^] [^^^] [ответить]  
  • +/
    +1024
     
  • 2.36, Аноним (-), 15:58, 06/07/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Не понял посыла. Во всех других странах что ли плохо программисты работают?
     
     
  • 3.37, Pilat (ok), 16:05, 06/07/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Ну представьте аналогичные сообщения из России. Про другие страны можно не представлять, они мне интересны. А про российские проекты - интересны. Что у нас такого делается, что вызывает интерес во всём мире, чем пользуются во всём мире. И количество этого всего в процентах относительно мирового уровня.
     
     
  • 4.46, Аноним (-), 20:45, 06/07/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Ну представьте аналогичные сообщения из России. Про другие страны можно не представлять,
    > они мне интересны. А про российские проекты - интересны. Что у
    > нас такого делается, что вызывает интерес во всём мире, чем пользуются
    > во всём мире. И количество этого всего в процентах относительно мирового
    > уровня.

    ReactOS?

     
  • 4.52, angra (ok), 01:09, 07/07/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Основные разработчики nginx и openvz русские, хоть и работающие на иностранные компании. Надо ли пояснять где находятся эти два проекта и где rperl?
     
     
  • 5.55, Pilat (ok), 03:13, 07/07/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Основные разработчики nginx и openvz русские, хоть и работающие на иностранные компании.
    > Надо ли пояснять где находятся эти два проекта и где rperl?

    Внимательно читаем мой вопрос!

     
     
  • 6.56, angra (ok), 04:50, 07/07/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Внимательно читайте на что вы сами отвечали, а именно : "Во всех других странах что ли плохо программисты работают?". Русские программисты работают хорошо. Не их вина в том, что работать выгоднее на иностранные компании. Это уже вопрос к политикам.
    Ну и тот же nginx заграницей называли русским вебсервером и известность он получил задолго до 2011 года, когда был создан NGINX Inc.
     
     
  • 7.58, Pilat (ok), 09:01, 07/07/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Внимательно читайте на что вы сами отвечали, а именно : "Во всех

    Вы удивительно самодостаточный человек. Сами что-то придумали, с этим и спорите.

     
  • 7.63, Аноним (-), 17:29, 07/07/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Русские программисты работают хорошо. Не их вина в том, что работать выгоднее на иностранные компании.

    angra - ты женился чтоли и ребятёнка завёл?
    А то в последнее время - как подменили человека, бреда всё меньше и меньше :)

     
  • 7.67, anonymous (??), 13:23, 08/07/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Внимательно читайте на что вы сами отвечали,
    > а именно : "Во всех других странах что ли плохо программисты работают?".
    > Русские программисты работают хорошо.
    > Не их вина в том, что работать выгоднее на иностранные компании.

    Да что же ты так издеваешься. Ведь мозг сломать можно!
    В Штатах и русские работают хорошо, и узбекские хорошо.
    А в других странах работают плохо, потому что из других стран подобных новостей нет.

    Предложении про "выгоднее" я вообще не понял с чем связано.
    Оно для другого поста предназначалось?

     

  • 1.27, Аноним (-), 10:11, 06/07/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –4 +/
    Здесь есть кто-нибудь, кто по собственному желанию хорошо освоил перл ну скажем на промежутке последних 5-ти лет? Просто интересна причина. Теории чем он хорош и диванные аналитики могут нагнать, а вот на практике что-то таких не встречал, т.е. по моему он жив только потому что еще есть работающий код на нем, а всё новое реализовывается на других языках и инструментах
     
     
  • 2.28, Аноним (-), 10:47, 06/07/2015 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Ну я, например. За хорошо/плохо не скажу, не мне судить, но освоил по собственному желанию и предварительно посмотрев похапе и питон.
     
  • 2.29, rshadow (ok), 11:06, 06/07/2015 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Причины просты:
    * Интересный язык, написанный лингвистом. Куча конструкций и удобств которые не встречаются в других языках. Т.д. и т.п., вообщем язык интересный. Да и девиз у него говорящий о многом: "Есть множество способов сделать это".
    * Порог вхождения довольно высок. Совсем студентов вы на нем не встретите, как в том же пыхе.
    * Зарплата перловика высокая. Отчасти от того что и их мало, отчасти из за предыдущего пункта. Вообще перловиков в небольших конторах встретить трудно, с рынка сгребаются большими конторами (зарплатами) и там оседают.
    * Язык постоянно развивается. Регулярно выходят новые релизы, проходят конференции. Так что про "закапывание" это все невежды кричат. Просто контингент небольшой, а потому новости не на слуху.
    * Действительно перл используется во многих крупных конторах. Яндекс, Мейл.ру, Мастерхост, Рамблер и т.д. Конечно такие конторы состоят из множества проектов написанных на разных языках. На перле: "Мой Круг" яндексовый, почта и "мой мир" мейловый. Напомню что в nginx встроен перл =)

     
     
  • 3.38, PnDx (ok), 16:09, 06/07/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Кроме nginx, ещё exim. Ну и к slapd прикручивается при необходимости (из того, чем занимался). Кто больше?
     
     
  • 4.40, fi (ok), 16:23, 06/07/2015 [^] [^^] [^^^] [ответить]  
  • +/
    pl/perl в postgresql
     
  • 3.44, YetAnotherOnanym (ok), 20:42, 06/07/2015 [^] [^^] [^^^] [ответить]  
  • +/
    емнип, из ещё крупных сайтов на перле написана жэжэшечка. ну, и спамассассин, конечно.

     
     
  • 4.60, Аноним (-), 16:01, 07/07/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > из ещё крупных сайтов на перле написана жэжэшечка

    IMDB. Lenta.ru.

     
     
  • 5.68, Аноним (-), 20:18, 09/07/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Форум ixbt (основной сайт не знаю на чем).
     
  • 5.69, нимус (?), 23:20, 09/07/2015 [^] [^^] [^^^] [ответить]  
  • +/
    false. ruby
     
     
  • 6.70, Аноним (-), 12:12, 10/07/2015 [^] [^^] [^^^] [ответить]  
  • +/
    https://en.wikipedia.org/wiki/Internet_Movie_Database :

    > The website is Perl-based.[5] As of May 2011, the site has been filtered in China for more than one year, although many users address it through proxy server or by VPN.[6]

     
  • 3.71, Аноним (-), 12:19, 10/07/2015 [^] [^^] [^^^] [ответить]  
  • +/
    DuckDuckGo написан Perl
     
  • 2.30, агент малдер (?), 12:13, 06/07/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    CPAN. как говорится, на CPAN - пакет, для php/python/etc - стартап.
     
  • 2.31, АНГЫВНАГЫНВАШЩ (?), 12:36, 06/07/2015 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Регулярки -- знаешь Perl владеешь регулярками.
     
  • 2.33, sattellite (?), 13:39, 06/07/2015 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Я освоил его по собственному желанию, правда начал лет 7 назад. Начиналось от нечего делать, а сейчас в местячковом провайдере получаю за него хорошие деньги и развиваю старые и разрабатываю новые проекты с помощью Perl.
     
  • 2.34, Аноним (-), 13:44, 06/07/2015 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Я самостоятельно освоил. Причина - нужен был лучший инструмент удовлетворящий определенным критериям продиктованными суровыми условиями реальности. Пишу как приложения на Perl, так и занимаюсь встраиванием. В Perl нашлись те преимущества которых нет в обычных языках (c++, python, java, php и т.д.). До знакомства с Perl писал ынтерпрайз-код на Java и C++.
     
  • 2.41, chinarulezzz (ok), 16:24, 06/07/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Примкну к подписавшимся. Сам начал осваивать год-полтора назад. В начале стал рассматривать как и питон, тикль, руби, однако постепенно втянулся. Перл удивил. Не ожидал от "очередного скриптового" такой гибкости и производительности начиная от синтаксиса, заканчивая экосистемой.
     
  • 2.48, Аноним (-), 21:50, 06/07/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Освоил и очень доволен.
    Прекрасный инструмент для быстрого прототипирования, мелких и не очень скриптов.
    На сипане куча модулей под все. А еще такие прекрасные вещи как AnyEvent, Coro, EV- можно писать асинхронные сетевые проги, призводительность очень хорошая, тысячи конектов и запросов в секунду - легко, покажите мне другой скриптовый язык с такими возможностями. Что-то я не видел подобного на питон какой-нибудь, везде плодят сотни форков отжирающих память по штучке на конект, ноют о gil. Да, есть нода,но синтаксисы перла и жс несравнимы, перл намного лаконичней и мощнее, корутины позволяют не писать лапшу из колбеков, промисов и прочих костылей. Регулярки встроены в синтаксис, идеальный язык для написания парсеров и автоматизации сетевых действий.
     
     
  • 3.50, агент малдер (?), 23:40, 06/07/2015 [^] [^^] [^^^] [ответить]  
  • +/
    асинхронность != многопоточность.

    в этом смысле perl ничем не лучше и не хуже python.

     
     
  • 4.57, Аноним (-), 08:19, 07/07/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Если честно, то не интересовался что там в питоне локается Да, асинхронность не... большой текст свёрнут, показать
     
     
  • 5.59, Аноним (-), 11:26, 07/07/2015 [^] [^^] [^^^] [ответить]  
  • +/
    В perl две разные модели: 5005threads который deprecated и ithreads. Если вы понимаете внутреннюю работу perl, то должны понимать как и почему работает ithreads.
    В теории в принципе можно ввести в perl те же pthreads, но объясните мне в чем смысл этого и для чего оно нужно? Я думал над этим вопросом и что-то не увидел нужности, т.к. проблем и сложностей возникает гораздо больше чем решается.
     
     
  • 6.61, Аноним (-), 16:42, 07/07/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Про то что две модели я знаю Я имел ввиду ithreads, но они тоже уже почти депри... большой текст свёрнут, показать
     
     
  • 7.64, Аноним (-), 19:01, 07/07/2015 [^] [^^] [^^^] [ответить]  
  • +/
    А я смотрю вы тот еще дилетант Они discouraged потому что их интерфейс ужасен ... большой текст свёрнут, показать
     
  • 6.65, Pilat (ok), 19:18, 07/07/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > В perl две разные модели: 5005threads который deprecated и ithreads.

    Coro - the only real threads in perl

     
     
  • 7.66, Аноним (-), 20:08, 07/07/2015 [^] [^^] [^^^] [ответить]  
  • +/
    На самом деле perl легко ложится на pthread - там все уже есть для этого. Если нужен пример, то смотрите код modperl2 для httpd:

    > $ ldd /usr/lib/apache2/modules/mod_perl.so

    ...
    libpthread.so.0 =>
    ...

     

  • 1.39, анином (?), 16:09, 06/07/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Чем это лучше PHP?
     
     
  • 2.42, Аноним (-), 16:27, 06/07/2015 [^] [^^] [^^^] [ответить]  
  • +3 +/
    <petrosyan>
    Чем PHP.
    </pertosyan>
     
  • 2.43, YetAnotherOnanym (ok), 20:32, 06/07/2015 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Много вы читали здесь новостей о релизах перла с исправлением критических уязвимостей? А вот для пыха такие приходится выпускать каждые несколько месяцев. В этом вопросе он даже жабу обгоняет.
     
     
  • 3.54, Аноним (-), 02:50, 07/07/2015 [^] [^^] [^^^] [ответить]  
  • +/
    shellcode 0day By Design
     
  • 2.51, Аноним (-), 23:48, 06/07/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Чем это лучше PHP?

    Всем

     
  • 2.53, angra (ok), 01:18, 07/07/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Примерно тем же, чем мерседес лучше жигулей. Выполнить они могут примерно одинаковые задачи, вот только комфорт и безопасность различаются в разы. Аналогия распространяется и на стоимость обоих решений. Perl требует куда больших затрат, в отличии от пыха за 24 часа его не выучишь, но результат того стоит.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру