@prophp7

Страница 1121 из 1387
Maksim
20.06.2018
07:33:19
https://github.com/ircmaxell/PhpGenerics/blob/master/lib/PhpGenerics/Generator.php#L69

Maksim
20.06.2018
07:34:30
TL;DR: don't use this
да не очень-то и хотелось так-то) дженерики в пхп средствами либы на пхп - я не на столько упоротый)

Bohdan
20.06.2018
07:35:53
Google
Evgeniy
20.06.2018
07:45:15
ну там кусок

но чувак же написал черная магия и вуду

еще TL:DR написал

и Item занято

Roman
20.06.2018
07:47:11
Если я получаю с репозиторя даные а потом мне нужно их отсортировать, Я могу добавть в метод получения с параметр $needSort или єто обязаность сервиса и ножно передать даные ему на сортировку? как лучше организовать код?

Evgeniy
20.06.2018
07:47:17
но вообще как я уже писал скоро будет свой webpack для пхп тут Сергей даже уже кидал ссылку)

но это возможно не правильно

Борис
20.06.2018
08:24:29
На самом деле ничего вредного в этой реализации дженериков нет. Это ж не проверки в рантайме на пыхе. Производительность проседает только при первом обращении. Дальше сбросить файл на диск, и опкеш его закешит. А так у тебя реальный дженерик. Если пишешь в strict то очень даже не плохо, лучше чем ничего

Aleh
20.06.2018
08:45:21
Темплейты скорее

А не генерики

Google
Bohdan
20.06.2018
08:58:43
а потом запилить phparcel, phpabel...

мы вставили тебе интерпретатор в интерпретатор...

Борис
20.06.2018
08:58:56
таким способом скоро можно придумать свой язык потом написать phppack который его перепишет в пхп код который будет интерпретироваться
Такое уже есть, и вагон. Тут же реальный (прототип) выхода из ситуации, когда хочешь в статическую типизацию, но у тебя нету возможностей работать с коллекциями (например)

двойной интерпретатор))
так-то твой CPU это интерпритатор машинного кода. Так что, когда ты пишешь на PHP у тебя уже двойной интерпритатор Как-то ты с этим живешь )))

Nurik
20.06.2018
09:01:05
но вообще как я уже писал скоро будет свой webpack для пхп тут Сергей даже уже кидал ссылку)
А можно пример, для чего может понадобится webpack в php ? Я просто очень плохо себе представляю кейс, где это может пригодиться.

Bohdan
20.06.2018
09:01:24
да это мы так, на аналогиях катаемся

тут скорее с babel проводить аналогию нужно

Sergey
20.06.2018
09:04:19
ну тип того, бандлить php приложеия не надо

у одного из моих преподов в универе был очень хороший вопрос на эту тему - чем компьютер от калькулятора отличается? И ответ как раз был наличие интерпритатора. Когда у тебя "инструкция" декодируется в машинную команду.

Nurik
20.06.2018
09:07:46
садись, два
Интерпретирует инструкции вшитые в ревизию процессора ?

Sergey
20.06.2018
09:08:23
Интерпретирует инструкции вшитые в ревизию процессора ?
ну там есть большая такая хрень которая хранить соответствие машинных кодов к инструкциям. Микрокод процессора

Evgeniy
20.06.2018
09:08:48
А можно пример, для чего может понадобится webpack в php ? Я просто очень плохо себе представляю кейс, где это может пригодиться.
вебпак пхп это просто название интерпретатора который сделают для пхп чтобы можно было кастомный синтаксис юзать

Sergey
20.06.2018
09:08:51
короч причем тут webpack/babel?)

Борис
20.06.2018
09:09:05
садись, два
кек- наказал ??

Sergey
20.06.2018
09:09:16
вебпак пхп это просто название интерпретатора который сделают для пхп чтобы можно было кастомный синтаксис юзать
как вы это любите... назвать интерпритатор в честь бандлера это то что заслуживает php

хотя по факту вам ни бандлер ни интерпритатор не нужен - вам блин транслятор нужен

https://preprocess.io/

и он уже есть

Google
Sergey
20.06.2018
09:09:54
нужно только сорсмэпы допилить

и что бы ваш любимый шторм в них умел

(хотя можно просто language server запилить)

Denis
20.06.2018
09:10:59
а насколько он нужен?

Evgeniy
20.06.2018
09:11:13
ну хочешь прикольный синтаксис юзаешь

не хочешь, пишешь в скучном и унылом стиле

и надо больше всяких таких штук чтобы еще несовместимо было между собой

Sergey
20.06.2018
09:13:14
а насколько он нужен?
можно много прикольного делать, например - обкатывать фичи до того как их добавили в язык

собственно по этой причине babel так выстрелил

и сам JS так бурно начал развиваться

Evgeniy
20.06.2018
09:15:12
ну в случае с js есть куча браузеров которая давным давном поддерживала все по разному а хотелось писать так чтобы везде работало

