Про него даже есть исторический анекдот - однажды он встречает чернокожего солдата-эфиопа в Британии и воспринимает это как плохой знак.
Ну так и какая же это общая концепция, если union type отсутствует как класс в языках без статической типизации?
Ты почему-то смотришь снизу-вверх, а не сверху-вниз.
Это концепция из метаязыкового словаря.
То, что ее нет в конкретном языке не означает что эта концепция не имеет смысла в контексте этого языка и этот язык неспособен решить проблему, для которой эту концепцию выдумали.
В жс долгое время не было синтаксиса для классов, но это не мешало людям их писать и использовать.
Да, если у тебя в словаре концепций нет идеи "паттерн матчинг", то синтезировать ее может быть непросто.
Но вот если ты уже знаком с этой идеей, то ты не применяешь не так: "ой чтобы мне спаттерматчить"; ты применяешь ее так: "как мне залезть внутрь структуры - о, может быть в языке поддерживается паттерн матчинг или есть удобная альтернатива для него".
Это все не какие-то магические штуки, это всего лишь удобные(не берем эзотерические языки) обобщения опыта.
Каррирование, рекурсия, монады, pattern matching.
Все это применяется в ооп языках с разной степенью синтаксической поддержки.
К тому же, в функциональных языках часто есть множество "нестандартных" операторов или стандартные применяются неочевидным образом.
Формально ты прав, но этот вывод не кажется мне полезным.
Похожий гэп существуюет и между разными фреймворками на одном языке, но при этом не мешает(или не всегда мешает) нанимать людей не имевших опыта в этом фреймворке(потому что он же не дурак, разберется) или даже пробовать и переезжать на новую технологию без обладания солидной экспертизой(потому что мы ж не дураки, разберемся).
А ты будешь наивно полагать, что всё в порядке, пока не напишешь тест, не кинешь на ревью и т.д
Ну вообще-то в жизни регулярно так и происходит даже для кода, который ты пишешь на своем основном языке - на первом нормальном ревью приходят люди и начинают объяснять, что "у нас тут не принято срезать углы таким образом которым ты это делаешь", то есть по сути дополнительно обрисовывают рамки допустимого.
Ты прав в том смысле, что сейчас этого меньше и это проще, поскольку у людей пишущих на одном языке словари концепций неизбежно более похожие и близкие к конкретной платформе, но я не вижу принципиальной проблемы почесу человек не мог бы эти проблемы решить в рамках своего предположительно более широкого, но менее конкретного словаря. Даже хотя бы в промт к чатгпт добавить.
J
Бегло посмотрел и не понял, в чем там принципиальная интересность кроме синтаксиса.
Ну да, с непривычки я не смогу на этом написать что-то или проверить за чатгпт, что оно сгенерировало.
Ну так этот язык никто специально чтобы проходить интервью и не учит, учат си подобные, разметку, языки запросов или функциональщину.
Могу привести другой пример - SQL который выглядит примерно одинаково для каждой рбд.
Более того, под него мимикрируют разные nosql базы, чтобы забивать голову юзеру не тем, как написать, а тем, что написать.
В итоге выходит, что когда предметная область более илр менее понятна, то мне не обязательно знать как именно "применить оконную функцию к выборке", мне достатояно знать, что оконные функции существуют, а дальше я с божьей и чатгпт помощью разберусь, как ее написать или как ее заменить если они не поддерживаются.
Речь не про эффективность,
Это пока. В долгосроке речь будет именно про эффективность.
Заявления майков на эту тему не принимаются, так как доверия им как типикал корпе нет.
Знаю один российский банк, который это особо не беспокоит и который копайлот всем девелоперам купил.
Правда, это было до того как запретили принимать деньги от российских компаний, не знаю как сейчас.
Как ты думаешь, как такое решение отразится на их работе - другие украдут их код и банк будет взломан/разорится, или же они смогут меньшими силами деливерить больше фич и вырвутся вперед в конкурентной борьбе?
Ну и наконец, если это беспокойство окажется действительно массовым и помешает распространению технологии, то появятся вендоры предлагающие on premises решения.
но какой у тебя union type в языке без строгой типизации?
Мне ж не просто нужно объединение само по себе, мне нужно решить проблему "пременная должна содержать данные одного типа или другого типа, и я знаю что она может быть решена черкз обьединение, поэтому я я и спрошу у гпт про объединение.
В языке без статической типизации и делать ничего не надо, это просто работает.
В языке со статической типизацией с мощной системой типов я могу эьо прямо в типе выразить, гпт мне это покажет.
В языке со статической типизацией, которая не умеет в объединения будет какой-то другой способ, обертка с флагом и двумя полями, которая либо есть готовая типа Either, либо самому надо сделать.
Важно здесь то, что если я заранее знаю, что именно мне нужно, то могу попросить реализацию этого для конкретного языка, и рассматривать язык как набор фич, а не как уникальную снежинку.
Да, это сработакт не в 100 процентах случаев, всегжа найдктся какой-нибудь раст с борроу чекером, но в 99 процентах случаев в промышленной разработке задаяи решаются одни и те же, языки, используемые для этого делают одно и то же.
то хотя бы вспоминать разные концепции, которых не было в ООП, либо же они там применялись редко.
Это какие, например?
И ты чо, серьёзно собираешься весь этот проприетарный код скармливать копилоту
У компании уже будет лицензия на копилот.
Те, у кого не будет - вымрут, не выдержав конкуренции.
Ты лучше скажи, где за хаскел деньги платят или платили?
Я за свою довольно долгую жизнь лично встречал только одного чела, который за хаскелл деньги получал - в каком-то американском биотехе, но потом он бросил и вернулся писать банковские бекенды на скале.
В Haskell в привычном понимание нету данных.
Конечно же есть.
У тебя есть типы и функции, определенные для этих типов.
Мне не надо учить кажды язык заново чтобы знать что я хочу сделать и попросить это у гпт.
Я знаю, что мне нужен, например "dynamic dispatch", "type union", "async call", "lazy eval" или "write to file" - эти концепции существут независимо от языков. Ну, не совсем независимо, очевидно что тут есть нюансы, но общих концепций овердофига, и идея изучать эти концепции, а не конкретный язык вполне правильная (хотя на практике выйдет, что по крайней мере первый раз все равно ж надо руками потрогать в каком-то конкретном языке)
И много людей на собесах тебе отвечают на этот вопрос правильно?;)
Я не спрашиваю об этом на собеседованиях, я спрашиваю об этом в барах.
Сам-то я, конечно же знаю, что орм это тру вей, а кто не испольрзует орм обречен написать свой недоорм. Практически десятое правило Гринспуна.
Но со мной согласны только 30% коллег...
Но в целом, современный бекенд сложно назвать интересным программированием
Так речь не о том, что интересно, а что нет, а о границах применимости идей автора.
Большая часть промышленной разработки это про унылое перекладывание жсонов на технологии "наша тима подумала и выбрала тот рантайм, который всем уже знаком, но зато новый популярный фреймворк, который делает все то же, что и старый, но немного более лаконично!", деплой в разные, но одинаковые облака, разными, но одинаковыми сиаями...
Эм, сейчас как раз компаниям не нужны закопыши, которые кроме своей сферы ничего не могут
Есть разные компании.
Какие у них будут общие "основы абстрактного программирования"?
У них у всех есть данные.
У них у всех есть операции над данными.
У них у всех есть примерно одинаковые подходы к декомпозиции кода.
Впрочем, этому и так учат, правда скорее в вузах, а не на курсах.
Микросервисная лапша на голанге, жаве, тайпскрипте или питоне принципиально ничем друг от друга не отличается.
С тейком автора про пузырьки и ооп я скорее согласен, но проблема в том, что есть люди, которые могут очень красиво рассказывать про гигапроекты, которые они подымали, но неспособны ответить на то, как конкретно что-то работает - а это нужно чтобы знать как починить когда сломается. При этом подход "сделать микропроект" не работает толком, потому что у людей очень разные способы срезать углы и неизбежно возникает пррблема интерпретации.
Что уж говорить, эта пррблема возникакает даже на "зидайн интервью", когда углы вроде срезать и не надо, но из-за шарочайшего простора иногда бывает чертовски сложно оценить адекватность решения.
Что использовать, белку или горм и почему?
Для того, чтобы "решить" - достаточно знать чем генератор запросов отличается от орма, это не зависит от языка.
Ну а правильный ответ на этот вопрос никто все равно не знает.
Гпт отвечает то же самое, что и 30% девелоперов(другие 30% всегда ответят что орм рулит, а третьи 30% вседа ответят что орм отстой) - блаблабла, производительность, блаблабла, абстракции.
Нельзя. И они не и аннулировали.
Они отменили опцию "продлить с покрытием на случай пожаров", так что люди нессмогли перестраховаться.
А отменили потому что в штате есть потолок цен - и когда они посчитали, что риски пожаров высоковаты, но упердись в потолок, то просто отменили такую опцию совсем.
Оправдывают, но у них есть какая-то исходная точка и по крайней мере дккларируемые авторитеты.
А как быть с нигилистом, который знает что умирает от неизлечимой болезни и решает напоследок устроить кровавый перформанс?
Для верующего человека всегда есть последствия.
Нигилист же от последствий свободен.
запустил" - это процесс со временем.
Нет, то "время" это совершенно другое время, не такое какое мы наблюдаем, мне не составляет никакого труда вставить наш таймлайн во внешний.
Да, это не ответит на вопрос "а что там снаружи", но этого, кажется, и не требуется.
Что было "до" точки - вы не способны представить.
А зачем? Я просто скажу, что не было никакого "до".
Что было в программе "до" того как я ее запустил?
Ничего, этот вопрос не имеет смысла.
Если персонаж в игре вдруг обретет разум и начнет строить модель своего мира и придет к выводу что этот мир начал существовать с определенного "момента" (как он понимает "время"), это никак ему не поможет понять настоящую природу мира в котором он находится.
Идея божественного - универсальный ответ.
Это ответ на вопрос "как работает мир?", а не на вопрос "что такое хорошо, а что такое плохо?".
Гуманизм это про второе, а не про первое, ему не нужна метафизика.
Даже обезьяны, например, знают, что такое справедливость, им для этого не нужна религия, это в них эволюционно встроено. Они это буквально чувствуют, хотя и не могут сформулировать.
Зачем? С чего это вдруг? Значение имеют только жизнь моя и моего племени!
С того, что в людей кроме жадности и ксенофобии встроены так же альтруизм и кооперация.
Не вижу причин, по которым эти биологические свойства способны породить веру в спасение, но не способны породить веру в равенство.
В конфуцианстве сакральным назначен император (нет, не из Вахи), а источником истины объявлено Небо, на этом отличия от религий практически заканчиваются.
Скорее наоборот, на этом заканчиваются сходства с религиями.
Конфуцианство, оно прежде всего про то как надо жить мирскую жизнь, о тому как должно быть устроено общество, про то что такое хорошо, а что такое плохо, а не про метафизическое устройство мира и загробную жизнь.
Опять же, если не нравится Конфуций, возми стоицизм - в нем тоже в фокусе находится человек и его добродетели, а не ангелы или божественные колесницы.
А кто сказал, что заповеди и прочие христианские премудрости - гарантируют попадание в рай?
Ну, гарантий, конечно же нет, но...
Представь, что люди вдруг находят рай. Только рай. И там реально души людей кайфуют, в том числе знакомых тебе. Но некоторых там нет.
Эти факты не доказывает существование ада. В конце концов, может остальные твои знакомые просто пока не дошли, или попали в еще не открытую Вальхаллу, или даже сожраны Слаанеш.
Но сам факт того что рай существует разве не заставит тебя беспокоиться о том, что ад тоже существует, просто пока его не нашли?
Я не делаю чего-то, потому что считаю это неприемлемым и нарушающим мои моральные принципы
Если я сам назначаю себе наказание за нарушение морального приципа("считаю это неприемлимым"), то почему бы мне просто не начать считать это приемлимым?
Зачем мне вообще эти моральные принципы? Буду лучше убивать и грабить.
От конечного ответа в любом случае ничего для меня не изменится.
Не правда.
Если ты узнаешь, что христианский бог реально существует и его обещания это не выдумки, то это повляет на твое поведение, потому что ты вряд ли захочешь попасть в ад.
Ок. Конвергентная эволюция в области мировоззрений - это например, два соседа, один атеист, второй набожный католик.
Отнюдь.
В области мировоззрений это, например, убеждение о том, что смерть это не конец.
Или что чума или бедствия приходят не просто так, а как наказание... откуда-то.
Эти мировоззрения проявляются с завидной регулярностью среди людей живущих даже на разных сторонах земли, что позволяет предположить, что в основе всех этих разных, но похожих мировоззрений лежит нечто биологическое, например, страх смерти и желание объяснить реальность.
А дальше можно сделать предположение, что раз страх смерти и желание объяснить реальность(которое есть даже у упомянутых голубей) могут сгенерировать идею "смерть это не конец", то точно так же они могут сгенерировать и идею "убивать плохо" или "любая жизнь бесценна".
Так, например, конфуцианство это философия которая вполне себе имеет общие черты с гуманизмом, концентрируется на людях, а не на божественном и поощряет вполне себе человеколюбивые добродетели. Или вот греческие стоики.
Но тут, конечно, все зависит от того, как именно ты определяешь гуманизм, или, какую именно составляющую гуманизма ты считаешь важной настолько, чтобы поставить религии ее в заслугу.
Ну, попробуй из рыбы вырастить млекопитающее, минуя промежуточные стадии.
Не рыба и млекопитающее, конечно, но вот, например, иллюстрация конвергентной эволюции: https://ru.wikipedia.org/wiki/%D0%9A%D0%B0%D1%80%D1%86%D0%B8%D0%BD%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F
Чтобы выглядеть как краб вовсе не обязательно родиться крабом, можно прийти к этому и окольным путем при условии что идет движение к некоторому "оптимальному" результату.
Это СЕЙЧАС хорошо рассуждать, имея весь массив знаний, накопленный человечеством за 500-10000 лет
Ну да, именно сейчас и лучше всего размышлять, когда мы видим и знаем кучу всего и можем обобщить исторический опыт и сделать какие-то интересные выводы из него.
Воинствующий рационалист упускает этическую сторону религиозной веры - из которой, при всех её недостатках, вырос современный гуманизм.
Это не заслуга религии.
Сама религия выросла из магического мышления, которое является результатом эволюции нашего вида, то есть имеет биологическую природу.
Современный гуманизм можно было бы вырастить и без этого промежуточного шага.
Такого пробела в науке нет, куда можно его впихнуть.
Пффф, да легко. Не надо его впихивать в реальность, достаточно его наоборот, выпихнуть из реальности.
Мы живем в симуляции, тот кто ее запустил - он и есть бог.
У него есть инструменты влиять на симуляцию если надо.
И сейчас он снимает логи того как ведут себя сложные самовоспроизводящиеся объекты в этой симуляции чтобы найти "лучших" по какому-то критерию и воссоздать их в своей реальности.
И окажется, что ты всю свою жизнь работал не на то, чтобы тебя любили все вокруг и поминали добрым словом (вот она, кстати, и вечная жизнь), а на выдуманное непонятно что и непонятно где.
Не окажется.
Ведь если там ничего нет, то тебе будет уже все равно, поскольку ты перестанешь существовать.
Что ни говори, но у религиозных людей мотивация куда более внятная - "делай так, а иначе потом сильно пожалеешь" -, чем у прожженых материалистов, пытающихся придумать почему надо вести себя хорошо если жизнь конечна.
один из моих любимых примеров:
Почему-то про медведей, которых на брттанских островах уже тысячу лет как не видели.
А можно такое же, но, например, про овец или оленей?
Аналогия не аргумент
Ты неправильно используешь эту отбивку.
Это не аналогия, а модель, ты можешь указать на ее недостатки и я могу либо уточнить ее, либо согласиться с тем, что она неправильно описывает реальность.
У сна есть определение и сны не равно галлюцинации. Точка. Идем дальше.
Не равно.
Я и не говорил, что равно.
Яблоко и груша это тоже не одно и то же, но в контексте употребления их в пищу, у этих двух разных вещей эсть признаки, которые можно обобщить.
Так и в контексте субъективной и объективной реальности у снов и у галлюцинаций есть общие свойства, на которые я попытался указать.
И мне, признаться, сложно представить, что ты это случайно не понял, а не сознательно проигнорировал.
Ты работаешь в МВД? У них такая же логика примерно
Если я правильно тебя, понял, то это претензия к тому, что я слишком широко раздвинул рамки применимости этого принципа.
Ну что же, в таком случае ты совершенно прав, но я это делаю как раз потому что надеюсь услышать от прожженых рационалистов где эти рамки заканчиваются и их взгляд на эту солипсическую картину.
Оооо, а теперь мы апеллируем к здравому смыслу?
Я с этого и начал, вообще-то.
Здравый смысл != факты.
Здравый смысл != доказательства.
Факт в том, что ты пишешь на сайте DTF.
Нет, если бы ты думал, что я это чатгпт, то ты бы даже и не стал начинать эту ветку.
Но в данном случае рационализм очень просто увязать со здравым смыслом - ты просто бессознательно сформулировал гипотезу "все кто пишен на дтф это люди", и до сих пор эта гипотеза всегда подтверждалась, поэтому ты ожидаешь, что и на этот раз эти комментарии пишет именно человек, а не нейросеть или биологический верблюд.
Но что на счет реальности целиком?
Она в целом обладает магией.
Ну она буквально даже не попыталась Геральта полечить, и еще даже рефлексировала, что, мол, ах, если бы я не отказалась от магии, то авось и получилось бы.
Другое косвенное доказательство - наличие шрама.
Если бы она владела магией на уровне "остановить старение", то первым делом убрала бы шрам, в книге явно упоминается, что шрам ей не нравился и она пыталась его прикрыть.
И лично я считаю, что и не должен простой человек фантазировать о переносе в тело крестьянина,
Ой, да ради бога, я не против, мне тоже этот образ скорее не нравится.
Просто лор тут ни при чем, по лору будто бы проще как раз оправдать ее вид на 40 лет - типа отправилась по другим мирам попутешествовать и проведать Галахада, да и увлеклась на 15 лет.
Из чего это исходит и как верифицируется?
Я далее привел пример, который это опровергает.
соответственно и мысль об том, что мы живем во сне тоже фейковая,
Во сне у тебя может возникнуть мысль "черт, да я же сплю", которая не является часть сна.
Если ты и с этим не согласен, то скорее всего тут дело в определении того, что ты и я считаем сном.
Тогда я предложу другой пример: люди, которые видят галлюцинации.
Хотя галлюцинации не существуют в объективной реальности и являются "фейковыми", но мысли и чувства, которые они вызывают, "фейковыми" не яаляются.
Это же можно обобщить до сна - хотя то что люди видят во сне не является частью объективной реальности, но это не обязательно делает чувства, мысли и рассуждения тоже частью сна.
Что-то из серии докажи, что ты не верблюд.
Вообще-то именно об этом и речь.
У тебя нет доказательств того, что я человек, а не верблюд.
Но ты, тем не менее, ведешь себя так будто я человек, а не удивляешься тому, что верблюд может сообщения какие-то на клавиатуре набивать.
Максима "если нет железобетонных доказательств существования, то этого не существует" - она неверная.
Люди всегда оперируют вероятностями.
Она умеет перемещаться в пространстве и времени не потому что она чародейка, а потому что унаследовала эту способность от Лары, и эта абилка отдельно анлочилась. Обычные чародеи так не умеют.
От магии в общем смвсле она отказалась, и поэтому, например, не смогла вылечить Геральта.
Но, конечно, учитывая что Геральт жив, можно это все отретконить.
Так это не про внешность, а про социальный статус. Что касактся внешности, там где-то было упоминание о том, что чародейки предпочитают замораживать свою внешность на возрасте помоложе, а чародеи выбирают возраст постарше и пообстоятельнее.
Ну и Цири не чародейка.
Нет, это не обязательно.
Самый очевидный пример - ты можешь видеть сон, в котором все "наблюдаемое" тобой на самом деле в объективной реальности не существует.
Есть ли у тебя способ доказать, что ты не спишь сейчас? Не думаю.
это мы слепые и не видим перед собой обычной 25 летней тяночки прост.
По-моему ора тут тоже на 25 не выглядит, и рассуждения о непростой жизни в средневековье мне кажутся несколько натянутыми.
Но вообщеее-то... она же может путешествовать во времени. Если необходимо будет обосновать сорокалетнюю Цири, то лор это довольно легко позволяет сделать.
Он смуглый
Если верить картинке, то он не менее смуглый, чем, например, Обама.
А с чертами сложнее, глядя на другие два лица я бы не стал доверять художнику в точности изображения деталей.