@oop_ru

Страница 654 из 785
Евгений
25.05.2018
17:24:21
https://wiki.php.net/rfc/generics
Стоп, а зачем в пыхе джинерики?

Она динамически слабо типизировано.

И так в классы добавили жестко задаваемый тип.

Норм вроде реализовали.

Google
Bohdan
25.05.2018
17:25:11
Она динамически слабо типизировано.
чтобы сделать более строгую типизацию

Артур Евгеньевич
25.05.2018
17:25:15
Стоп, а зачем в пыхе джинерики?
чтобы нормлаьно рабоать с коллекциями

Bohdan
25.05.2018
17:25:17
Артур Евгеньевич
25.05.2018
17:25:21
лично мне этого не хватает

Евгений
25.05.2018
17:26:07
То что вы пыхе есть method(InterfaceName $val): InterfaceName

Теперь мы можем передать любое значение у которого тип InterfaceName.

Или его производный.

И вернуть соотвественно также.

Так что смысл джинериков что-то мне не ясен.

https://wiki.php.net/rfc/generics

Ну вот здесь все примеры, работают также так-же как и я показал.

Только используется гинерики.

f4rt~
25.05.2018
17:29:28
Google
Евгений
25.05.2018
17:29:44
Пример, если не трудно.

f4rt~
25.05.2018
17:30:19
https://habr.com/company/mailru/blog/329494/

Евгений
25.05.2018
17:33:59
Ну да, некоторое применение есть.

Хотя с джинериками начнёт появляться каша, потому что язык начинает теряется в том типизированный он или нет.

Посмотрим.

Bohdan
25.05.2018
17:35:01
пхп движется к строгой типизации

Igor
25.05.2018
17:36:36
А что такое "строгая" типизация?

Bohdan
25.05.2018
17:37:40
Сильная и слабая типизация — Википедия https://ru.wikipedia.org/wiki/%D0%A1%D0%B8%D0%BB%D1%8C%D0%BD%D0%B0%D1%8F_%D0%B8_%D1%81%D0%BB%D0%B0%D0%B1%D0%B0%D1%8F_%D1%82%D0%B8%D0%BF%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F

Igor
25.05.2018
17:39:16
Вижу сильную и слабую, а что такое "строгая"?

Евгений
25.05.2018
17:40:47
Полная строгая типизация, это будет или как с асинхроннщиной и потоками в пыхе, они как бы есть (pctl вызовы, thread class) но они не популярны и все стандартное комьюнити его не использует или просто будет куча каши и ужаса.

Сейчас уже делать строгую типизацию на мой взгляд глупо.

Bohdan
25.05.2018
17:41:06
Вижу сильную и слабую, а что такое "строгая"?
там есть оговорка) строгая =сильная

Евгений
25.05.2018
17:41:27
Строгая = сильная?

Ты уверен?

Igor
25.05.2018
17:41:43
Нет не равны, это неправильный перевод strong

Bohdan
25.05.2018
17:41:58
Примечание: В русскоязычной литературе часто встречается некорректный перевод[1][2] термина «strong typing» как «строгая типизация»; корректный вариант «сильная типизация»[источник не указан 196 дней] используется лишь при противопоставлении «слабой типизации». Следует иметь в виду, что использование термина «строгий» в отношении системы типов языка может вызвать путаницу со строгой семантикой вычислений языка (англ. strict evaluation).

я нихрена не уверен, у меня пятница

Aleh
25.05.2018
17:58:46
Евгений
25.05.2018
17:59:52
В смысле?

Aleh
25.05.2018
18:00:02
Строгая лучше не использовать, особенно если имеется ввиду сильная

Google
Aleh
25.05.2018
18:00:05
Но все юзают

В смысле?
Проверки в рантайме это говно

И причина по которой до генериков очень далеко

Евгений
25.05.2018
18:00:28
Проверки в рантайме это говно
Ну пыха изначально тебе не в бинарники компилится.

