@gogolang

Страница 206 из 1630
Мерлин
30.03.2017
17:33:23
Короче опять нытьё про отсутствие дженериков. Добро пожаловать в статическую типизацию, ёпта.
Статическая типизация никак не противеречит дженерикам, наоборот, отсутствие метапрограммирования вынуждает хреначить пустые интерфейсы и прочий треш

Semyon
30.03.2017
17:33:58
я чо, котаны, кто-то может рассказать про дженерики вне статической типизации?

Greg
30.03.2017
17:34:08
???

Google
Semyon
30.03.2017
17:34:17
меня так радует вот это вот бравирование статической типизацией у гоферов

котаны, в го система типов так-то говно сраное, если сравнить с чем угодно почти

Greg
30.03.2017
17:34:46
А вот про канал с датой и ошибкой в качестве опции это вещь

Sander
30.03.2017
17:34:53
вот что вы думаете о том чтоб писать игры на php ?) так как на работе, у нас сениор разработчик сказал, что на php можно очень хорошие игры написать, что зачем писать игру на каком-нибудь другом языке, ведь зависит от того как хорошо ты знаешь язык и пишешь код.

Greg
30.03.2017
17:35:32
Думаем, что нужно брать UE4 и не парить мозг :)

Мерлин
30.03.2017
17:35:49
Или просто не делать решений, которые вынуждают к interface {}
Можно и нужно Но получается пиздец громоздко

Phil
30.03.2017
17:35:57
да, лучше копипастить
Не вижу проблемы

Мерлин
30.03.2017
17:36:00
Либо писать свои кодогенеарторы

Semyon
30.03.2017
17:36:03
Мерлин
30.03.2017
17:36:17
Но это адок в большинстве случаев, по сути делаешь работу компилятора

Phil
30.03.2017
17:36:31
Можно и нужно Но получается пиздец громоздко
Да и хрен с ним. Не 5" дискеты чай хранишь

Google
Мерлин
30.03.2017
17:36:53
Да и хрен с ним. Не 5" дискеты чай хранишь
Это читать потом сложно и переписывать

Semyon
30.03.2017
17:37:03
нечо переписывать

Phil
30.03.2017
17:37:56
Это читать потом сложно и переписывать
Читать сложно как раз дженерики и всякий ООП. Переписывать - ну да, есть некоторые особенности. Хотя вот возвращаясь к ООП - его тоже сложно переписывать. Иногда невозможно в адекватные объемы работ

Semyon
30.03.2017
17:38:09
филипп блеать

какое в жопу ООП?

Олег
30.03.2017
17:38:15
Напрашивается структура, как по мне

И не уверен, может стандартный способ обработки ошибок через nil прокатит.

А вообще, если ошибка отдельным типом, то отправитель в канал явно уже в курсе, что это ошибка, так что в канал её можно и не пихать.

Phil
30.03.2017
17:38:27
Это читать потом сложно и переписывать
Но кстати это легче переписать, чем всякое наабстрагированное

какое в жопу ООП?
ООП к слову пришелся :)

Мерлин
30.03.2017
17:39:23
Это читать потом сложно и переписывать
Потому что реализация например интерфейса Message { Type() MessageType } для скажем строки, числа и двух видов структур займёт два-три экрана С опциональными типами заняло бы шесть строк

Тебе придётся переписывать КАЖДЫЙ тип, который удолетворяет интерфейсу

В случае например Бот АПИ телеграма - это с полтора десятка типов, Карл

Это адок

Кода на такое смотришь - хочется застрелиться

А вы пытались разбирать AST гошечки с помощью пакета go?

Это просто жесть

Google
Мерлин
30.03.2017
17:43:22
Сплошные тайп-касты без наличия адекватной документации (потому что без документации хуй поймешь какой тип какому интерфейсу удолетворяет)

N
30.03.2017
17:44:46
Это просто жесть
Все познается в сравнении. Для меня самая жесть это разбор файлика c расширением vbs на 10к строк, в котором вначале стоит On Error Resume Next и без этой штуки просто не работает ибо ошибка каждые 50 строк какая-нибудь обнаруживается

Так что лучше бы я разбирал AST

Мерлин
30.03.2017
17:45:23
Это хорошо или плохо? Я не понимаю боязни развернутого кода.
Это дохуя плохо, потому что тебе приходится пересмотреть кучу избыточного, не несущего никакой смысловой нагрузки кода

И писать его

А потом рефакторить

Phil
30.03.2017
17:46:00
Это просто жесть
Ну не знаю. Для меня всегда было жестью разбирать все эти перезагрузки, виртуальгные методы и прочую хрень. Которую голдову сломаешь разобрать. А по трем экранам пробежаться не проблема вообще

Мерлин
30.03.2017
17:46:09
В общем делать то, что в большинстве языков со статической типизацией делает компилятор

