Как стать автором
Обновить

Комментарии 15

По хорошему, HHVM даже как то жаль. Понятно, что Facebook решает свои задачи, но было бы не так и плохо иметь здоровую конкуренцию. Как вариант, было бы интересно увидеть Hack, который запускается на обычном PHP, как этакий Typescript.

НЛО прилетело и опубликовало эту надпись здесь

Не просто несовместимы, а чем дальше, тем несовместимость больше, тем больше костылей для них требуется.

Там основная проблема в том, что HHVM перестал быть совместим даже с композером

тык
тык
«PHP Language Trivia» а помимо слайдов, само выступление нигде не выкладывали? Видео или расшифровку…
Как только появится видео – добавлю в актуальном выпуске дайджеста
Ребят добавьте пожалуйста в подпункт Laravel пункта «Материалы для обучения» raml-json-api, если несложно.

но это же не материал для обучения. Это библиотека.

Может кто-нибудь в курсе: в PHP не собираются случайно добавить кросс-платформенный API для мониторинга изменений в файловой системе? FAM давным давно устарел, и другого встроенного способа определить, какие именно файлы в директории изменились или были добавлены/удалены нет.
Насколько я понимаю, во всех вотчерах файловой системы это реализуется +- одинаково:
Linux: inotify
Mac OS X: FSEvents, kqueue
FreeBSD/BSD: kqueue
Windows: ReadDirectoryChangesW
Для всех: поллинг и сравнение снэпшотов
По крайней мере так в fs.Watch из Node.js, Watchdog на Python, Guard на Ruby.
Либы на PHP, которая нормализует все это похоже пока нет.
Видимо, вы имели в виду, что вместо использования нативных событийных API без поллинга, которые есть в Win, Lin, Mac, BSD, всякие разные языки программирования используют поллинг и сравнение снэпшотов?
Очень нужная и полезная штука, и, к сожалению, никто пока не сделал единый удобный интерфейс хотя бы в виде либы на C/C++, которая бы легко встраивалась в модуль любого языка. fswatch, к сожалению, не годится на такую роль по разным причинам.
Имею в виду, что кроме нативных API, в разных либах реализован и поллинг как fallback решение.
А почему fswatch не годится? У меня не было опыта с ним, поэтому интересно какие подводные камни.
Для начала, попробуйте хотя бы его собрать под линукс, вин и мак (особенно вин!). Следующий шаг — попробуйте запустить то, что собралось, чтобы оно действительно работало (со всеми нужными вам _нативными_ мониторами). Следующий шаг — попробуйте использовать собранные бинарники со всеми их зависимостями на других машинах. Бонусом сыпутся нюансы при использовании — были неожиданные отличия в самом мониторинге под разными осями при одних и тех же параметрах командной строки (сейчас не вспомню точно, какие).
На маке лучше подтягивать бинарник через brew, на линуксе у меня получилось собрать рабочий бинарник без зависимостей, а под винду ничего не вышло. Через пару часов возни плюнул и написал свою простую утилиту, которая временно и коряво решила мои базовые задачи.
Производительность I/O бэкэнда: Node vs. PHP vs. Java vs. Go

Вот это уберите пожалуйста, некомпетентная статья которую следовало бы озаглавить
«Перепишите ваш проект на Go»
В качестве аргумента там сравнение с PHP 5.4
В статье годные комментарии, так что оставим
Зарегистрируйтесь на Хабре, чтобы оставить комментарий