The OpenNET Project / Index page

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

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Разработчики PHP представили интерпретатор нового поколения ..."
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от opennews (ok) on 08-Май-14, 10:29 
В списке рассылки разработчиков PHP объявлено (http://news.php.net/php.internals/73888) о начале тестирования проекта phpng (https://wiki.php.net/phpng), в рамках которого ведётся работа над следующим поколением интерпретатора для языка программирования PHP, отличающегося переходом на новый вариант движка Zend Engine, в котором будут воплощены новые идеи по организации работы с памятью и применения технологий JIT-компиляции. Итогом разработки станет выпуск PHP 5.7, примечательный существенным увеличением производительности выполнения скриптов. В настоящее время начальная версия phpng уже доступна (https://wiki.php.net/phpng) для сборки и тестирования.


Сообщается, что с момента выпуска PHP 5.0 наблюдается значительный прогресс в области увеличения производительности PHP - скорость выполнения синтетических тестов увеличилась в 6 раз, а ускорение выполнения реальных приложений оценивается в два раза. При разработке новой ветки большое внимание уделяется экспериментам с технологиями JIT-компиляции. В частности, на базе LLVM  подготовлен прототип встроенного в OPCache JIT-компилятора, что позволило по сравнению с PHP 5.5 увеличить скорость выполнения тестового набора в 10 раз, но в реальных приложениях ускорение составило всего несколько процентов.


Различия в показателях тестов и реальных приложений заставили задуматься разработчиков и провести более глубокую ревизию возможных узких мест, устранение которых позволило бы добиться более ощутимого прогресса в оптимизации. Сама по себе виртуальная машина уже достаточно хорошо оптимизирована, но проблема оказалась в методах работы с памятью и организации хранения структур данных. В текущем виде при работа со структурами данных приводит к большому числу операций выделения и перераспределения памяти, а также подсчёта ссылок на структуры для работы сборщика мусора. В итоге типичное PHP-приложение тратит примерно 20% времени на выполнение задач менеджера памяти, 10% на обработку хэш-таблиц, 30% на вызов внутренних функций и только 30% на выполнение кода в виртуальной машине.


При подготовке PHPNG основное внимание уделено изменению методов работы с памятью и переход на новые структуры (https://wiki.php.net/phpng-int) хранения данных, которые минимизируют число операций в куче. Идея переработки структур была связана с определённым риском, связанным с появлением непредсказуемых результатов глобального рефакторинга. Сейчас уже доступны первые результаты проделанной работы, которые показали, что разработчиками был выбран правильный путь, который привёл к существенному повышению производительности, снижению потребления памяти и стал хорошей предпосылкой к внедрению новых JIT-технологий для дальнейшего ускорения работы PHP.


В среднем изменения позволили добиться увеличения производительности реальных приложений на 10-30%:

-  Wordpress 3.6 – 20.0% (было 211, стало 253 запросов в секунду)
-  Drupal 6.1 – 11.7% (1585/1770 запросов в секунду)
-  Qdig – 15.3%  (482/555 запросов в секунду)
-  ZF test app – 30.5% (166/217 запросов в секунду)


Из идей по проведению дальнейших оптимизаций отмечается:


-  Оптимизация вызова и возврата из функций;

-  Замена Zend Memory Manager на xx_malloc, что позволит увеличить производительность приблизительно на 2%;
-  Переработка очень медленного API zend_parse_parameters();
-  Сокращение объёма данных, копируемого из областей разделяемой памяти OPCache в память процесса;
-  Переход на libpcre с поддержкой JIT-компиляции регулярных выражений;
-  Замена  ext/json на pecl/jsond.


URL: http://news.php.net/php.internals/73888
Новость: https://www.opennet.ru/opennews/art.shtml?num=39724

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Разработчики PHP представили интерпретатор нового поколения ..."  –15 +/
Сообщение от A.Stahl (ok) on 08-Май-14, 10:29 
Т.е. теперь JS-истерика по переписыванию всего чего не надо на JS прекратится и начнётся PHP-истерика. Ведь PHP теперь сравним с Си:)
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

3. "Разработчики PHP представили интерпретатор нового поколения ..."  +18 +/
Сообщение от imprtat (ok) on 08-Май-14, 10:35 
>  PHP теперь сравним с Си:)

