
Denis
26.05.2018
09:47:12
Не понял вопрос

Sergey
26.05.2018
09:47:42
Эм?
ну ты сказал - "тайпхинты это польза в процессе разработки"
> а не ядром языка
в этом случае у тебя будет вечный рассинхрон в том кто как что готовит.

Google

Denis
26.05.2018
09:48:44

Aleh
26.05.2018
09:49:08

Denis
26.05.2018
09:49:27

Aleh
26.05.2018
09:49:36
В шторме

Sergey
26.05.2018
09:49:37

Aleh
26.05.2018
09:49:37
Если пых

Denis
26.05.2018
09:49:45
И там нет?

Aleh
26.05.2018
09:49:55

Sergey
26.05.2018
09:50:09
И там нет?
опиши мне массив где ключ строка а значение User
и что бы шторм все мог подсказать

Aleh
26.05.2018
09:50:44
И желательно чтобы типы выводил, а не на каждый чих док коммент писать

Sergey
26.05.2018
09:50:51
или - задача со звездочкой - опиши мне массивчик с ключами ([id: string, name: string]) что бы работал автокомплит

Google

Aleh
26.05.2018
09:51:16
Мой падаван тоже выводит)

Sergey
26.05.2018
09:51:40
ты даже можешь заморочаться, написать свои функции которые уменьюшают количество вариантов в пределах функции и через их систему метаданных описать типы

Denis
26.05.2018
09:51:53
опиши мне массив где ключ строка а значение User
Описание структуры массива действительно хромает. Но во-первых это часто решается плагинами (для того же пимпла есть отличный), а во-вторых это, кмк, разумнее и проще решить расширением того же пхпдока

Sergey
26.05.2018
09:52:04
https://confluence.jetbrains.com/display/PhpStorm/PhpStorm+Advanced+Metadata

Denis
26.05.2018
09:53:23

Sergey
26.05.2018
09:54:20
Так он умеет
он умеет ровно столько сколько он умеет. вон введут в стандарт phpdocumentator описание массивчиков - и... что? пока разработчики шторма не реализуют поддержку оного не будет у тебя никаких комлитов.

Denis
26.05.2018
09:54:21
Есть проект на старом сайлексе и первом пимпле. Отлично подсвечивается и автодополняет

Sergey
26.05.2018
09:55:11

Дмитрий
26.05.2018
09:55:27
У него просто нет проблем

Denis
26.05.2018
09:55:27

Дмитрий
26.05.2018
09:55:36
Можно порадоваться ?

Denis
26.05.2018
09:56:10

Sergey
26.05.2018
09:56:36
ну то есть я не очень понимаю твою позицию:
- ты не разработчик php и ни тебе поддерживать сорсы php
- ты не пользуешься благами статической типизации (до уровня array<mixed, mixed>) и в целом тебе комфортно - окей, никто не заставляет тебя юзать новые фичи языка.
- добавление дженериков позволит интерпритатору знать больше о том что он выполняет, так что в контексте какого-нибудь JIT может быть и профит по производительности
да и потом о каком именно комплите в мимпл ты говоришь? типа подсказки $pimple->get()'?
ну то есть ты видимо не понимаешь основной проблемы....
ну и да, чисто для статистики - с какими еще языками ты плотно работал?

Google

f4rt~
26.05.2018
10:05:29

Denis
26.05.2018
10:06:17
ну то есть ты видимо не понимаешь основной проблемы....
Ок, уточню свою позицию и изначальный вопрос, потому что видимо выразил их не достаточно просто.
Позиция: Пользу дженериков для повышения качества кода я не отрицаю. Но считаю её не достаточным аргументом для утяжеления/замедления языка. Так же считаю, что это задача относящаяся к дисциплине/уровню разработчика и возможностям его инструментария.
Вопрос: есть ли у дженериков какие-то другие преимущества, которые я не заметил и которые не относятся к удобству разработки?

Sergey
26.05.2018
10:06:47
ну то есть больше синтаксиса - это опциональная штука. На твои проекты не повлияет. Замедленее - если его нет, тебе норм?

Denis
26.05.2018
10:07:47

Sergey
26.05.2018
10:08:00

Дмитрий
26.05.2018
10:08:12

Sergey
26.05.2018
10:08:59

Denis
26.05.2018
10:09:20