А сильная в классах хоть из куска говна под названием пыха, делает что-то.

Это конечно ей не сильно помогает.

Евгений
25.05.2018
18:01:24
Но несколько жизнь упрощает.

И?)
Держи проверки в райнтайме.

Aleh
25.05.2018
18:01:45
Ну вот нет

Не значит это что надо держать проверки в рантайме

Евгений
25.05.2018
18:02:34
Честно говоря, я не уверен на каком этапе паха делает проверки.

Aleh
25.05.2018
18:02:42
См другие языки (js, python)

Евгений
25.05.2018
18:02:55
Пайтон да.

ЖС не имеет проверок.

Aleh
25.05.2018
18:03:16
Flow, typescript для этого завезли

Евгений
25.05.2018
18:09:39
Тайп скрипт это вообще то что в Жс компилится.

О этапе выполнения проверок речи не идёт.

На выходе получаем Жс.

Google
Bohdan
25.05.2018
18:10:19
почему не идёт?

компайлтайм же

Дмитрий
25.05.2018
18:14:10
Этот неловкий момент, когда все десять лет шуткуют над недоязыком для браузеров, а потом в него завозят превосходящую систему типов

Igor
25.05.2018
18:22:33
По моему ты перепутал "язык" жс и сторонние flow/ts aka "тайп-чекеры-на стероидах". Жс как был динамической-слаботипизированной х#### так и остался.

Aleh
25.05.2018
18:40:07
С такой логикой хаскель тоже никуда не годится

Ведь потом все равно ужасная тьюринг машина его гоняет

Sergey
25.05.2018
18:41:17
ты php-ник чтоли?

Bohdan
25.05.2018
18:43:46
Aleh
25.05.2018
19:03:42
В жсе она ублюдская
Кто-то запрещает юзать флоу или тс?

Даже проект переписывать не надо

Берёшь модуль за модулем где надо

Дмитрий
25.05.2018
19:05:06
В жсе она ублюдская
Искренне сочувствую

Roman
25.05.2018
19:05:27
Кто-то запрещает юзать флоу или тс?
Не спасает от того, что чужой апи решил вместо чиселок unixtime решил отдавать строки 8601

Там в рантайме дикий запад

Дмитрий
25.05.2018
19:05:53
О, снова рубрика "мифы и легенды"

Roman
25.05.2018
19:06:00
И никакие тайпскрипты и флоу вас не спасут

Google
Roman
25.05.2018
19:06:12
Только хреналион ифов

Дмитрий
25.05.2018
19:06:16
Забавно, что отдавать решил чужой апи, а виноват рантайм

У меня строго типизированный апи

Версионированный

По схеме

На все платформы

Roman
25.05.2018
19:06:40
Искренне сочувствую
Посчитай на нём деньги. У меня всё.

Aleh
25.05.2018
19:06:53
Или правило не хранить деньги во флоат позабыли все?

Дмитрий
25.05.2018
19:07:17
Roman
25.05.2018
19:07:26
Нет никаких проблем
IEEE754 - не, не слышали?)

Aleh
25.05.2018
19:07:33
Слышал

Именно поэтому проблем и нет

А вот если бы не слышал, то были бы

Дмитрий
25.05.2018
19:07:58
В BigInt считай

Плохому танцору опять что-то мешает

Aleh
25.05.2018
19:08:18
Т.е. да, даж нативную реализацию подвезли

Дмитрий
25.05.2018
19:08:52
То рантайм ломает чужой бэкенд, то деньги, никакой управы на него

Roman
25.05.2018
19:09:05
В BigInt считай
Ага, а decimal нормальный нельзя сделать

Aleh
25.05.2018
19:09:11
Дмитрий
25.05.2018
19:09:12
Ват?

Roman
25.05.2018
19:09:28
Потому что у вас перегрузки операторов нет, в этом вашем жс

Страница 654 из 785