это у тебя какой-то свой, принципиально новый, Си, раз с ним пхп можно сравнить?

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

12. "Разработчики PHP представили интерпретатор нового поколения ..."  –1 +/
Сообщение от A.Stahl (ok) on 08-Май-14, 11:29 
Нет, это у тебя какой-то свой принципиально новый парсер шуток, проглатывающий смайлики.
Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

14. "Разработчики PHP представили интерпретатор нового поколения ..."  +5 +/
Сообщение от Аноним (??) on 08-Май-14, 11:34 
s/новый парсер шуток, проглатывающий смайлики/фильтр тупых шуток/
Ответить | Правка | ^ к родителю #12 | Наверх | Cообщить модератору

15. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от A.Stahl (ok) on 08-Май-14, 11:36 
Не-а. Если бы это был фильтр, то он просто бы эту шутку не увидел и не ответил бы.
Ответить | Правка | ^ к родителю #14 | Наверх | Cообщить модератору

48. "Разработчики PHP представили интерпретатор нового поколения ..."  +6 +/
Сообщение от Аноним (??) on 08-Май-14, 17:55 
Стоп! Тут принципиальный момент! На каком языке ваш парсер шуток написан? С или PHP? ;-/
Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

4. "Разработчики PHP представили интерпретатор нового поколения ..."  +1 +/
Сообщение от Аноним (??) on 08-Май-14, 10:41 
На PHP и так написано подавляющее большинство сайтов. Так что ничего переписывать не надо.
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

16. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от Аноним (??) on 08-Май-14, 11:38 
Да кому сейчас сдались сайты, веб приложения вот где бабки.
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

31. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от toge on 08-Май-14, 14:13 
> Да кому сейчас сдались сайты, веб приложения вот где бабки.

  О-о. Смышленый парень :-)
  Хе-х. Лично я на тему перешел уже.

Ответить | Правка | ^ к родителю #16 | Наверх | Cообщить модератору

5. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от Аноним (??) on 08-Май-14, 10:52 
а просто парсер для LLVM написать слабо?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

11. "Разработчики PHP представили интерпретатор нового поколения ..."  +2 +/
Сообщение от ананим on 08-Май-14, 11:28 
И как это повлияет на:
> но проблема оказалась в методах работы с памятью и организации хранения структур данных.

?

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

6. "Разработчики PHP представили интерпретатор нового поколения ..."  –6 +/
Сообщение от Аноним (??) on 08-Май-14, 11:01 
Ускорение выполнение скриптов.. Извините а зачем оно надо? пользователь несколько милисикунд подождет, ничего с ним не случится. В пхп большая проблема с поддержание большого количества паралельных конектов, вот что нужно пилить. Чтобы 1000 одновременных запросов сервак держал, железо вполне позволяет, а пхп валится!
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

7. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от Kobezzza on 08-Май-14, 11:12 
http://daemon.io/
Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

9. "Разработчики PHP представили интерпретатор нового поколения ..."  +1 +/
Сообщение от Аноним (??) on 08-Май-14, 11:26 
сайт opennet отдает контент в 100 раз быстрее, чем php.
Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

19. "Разработчики PHP представили интерпретатор нового поколения ..."  –2 +/
Сообщение от бедный буратино (ok) on 08-Май-14, 11:51 
* отдаёт контент в 100 раз быстрее, чем php.
Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

13. "Разработчики PHP представили интерпретатор нового поколения ..."  +1 +/
Сообщение от Аноним (??) on 08-Май-14, 11:29 
Это битрикс, детка! Привыкай.
Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

17. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от Аноним (??) on 08-Май-14, 11:41 
> поддержание большого количества паралельных конектов, вот что нужно пилить. Чтобы 1000
> одновременных запросов сервак держал, железо вполне позволяет, а пхп валится!

очень смешно, что коннекты забота php, я то думал что это проблема веб сервера, а интерпретатор работает с потоками.

Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

21. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от Куяврег on 08-Май-14, 12:30 
иногда, когда погромисты на пхп слишком долго делают своё нечто, проблема пхп становится проблемой сервера.
Ответить | Правка | ^ к родителю #17 | Наверх | Cообщить модератору

