
Roman
09.07.2018
09:34:29
PHP-Дайджест № 134 (24 июня – 8 июля 2018)
https://habr.com/company/zfort/blog/416543

Dmitry
09.07.2018
09:34:57
сравнение хорошо...

Maksim
09.07.2018
09:35:38
Yii development notes #23 — Команда фреймворка разыскивает контрибьюторов
всё не сдохнет никак

Google

Bohdan
09.07.2018
09:37:50
а вот френдли классы...ну такое имхо

Sergey
09.07.2018
09:38:01

Bohdan
09.07.2018
09:38:22
собственно, этого и ожидал

Sergey
09.07.2018
09:38:36
там сча в externals интересная дискуссия по поводу typed properties - типа голосование еще не начиналось, а как бы 2 недели до бэты... че делать

Maksim
09.07.2018
09:40:02
нафиг в пхп френдли классы - аще ниясна)

Dmitry
09.07.2018
09:40:06
ты их хочешь?

Maksim
09.07.2018
09:40:15
если проперти, я хочу)
и рид онли бы подвезли - цены бы не было)

Bohdan
09.07.2018
09:40:45
сравнение объектов интересненько выглядит с одной стороны
с другой - без перегрузки методов будет больно
ридонли я тоже хочу

Dmitry
09.07.2018
09:42:23

Andrew
09.07.2018
09:42:45
С френдли классами можно всякие принтеры делать и презентеры без геттеров, почему плохо?

Maksim
09.07.2018
09:42:46

Google

Sergey
09.07.2018
09:43:40

Dmitry
09.07.2018
09:43:45
ну хотя бы что-то типа $a->{prop1, prop2} = $arr; ;)

Sergey
09.07.2018
09:43:50
уже ж можно так

Maksim
09.07.2018
09:44:22

Bohdan
09.07.2018
09:44:31
по сравнению да, обычно проще описать коллбек для usort какого
readonly - мне не влом писать именованные конструкторы)

Sergey
09.07.2018
09:45:01

Dmitry
09.07.2018
09:45:24

Sergey
09.07.2018
09:45:45

Dmitry
09.07.2018
09:46:05

Sergey
09.07.2018
09:46:06
и неполноценно, это тебе не JS с деструктуризацией полноценной

Dmitry
09.07.2018
09:46:34
это да, я про сравнение

Bohdan
09.07.2018
09:46:34

Sergey
09.07.2018
09:46:38
трудозатраты идентичны, профит сомнительный + использование == вместо ===
я тут насмотрелся на некоторые либки в python и хочу перегрузку операторов))) DSL-ки на PHP делать)

Bohdan
09.07.2018
09:47:47

Dmitry
09.07.2018
09:47:52
ну может, может нужно __equals и __equalsStrict :)

Google

Bohdan
09.07.2018
09:47:56
хотя тпру, это было про методы

Sergey
09.07.2018
09:47:58
$posts = table('posts');
from($posts)->select($posts->id, $posts->name, $posts-> views / $posts->likes)
// SELECT p.id, p.name, p.views/p.likes FROM posts
в python просто проще - там операторы это просто функции

F01134H
09.07.2018
11:17:59
кто знает зачем в php мьютексы? https://github.com/php-lock/lock/

Sergey
09.07.2018
11:18:19

F01134H
09.07.2018
11:18:35
локи для чего?

Sergey
09.07.2018
11:18:38
и иногда сделать лок в базе не эффективно (потому что альтернатива лок таблицы)
локи для чего?
два запроса отправленные одновременно. тебе надо что бы они обработались последовательно. Вешаешь мьютекс или семафор на айдишку и вжух
писсеместичные локи короч

Maksim
09.07.2018
11:19:25
локи при асинхронной реплике, например.

Sergey
09.07.2018
11:19:49

Sergey
09.07.2018
11:20:06
тупо по ID агрегата мьютекс вешается
специфика задачи - там ситуация когда два чела одновременно тыкнули кнопку нормальное дело
ну мол... звонки типа
никогда один человек не пользуется