Sergey
26.05.2018
10:10:43

Maksim
26.05.2018
10:11:23
блин... серьёзно, люди в пхп обсуждают замедление кода от дженериков?)
можно подумать он без них ракета)

Sergey
26.05.2018
10:11:33
будет ли пользоваться JIT (который будет в php8) преимуществами дополнительной интроспекции - это вопрос к разработчикам этого JIT. Но есть мнение что если на вход будет подаваться array<string> а не array то он может более специализированный код нагенерить

Denis
26.05.2018
10:11:40

Sergey
26.05.2018
10:11:52
ну то есть вариант с интроспекцией и автоконфигурацией на основе этого для тебя не аргумент....
можно много бойлерплейта поудалять
что до ущерба производительности - стоимость проверки foo(array $bar) и foo(array<string> $bar) в целом одинаковая.

Denis
26.05.2018
10:15:10

Sergey
26.05.2018
10:15:41

Adel
26.05.2018
10:16:42

Google

Sergey
26.05.2018
10:16:58
ну это все вытекает из возможностей интроспекции

Denis
26.05.2018
10:17:05

Sergey
26.05.2018
10:17:14
ну мол.... интроспекцию можно делать и без дженериков?

Maksim
26.05.2018
10:17:59
да блин... джинерики позволят с лёгкой душой выкинуть четверть кода из проекта) в чём причина их не любить-то?)

Sergey
26.05.2018
10:18:19
основной аргумент - сейчас у тебя нет возможности описать параметризованные типы. Вообще. Даже в phpdoc. Только если свой формат и свое поведение выдумывать (как это сделали в phan/psalm).
Дальше вопрос понимаешь ли ты что такое параметризованные типы
а как много у тебя в проектах кода который по факту работает (мог бы работать) с параметризованными типами, зависит от твоей "архитектуры". У меня такого кода много. Во фреймворках такого кода много.

Maksim
26.05.2018
10:19:40
ну вот мне не особо нравится идея со своими форматами. Сейчас по коду разбросано говно для псалма, скрутинайзера, пхпюнита и штормовской поделки... напрягает

Sergey
26.05.2018
10:20:09
в таких вещах очень важен единый источник правды

Артур Евгеньевич
26.05.2018
10:20:48

Sergey
26.05.2018
10:20:58

Maksim
26.05.2018
10:21:05

Артур Евгеньевич
26.05.2018
10:21:23
lua?
Хз с ним не видел бенчмарков на самом дел

Дмитрий
26.05.2018
10:21:47
Пока вы висите в вашем евент лупе, пхп уже отстрелялся и умер

Maksim
26.05.2018
10:21:53
та не) пхп умирающее говно) ток бложики на битриксе пилить)

Дмитрий
26.05.2018
10:22:03
От безысходности

Maksim
26.05.2018
10:22:20

Google

Артур Евгеньевич
26.05.2018
10:22:22

Sergey
26.05.2018
10:22:30

Denis
26.05.2018
10:22:44

Sergey
26.05.2018
10:22:51

Maksim
26.05.2018
10:23:15

Sergey
26.05.2018
10:24:06
Нет. Пхп хороший
я не знаю людей которые хорошо знают свой язык и могут считать его "хорошим". "неплохим" - да, но "хорошим" - нет.

Артур Евгеньевич
26.05.2018
10:24:19
Меня в пыхе больше всего ебет отсутствие стандартных структур данных и суперуниверсальность стандартного массива, чт опри наличии больших данных превращается в пиздос

Sergey
26.05.2018
10:24:22
ну то есть это вопрос о самокритике какой-нибудь

Артур Евгеньевич
26.05.2018
10:24:29
К остальному я привык

Maksim
26.05.2018
10:24:31
нету плохих языков, нету хороших...
есть инструменты и задачи :)

Denis
26.05.2018
10:24:41
да лан) в плане быстро\качественно\дешево пхп неплох)

Sergey
26.05.2018
10:24:41

Maksim
26.05.2018
10:25:19

Denis
26.05.2018
10:25:41

Артур Евгеньевич
26.05.2018
10:25:45

Sergey
26.05.2018
10:25:53

Артур Евгеньевич
26.05.2018
10:26:01

Maksim
26.05.2018
10:26:03

Denis
26.05.2018
10:26:07