24. "Разработчики PHP представили интерпретатор нового поколения ..."  –1 +/
Сообщение от Аноним (??) on 08-Май-14, 12:38 
Каким боком проблема php стала проблемой сервера, это даже 2 разные программы
Ответить | Правка | ^ к родителю #21 | Наверх | Cообщить модератору

79. "Разработчики PHP представили интерпретатор нового поколения ..."  –2 +/
Сообщение от Michael Shigorin email(ok) on 10-Май-14, 10:45 
> очень смешно, что коннекты забота php, я то думал что это проблема
> веб сервера, а интерпретатор работает с потоками.

Первая мысль при прочтении заголовка -- "и как они собрались интерпретировать новое поколение?.."

По описанию особой "поколенности" не заметил -- скорее текущая работа по втягиванию того, что сто лет в обед надо было втянуть, заметив отечественный MMcache.

Ответить | Правка | ^ к родителю #17 | Наверх | Cообщить модератору

27. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от Аноним (??) on 08-Май-14, 13:12 
Молодцы, они придумали LLVM.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

30. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от Аноним (??) on 08-Май-14, 14:05 
llvm как бы шире и глубже и раза в 4 старше.
Ответить | Правка | ^ к родителю #27 | Наверх | Cообщить модератору

44. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от sometest on 08-Май-14, 17:38 
>в 4 старше

лолшто?

Ответить | Правка | ^ к родителю #30 | Наверх | Cообщить модератору

40. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от qqq (??) on 08-Май-14, 16:41 
llvm? что хорошая штука?
Ответить | Правка | ^ к родителю #27 | Наверх | Cообщить модератору

58. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от Аноним (??) on 08-Май-14, 22:38 
Они попытались его применить, но не получили прироста производительности, потому что стадия разбора и выполнения кода и так уже достаточно быстра.

К слову, производительность LLVM тоже далека от идеала.

Ответить | Правка | ^ к родителю #27 | Наверх | Cообщить модератору

72. "Разработчики PHP представили интерпретатор нового поколения ..."  +2 +/
Сообщение от rob pike on 09-Май-14, 18:16 
Она даже от GCC далека
Ответить | Правка | ^ к родителю #58 | Наверх | Cообщить модератору

80. "Разработчики PHP представили интерпретатор нового поколения ..."  –1 +/
Сообщение от некто (ok) on 10-Май-14, 14:16 
а есть вообще достойные альтернативы llvm?
Ответить | Правка | ^ к родителю #58 | Наверх | Cообщить модератору

81. "Разработчики PHP представили интерпретатор нового поколения ..."  –1 +/
Сообщение от rob pike on 11-Май-14, 21:45 
Достойные по какому критерию?
Достойные альтернативы LLVM для использования в качестве чего?
Ответить | Правка | ^ к родителю #80 | Наверх | Cообщить модератору

89. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от qqq (??) on 08-Июн-14, 14:45 
> а есть вообще достойные альтернативы llvm?

есть: forth, erlang

Ответить | Правка | ^ к родителю #80 | Наверх | Cообщить модератору

28. "Разработчики PHP представили интерпретатор нового поколения ..."  +2 +/
Сообщение от StainlessRat (??) on 08-Май-14, 13:23 
Представьте, если бы сайты на ASSEMBLER писали ? Вот это ДААААА. :) Сайт открывался бы за одну миллионную секунды :)
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

29. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от Аноним (??) on 08-Май-14, 13:50 
И закрывался бы также, фишка в том, чтобы ускорять только открытие...
Ответить | Правка | ^ к родителю #28 | Наверх | Cообщить модератору

32. "Разработчики PHP представили интерпретатор нового поколения ..."  +1 +/
Сообщение от Аноним (??) on 08-Май-14, 14:19 
Сайт открывался бы столько времени, сколько требуется на установку tcp-соединения и передачу данного объема данных пользователю.
Ответить | Правка | ^ к родителю #28 | Наверх | Cообщить модератору

43. "Разработчики PHP представили интерпретатор нового поколения ..."  +6 +/
Сообщение от Аноним (??) on 08-Май-14, 17:20 
Сайт открывался бы столько времени, сколько времени он тратил бы на IO и Базу, а разработка длилась бы столько времени, что программисту пришлось все-таки искать жену обзаводиться кучей детей. Есть шанс, что хоть они доживут до релиза.
Ответить | Правка | ^ к родителю #32 | Наверх | Cообщить модератору

65. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от Аноним (??) on 09-Май-14, 00:46 
> Сайт открывался бы столько времени, сколько требуется на установку tcp-соединения и передачу
> данного объема данных пользователю.

Да гомно вопрос - кешируй в статику или используй статические страницы. Какой-нить сишный нжинкс тебе их вытрелит как из базуки. Хоть гигабит получи, если можешь столько откачать.

Ответить | Правка | ^ к родителю #32 | Наверх | Cообщить модератору

73. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от rob pike on 09-Май-14, 18:22 
>Какой-нить сишный нжинкс тебе их вытрелит как из базуки.

Ядро не даст. Больше пары сотен тысяч req/s - почти нереально.

>Хоть гигабит получи, если можешь столько откачать.

Говорить о bandwith в данном случае неверно - гигабит можно забить и одним огромным файлом.
Имеют значение пакеты в секунду и реквесты в секунду.


Ответить | Правка | ^ к родителю #65 | Наверх | Cообщить модератору

34. "Разработчики PHP представили интерпретатор нового поколения ..."  +7 +/
Сообщение от тоже Аноним email(ok) on 08-Май-14, 14:32 
Угу, то-то на какой ASP-сайт не зайдешь, он от скорости аж поскрипывает. Особенно ASPX.
Ответить | Правка | ^ к родителю #32 | Наверх | Cообщить модератору

47. "Разработчики PHP представили интерпретатор нового поколения ..."  +2 +/
Сообщение от Аноним (??) on 08-Май-14, 17:55 
> Угу, то-то на какой ASP-сайт не зайдешь,

StackOverflow?

Ответить | Правка | ^ к родителю #34 | Наверх | Cообщить модератору

54. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от Мимо проходил on 08-Май-14, 19:41 
...в котором от asp выпилили 90% всего
Ответить | Правка | ^ к родителю #47 | Наверх | Cообщить модератору

62. "Разработчики PHP представили интерпретатор нового поколения ..."  +2 +/
Сообщение от Аноним (??) on 09-Май-14, 00:41 
> StackOverflow

Что-то не заметил особой скорости. Быстро - это когда какой-нибудь nginx прямо выстреливает в тебя как из базуки всю страницу, за менее чем секунду, из кеша, как статику. Вот это реально быстро - пикнуть не успел, а тебе уже страницу показали.

Ответить | Правка | ^ к родителю #47 | Наверх | Cообщить модератору

42. "Разработчики PHP представили интерпретатор нового поколения ..."  +2 +/
Сообщение от Аноним (??) on 08-Май-14, 17:16 
на .net бинарники, может байт кодники?
Ответить | Правка | ^ к родителю #32 | Наверх | Cообщить модератору

35. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от Аноним (??) on 08-Май-14, 14:53 
внезапно - есть и такие SDK для Web-мастеринга.
и пакеты для "Web-писательства" на C++,к примеру.
но продаются оч. хреново, тк доминируют "неосиляторы".
когда последний раз кто-то писал что-то на нативном коннекте между SQL/NoSQL и Web-сервером ? то есть на бинарниках и UDF/DDL -онли ?
Ответить | Правка | ^ к родителю #28 | Наверх | Cообщить модератору

53. "Разработчики PHP представили интерпретатор нового..."  +/
Сообщение от arisu (ok) on 08-Май-14, 18:45 
> Представьте, если бы сайты на ASSEMBLER писали ? Вот это ДААААА. :)
> Сайт открывался бы за одну миллионную секунды :)

(пожимает плечами) есть vibe.d, например. статически типизированый компилируемый в native code язык плюс async i/o (хипстеры знают об этом из node.js). и что? для долбодятлов это всё равно чересчур сложно.

Ответить | Правка | ^ к родителю #28 | Наверх | Cообщить модератору

74. "Разработчики PHP представили интерпретатор нового..."  +/
Сообщение от rob pike on 09-Май-14, 18:24 
Хипстеры знают что async и nodejs это стильно, модно, молодежно.

http://xahlee.info/w/apache_nodejs_nginx.html

Ответить | Правка | ^ к родителю #53 | Наверх | Cообщить модератору