F01134H
09.07.2018
11:21:33
это вот это лок в базе?

Sergey
09.07.2018
11:21:57
ну то есть блин мьютекс надо где-то хранить, это ж стэйт.

Google

Sergey
09.07.2018
11:22:16
либо redis либо табличка отдельная в postgresql
что тебе позволяют ресурсы
повторюсь - это для ситуаций когда лочить отдельные ряды невозможно и лок таблицы дорого

F01134H
09.07.2018
11:23:11
ясно, гм. Полезная фича

Maksim
09.07.2018
11:23:20
https://github.com/php-lock/lock/blob/master/classes/mutex/MemcachedMutex.php#L52
ох мы на set в своё время говно поели... add прям во спасение зашёл)
между set блокировок умудрялись запросы пролетать (set не атомарная операция) и пессимистик лок не выставлялся((

Bohdan
09.07.2018
11:37:46
@desper1989 го грустить об readonly пропертях
https://wiki.php.net/rfc/propertygetsetsyntax-v1.2
(да, я тут некропостингом занимаюсь)

Maksim
09.07.2018
11:38:13
та я не буду особо грустить) сделают - хорошо, нет - похеру) меньше переписывать)

F01134H
09.07.2018
11:38:51
да давно уже пора сделать геттеры и сеттеры на уровне языка, как в шарпе

Admin
ERROR: S client not available

F01134H
09.07.2018
11:38:55
на и в джаве так же наверн

Sergey
09.07.2018
11:40:00
на более реальных задачах уже в 20 раз медленее
а то что я хочу сделать - комбинаторы парсеров - в 200 раз медленнее

Maksim
09.07.2018
11:40:50
чёт страшные цифры какие-то

Bohdan
09.07.2018
11:40:55
короче, в этом чате в топик тоже надо дописывать "безысходность"

Sergey
09.07.2018
11:41:10
хотя для последнего утверждения мне надо дописать свой json парсер и посравнивать с реализацией на JS и другие штуки типа hoa compiler
грустно будет если 8 часов жизни убито будет совсем впустую

Bohdan
09.07.2018
11:41:52
будет не впустую - опыт какой-никакой получил

Maksim
09.07.2018
11:42:08
да ладно) ты вон все выходные уебал что бы за ADR пояснить) чё уж там 8 часов на опыты-то)

Google

Sergey
09.07.2018
11:46:18

Maksim
09.07.2018
11:46:59
эт ты в контексте билдера? или за анализатор?

Sergey
09.07.2018
11:47:36
да мне @mkusher голову морочал о том как нынче модно парсеры писать. Ну я разобрался. Но до сих пор не понял какой вариант лучше
https://github.com/jneen/parsimmon - по сути хотел что-то такое на пыхе
оно в целом забавно но.... чет как-то BNF в целом хватает

Maksim
09.07.2018
11:48:08
а накидай чё-нить из чтива, которым тебе голову морочали)

Sergey
09.07.2018
11:48:13
сек

Maksim
09.07.2018
11:48:19
пасиб)

Sergey
09.07.2018
11:48:36
https://medium.com/@chetcorcos/introduction-to-parsers-644d1b5d7f3d - вот это годная статья на эту тему
она вмеру упрощенная но как бы и нет

Maksim
09.07.2018
11:49:10
ништяк) будет чем заняться на досуге)

Anton
09.07.2018
12:07:02
https://github.com/railt/parser
Правиль описывать конечно боль

Sergey
09.07.2018
12:12:53
особенно там где тебе не LL а LR надо (математические выражения в infix нотации )

Ivan
09.07.2018
13:30:19
поцаны.
чем можно из кода пхп 7.2 сгенерить UML?
visual paradigm только с 5.0 пашет.
либы на хитхабе не работают с намеспейсами и трейтами.

Sergey
09.07.2018
13:30:38
> трейтами
фу
UML он генерит
распечатать и отдать на потеху джавистам

Ivan
09.07.2018
13:31:30
у шторма конечно такие себе UML диаграммы