corpix
30.03.2017
17:46:22
И тесты на "общую реализацию" чего-либо не напишешь, потому что копипаст везде

Phil
30.03.2017
17:47:09
Мерлин
30.03.2017
17:47:16
Ну не знаю. Для меня всегда было жестью разбирать все эти перезагрузки, виртуальгные методы и прочую хрень. Которую голдову сломаешь разобрать. А по трем экранам пробежаться не проблема вообще
Причём тут перегрузки и виртуальные методы? Опциональные типы - это просто пипец насколько простая хрень, я просто не знаю, что может быть проще, она даже в сраном лабвью есть

Semyon
30.03.2017
17:47:17
И тесты на "общую реализацию" чего-либо не напишешь, потому что копипаст везде
а потом тебе вдруг нужно единообразно отрефактирить методы

и ты идешь и делаешь это в 20 местах

стараясь не проебать

Slava
30.03.2017
17:48:10
чем меньше аргументов - тем больше матов?

Semyon
30.03.2017
17:48:24
ну либо тайпкасты и привет, "статическая типизация"

Phil
30.03.2017
17:48:26
В общем делать то, что в большинстве языков со статической типизацией делает компилятор
Побойся Бога. Это циклический разговор ни о чем. Тех же дженериков не в ынтырпразе практически не существует

Google
Мерлин
30.03.2017
17:48:51
И ты смотришь такой на экран, забитый одинаковыми, одинаковыми методами, в которых отличаются исключительно названия типов

И думаешь

Phil
30.03.2017
17:48:54
и ты идешь и делаешь это в 20 местах
Да и ладно. Не вижу проблемы

Semyon
30.03.2017
17:48:55
называй языки со статической типизацией по очереди

Мерлин
30.03.2017
17:49:02
"Ну пайк, ну ёоп твою мать"

Semyon
30.03.2017
17:49:09
а мы будем говорить, есть там дженерики или нет

я знаю два, где их нет

это C и Go

Semyon
30.03.2017
17:49:32
во всех остальных, которые мне на ум приходят они есть

corpix
30.03.2017
17:49:53
Кажется просто большинство гоферов аффектит http://wiki.c2.com/?BlubParadox Вот они и не понимаю "зачем мне эти сложности"

Semyon
30.03.2017
17:50:13
Ммм... php? python?
со СТАТИЧЕСКОЙ типизацией, филипп

дженерики это свойство статической системы типов, в динамической системе типов они не имеют смысла

Phil
30.03.2017
17:50:57
со СТАТИЧЕСКОЙ типизацией, филипп
я не понимаю как в психологию разработки влезает технический термин "статическая типизация", поэтому я его уже несколько раз проигнорировал

Semyon
30.03.2017
17:51:23
какую психологию? ты о чем?

Phil
30.03.2017
17:51:59
какую психологию? ты о чем?
эээ... о нужности или ненужности дженериков? эффективно и комфортно с ними работать или нет? это же чисто у нас в голове и нигде больше

Google
Semyon
30.03.2017
17:52:10
а оптимизирующие компиляторы, которые на эти самые дженерики опираются — они типа воображаемые?

Phil
30.03.2017
17:52:35
да что ты говоришь
именно то, что написал

Semyon
30.03.2017
17:52:36
или что?

Phil
30.03.2017
17:53:08
мы забыли про каке такие языки ещё есть со статической типизации, где эти дженерики нужны :)))

Semyon
30.03.2017
17:53:09
не во всех языках даже type erasure есть, то есть эти самые дженерики реально существуют в рантайме, а не только в компайл тайме

Phil
30.03.2017
17:53:53
Просто есть C. И go. Остальное - там вроде как не нужно :)

corpix
30.03.2017
17:54:31
Semyon
30.03.2017
17:55:32
Ну например, первое что в голову пришло https://crystal-lang.org/
чот тебе сложные вещи в голову приходят

Java, C#, Scala, Kotlin, Haskell, OCaml, Nim

corpix
30.03.2017
17:55:58
чот тебе сложные вещи в голову приходят
Ну я про него просто читал недавно))

Semyon
30.03.2017
17:56:01
Rust, блеать

даже PONY LANG!

Egor
30.03.2017
17:56:46
Пацаны, сделайте себе канал "Срач по поводу Go" и там говорите на эту тему. Ну правда, на каждом углу о Go эта тема поднимается

Phil
30.03.2017
17:56:59
Кросме C#, C++ и Java это всё хорошо видно в микроскоп. C#, C++ и Java - это кровавый ынтырпрайз.

Мерлин
30.03.2017
17:58:13
java, cpp, С#, rust, pascal, scala, haskell

Semyon
30.03.2017
17:58:23
есть люди, которые пишут код, а есть те кто говорят об этом =)
и ещё те, кто отпускает остроумные замечания на эту тему

Phil
30.03.2017
17:58:25
В pascal нет дженериков

В Fortran тоже

Страница 206 из 1630