76. "Разработчики PHP представили интерпретатор нового..."  +/
Сообщение от arisu (ok) on 09-Май-14, 18:28 
> Хипстеры знают что async и nodejs это стильно, модно, молодежно.

это да. (с ненавистью глядя на нодожысыкашу, в которой надо разобраться) удобство разработки им традиционно побоку.

Ответить | Правка | ^ к родителю #74 | Наверх | Cообщить модератору

36. "Разработчики PHP представили интерпретатор нового поколения ..."  –1 +/
Сообщение от SergMarkov email(ok) on 08-Май-14, 15:03 
типичное PHP-приложение тратит примерно 20% времени на выполнение задач менеджера памяти, 10% на обработку хэш-таблиц, 30% на вызов внутренних функций и только 30% на выполнение кода в виртуальной машине

блеск!

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

37. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от AlexAT (ok) on 08-Май-14, 15:27 
Интересно, есть ли сравнения с HHVM?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

38. "Разработчики PHP представили интерпретатор нового поколения ..."  –1 +/
Сообщение от Аноним (??) on 08-Май-14, 16:07 
https://gist.github.com/hgfischer/7965620
Ответить | Правка | ^ к родителю #37 | Наверх | Cообщить модератору

39. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от Xaionaro email(ok) on 08-Май-14, 16:39 
> https://gist.github.com/hgfischer/7965620

Зачем эта ссылка нужна? Там вообще не упоминается HHVM.

Ответить | Правка | ^ к родителю #38 | Наверх | Cообщить модератору

75. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от rob pike on 09-Май-14, 18:26 
> Интересно, есть ли сравнения с HHVM?

Тут есть http://www.techempower.com/benchmarks/

Ответить | Правка | ^ к родителю #37 | Наверх | Cообщить модератору

82. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от Xaionaro email(ok) on 12-Май-14, 10:32 
>> Интересно, есть ли сравнения с HHVM?
> Тут есть http://www.techempower.com/benchmarks/

Очень странная таблица. Тут утверждается, что голый PHP работает быстрее HHVM. Притом в разы.

Ответить | Правка | ^ к родителю #75 | Наверх | Cообщить модератору

83. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от rob pike on 14-Май-14, 19:30 
Ну так возьмите, проверьте, все исходники тестов выложены.
Поделитесь результатами.
Ответить | Правка | ^ к родителю #82 | Наверх | Cообщить модератору

41. "Разработчики PHP представили интерпретатор нового поколения ..."  +1 +/
Сообщение от Аноним (??) on 08-Май-14, 17:15 
Анон, подскажи: теперь с brand-new JIT движком, PHP будет таким же быстрым как Ruby, где его уже 8 год как впилили и лет 5 как крутят в продакшне?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

45. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от sometest on 08-Май-14, 17:44 
>быстрым как Ruby

Это была шутка такая?

http://benchmarksgame.alioth.debian.org/u64q/benchmark.php?t...

Ответить | Правка | ^ к родителю #41 | Наверх | Cообщить модератору

46. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от Аноним (??) on 08-Май-14, 17:51 
>>быстрым как Ruby
> Это была шутка такая?

Признавайтесь, зачем вы фракталы строите или блинную сортировку юзаете на сабже?


Ответить | Правка | ^ к родителю #45 | Наверх | Cообщить модератору

50. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от sometest on 08-Май-14, 18:05 
Я этого не делаю, но руби известен медленным интепретатором.

Anyway, основная проблема уже не столько в пхп, сколько в выборках данных с бд.

Ответить | Правка | ^ к родителю #46 | Наверх | Cообщить модератору

63. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от Аноним (??) on 09-Май-14, 00:44 
> Признавайтесь, зачем вы фракталы строите или блинную сортировку юзаете на сабже?

Не вижу чем построение фракталов, сортировка или любой иной алгоритм так уж плохи в целях бенчмаркинга и сравнения. А, понимаю, при этом не получается хвалить фетиш - становится понятно что это булшит :).


Ответить | Правка | ^ к родителю #46 | Наверх | Cообщить модератору

64. "Разработчики PHP представили интерпретатор нового..."  +1 +/
Сообщение от arisu (ok) on 09-Май-14, 00:45 
> Не вижу чем построение фракталов, сортировка или любой иной алгоритм так уж
> плохи в целях бенчмаркинга и сравнения.