ну и да дало пинок ко всяким штукам и обкатам нового синтаксиса

Sergey
20.06.2018
09:18:15
1. я бы хотел возможность описывать структуры (что-то типа array shapes в hack). Сейчас такая возможность есть но без возможности референсинга на эти типы 2. я бы хотел джэнерики 3. я бы хотел короткие лямбды 4. хочу delegates on как в котлине 5. хочу дата классы которые передаются по значению (по сути обойдусь array shapes)

для всего этого придется делать либо синтаксис либо вставки на HERE/NOWDOC

ну и еще много чего можно придумать

даже такую хрень как __construct( private Foo $foo, private Bar $bar )

Artem
20.06.2018
09:19:29
а для чего дата классы передающиеся по значению?

Sergey
20.06.2018
09:20:18
а для чего дата классы передающиеся по значению?
для того же для чего и array shapes. хочу структурный тайпинг с возможностью объявить что "вот сюда такая хрень должна придти". Есть два варианта - array shapes (структурный тайпинг) или дата классы (почти как классы но больше структуры)

Google
Sergey
20.06.2018
09:20:33
в конечном счете - более дешевая опциональная имутабельность

Anton
20.06.2018
09:21:08
даже такую хрень как __construct( private Foo $foo, private Bar $bar )
буквально месяц назад в частном разговоре описал точно такую же идею. ибо задолбало автогенерацией в ide заниматься.

Sergey
20.06.2018
09:21:59
я как-то пытался даже, но меня хватило на просто добавить возможность модификатор доступа подсовывать

Evgeniy
20.06.2018
09:24:14
ну да такая штука тоже веселит с конструктарами

генерировать свойства, конструктор и тд

Denis
20.06.2018
09:25:03
можешь запилить RFC, фича не очень сложная
rfc и сразу патч) тогда вероятность что примут гораздо выше будет)

Sergey
20.06.2018
09:25:19
я б даже так делал

Admin
ERROR: S client not available

Anton
20.06.2018
09:25:36
да, причем есть шанс, что нужно не один патч

Sergey
20.06.2018
09:25:37
+ поясняющую статью и примеры

Anton
20.06.2018
09:25:38
а несколько

ибо каждый хочет по-своему видеть

формат подобных конструкторов

Sergey
20.06.2018
09:25:58
+ ссылки на 3v4l.org с примерами

а несколько
ну вариации синтаксиса чуть что поменять не сложно, не надо делать несколько. Лучше подумать и проработать RFC

ну и да - я думаю там будет 10% времени на продумать и реализовать и 90% сраться в комментах и в мэйлинглистах доказывая что эта фича нужна. + было бы неплохо к RFC добавить какой-нибудь фиксер (под php-cs-fixer) который автоматом в коде это поменяет

https://inviqa.com/blog/functional-programming-php-developers-guide-parser-combinators-phunkie

вот может кому-то будет интересно. Например можно отдельно в файликах какой-нибудь удобный DSL мутить

Google
Sergey
20.06.2018
09:30:23
или там вдруг какой-то чужой DSL захочется попарсить

Sergey
20.06.2018
09:30:55
для упоротых можно отдельный расширением выкатить)
нельзя, лексер/парсер php не имеет никаких точек расширений

Denis
20.06.2018
09:31:04
разве?

Sergey
20.06.2018
09:31:08
разве

Denis
20.06.2018
09:31:11
ну ок

Sergey
20.06.2018
09:31:25
иначе у тебя уже давно бы лежал экстеншен для async/await

Anton
20.06.2018
09:31:26
иначе уже было бы сотни диалектов

кто-нибудь бы ; убрал и сделал питон из пхп. и т.п.

Maksim
20.06.2018
09:34:17
но я чёт сомневаюсь, что оно хоть в теории в пхп появится...

Nurik
20.06.2018
10:01:14
но я чёт сомневаюсь, что оно хоть в теории в пхп появится...
Даже если и появится. Еще время понадобится написание либ в асинхронном стиле. Как это с питоном было впринципе, после asyncio.

Maksim
20.06.2018
10:01:44
Sergey
20.06.2018
10:30:05
Даже если и появится. Еще время понадобится написание либ в асинхронном стиле. Как это с питоном было впринципе, после asyncio.
если будет интерфейс на промисы - быстренько запилят адаптеры ко всему популярному. Это не сильно проблема

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

F01134H
20.06.2018
10:32:02
+

да штука вроде бы понятная... Непонятно - когда применять

я бы хотел на практике поюзать

так лучше всего запоминается

Nurik
20.06.2018
10:40:07
Генераторы чтоли ?

Sergey
20.06.2018
10:42:32
Генераторы чтоли ?
$generator = func(); $generator->send('foo');

вот конкретно этот аспект генераторов

Страница 1121 из 1387