в том, что это очень специфические задачи.

Ответить | Правка | ^ к родителю #63 | Наверх | Cообщить модератору

67. "Разработчики PHP представили интерпретатор нового поколения ..."  +2 +/
Сообщение от Аноним (??) on 09-Май-14, 08:14 
Я не часто строю фракталы на руби, но когда я это делаю, я использую биндинги к OpenCL.
Эти бенчмарки имели бы хоть какой-то смысл, если бы в них использовались не дженерики, а объекты, и были бы задачи, которые используют встроенные либы, например работа со строками, регекспы, и т.д. потому что в реале все упирается в создание объектов и GC. И, кстати заметьте, еще over 10y ago, на PHP строго на строго рекомендовалось не использовать ООП, так ВК до сих пор и не использует, в то время как на руби за такой СиСтайл влегкую можно получить по морде кирпичом. Разные подходы.
И расскажите мне плиз, как они в этих бенчмарках умудрились получить такую странную правую колонку с распределением CPU по ядрам, если Ruby по определению однопоточный?
Ответить | Правка | ^ к родителю #63 | Наверх | Cообщить модератору

69. "Разработчики PHP представили интерпретатор нового поколения ..."  +1 +/
Сообщение от AlexAT (ok) on 09-Май-14, 09:11 
> И, кстати заметьте, еще over 10y ago, на PHP строго на строго рекомендовалось не использовать ООП

В PHP4 были большие проблемы с ООП в связи с костыльностью транслятора. Начиная с PHP5 с ООП никаких проблем нет, производительность не хуже процедурного варианта. К 5.3 вылизали чуть ли не до идеального варианта. Немножко не хватает шаблонов, как в сях, увы, и возможности перегрузки методов и функций.

Ответить | Правка | ^ к родителю #67 | Наверх | Cообщить модератору

71. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от sometest on 09-Май-14, 10:30 
>шаблонов, как в сях

Ты наверное имел в виду темплейты из крестов? Упаси б-же.

Ответить | Правка | ^ к родителю #69 | Наверх | Cообщить модератору

77. "Разработчики PHP представили интерпретатор нового поколения ..."  +1 +/
Сообщение от Аноним (??) on 09-Май-14, 20:40 
Темплейты из крестов, на мой взгляд, — полумера. /Не видел кода(но слышал) на PHP уже 5 лет/ Дайте народу миксины, рефлекшны и Object.metod_missing?. PHP имхо не хватает ООП не в стиле крестов@11||14, а в стиле Java, ну и back-to-the-roots Smalltalk. Но тут, конечно, я очень субьективен и разбиваю ваши мечты.
И еще, без всякого троллинга, в PHP уже появились и широко используются атавизмы функционального программирования типа лямбд? На руби можно писать очень быстрый код в 100% функциональном стиле, convention over configuration, вот это все.
Ответить | Правка | ^ к родителю #71 | Наверх | Cообщить модератору

78. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от sometest on 10-Май-14, 01:15 
да, анонимные функции появились в 5.3

насчет reflection не понял, если ты имел в виду reflection api, то да - такое есть.

Ответить | Правка | ^ к родителю #77 | Наверх | Cообщить модератору

85. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от AlexAT (ok) on 28-Май-14, 21:50 
Миксины сделали в 5.4 виде traits, по сути с другого боку, но всё оно же. Рефлекшн есть с 5.1 начиная, если память не изменяет. Лямбды (если речь об анонимных функциях-замыканиях) начиная с 5.3 есть.

Вообще язык очень сурово подрос с момента 4.х и даже 5.0, в последнее время даже не вызывает потребностей вида "блин, ну когда уже эта фича".

Ответить | Правка | ^ к родителю #77 | Наверх | Cообщить модератору

88. "Разработчики PHP представили интерпретатор нового..."  +/
Сообщение от arisu (ok) on 28-Май-14, 23:34 
> Миксины сделали в 5.4 виде traits, по сути с другого боку, но
> всё оно же.

даже не знаю, то ли смеяться, то ли обнять и плакать…

Ответить | Правка | ^ к родителю #85 | Наверх | Cообщить модератору

55. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от Аноним (??) on 08-Май-14, 22:12 
Скорее бы в стабильный релиз новый интерпретатор попал. Вот это было бы реально круто. Как не крути, а PHP - самый популярный ЯП для бекэнда.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

56. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от AlexAT (ok) on 08-Май-14, 22:13 
> Скорее бы в стабильный релиз новый интерпретатор попал. Вот это было бы
> реально круто. Как не крути, а PHP - самый популярный ЯП
> для бекэнда.

Он еще и реально удобный. Как по синтаксису (C-подобен), так и по возможностям. Причём для бэкенда не обязательно вёбного. Главное - не перебарщивать с кодом, максимум встроенных функций, минимум велосипедов.

Ответить | Правка | ^ к родителю #55 | Наверх | Cообщить модератору

57. "Разработчики PHP представили интерпретатор нового..."  +/
Сообщение от arisu (ok) on 08-Май-14, 22:18 
а я продолжу спрашивать, какое логичное там применение для сигилов.
Ответить | Правка | ^ к родителю #56 | Наверх | Cообщить модератору

59. "Разработчики PHP представили интерпретатор нового..."  +1 +/
Сообщение от AlexAT (ok) on 08-Май-14, 22:40 
> а я продолжу спрашивать, какое логичное там применение для сигилов.

1) variadic variables/functions/methods - наверное, основное и единственное применение: $myObject->$varMethod($params), к примеру
2) явное наследие перла
3) всё-таки с баксом перед переменными код на самом деле слегка читабельнее

Ответить | Правка | ^ к родителю #57 | Наверх | Cообщить модератору

60. "Разработчики PHP представили интерпретатор нового..."  +1 +/
Сообщение от arisu (ok) on 08-Май-14, 22:46 
> 1) variadic variables/functions/methods - наверное, основное и единственное применение:
> $myObject->$varMethod($params), к примеру

и никто не применяет. да и сигил в php — не совсем обычный оператор, в отличие от sh, например, где это именно оператор.

> 2) явное наследие перла

где сигилов много, и они таки имеют смысл.

> 3) всё-таки с баксом перед переменными код на самом деле слегка читабельнее

ну да: пишешь — и сразу баксы видишь. ;-)

проще говоря: сигилы в php — это карго-культ в основном.

Ответить | Правка | ^ к родителю #59 | Наверх | Cообщить модератору

86. "Разработчики PHP представили интерпретатор нового..."  +/
Сообщение от AlexAT (ok) on 28-Май-14, 21:55 
> и никто не применяет. да и сигил в php — не совсем обычный оператор

Я бы сказал - совсем не оператор, а именно variable prefix. Что же до юза:
$instance = new $class();
- весьма типовая и применительная конструкция, инстанциация объекта заранее не известного (определяемого на этапе выполнения) класса.

Ответить | Правка | ^ к родителю #60 | Наверх | Cообщить модератору

87. "Разработчики PHP представили интерпретатор нового..."  +/
Сообщение от arisu (ok) on 28-Май-14, 23:32 
> Я бы сказал - совсем не оператор, а именно variable prefix.

«consistency? не, не слышали! чо? хреново скопировали sh, не понимая, как там что работает? да пошёл ты!»

Ответить | Правка | ^ к родителю #86 | Наверх | Cообщить модератору

66. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от Аноним (??) on 09-Май-14, 00:50 
Что насчет standalone приложений. Уже можно наконец-то будет потоки или сопля к апачу?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

70. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от AlexAT (ok) on 09-Май-14, 09:15 
> Что насчет standalone приложений. Уже можно наконец-то будет потоки или сопля к
> апачу?

Пока все внешние библиотеки не превратятся в thread safe - не будет. Потоки номинально есть, но требуют сборки с ZTS, и грозят костылями.

Ответить | Правка | ^ к родителю #66 | Наверх | Cообщить модератору

68. "Разработчики PHP представили интерпретатор нового поколения ..."  +/
Сообщение от Аноним (??) on 09-Май-14, 09:03 
Новые «standrd restrictions»?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

84. "Разработчики PHP представили интерпретатор нового поколения ..."  –1 +/
Сообщение от Аноним (??) on 28-Май-14, 19:57 
JIT в PHP бы не помешал, а то Node.js + JavaScript понемногу начинают вытеснять PHP.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Спонсоры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

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