Pull to refresh
2
2.1

Специалист по теории типов USB-кабелей

Send message

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

С какими правилами? Ближе к КНР? Ближе к РФ? Ближе к США? Ближе к вашим конкретным фантазиям, потому что вы определённо хотите добра всем во всём мире, поэтому ваши фантазии к нему приведут, и поэтому же они и сбудутся?

объединение и стандартизация моральных принципов

На базе христианства, например. Ну вот просто большинством голосов. Готовы к полному запрету абортов?

Для маленькой симуляции объединения и стандартизации предлагаю вам остаться до конца жизни в РФ (вы ж до сих пор не уехали, верно?) и выгибаться буквой зю, но соответствовать её моральным принципам. Вместо РФ можете выбрать любую другую страну, где одобрямс моральных принципов зашкаливает за 86%, а оппозиции нет, потому что как же можно оппонировать такому мудрому и стандартизированному правительству.

Почему же вам не хочется? Может, потому, что нихрена моральные принципы на самом деле не стандартизовались, и пригодность страны для жизни коррелирует с (по крайней мере) историческим плюрализмом мнений в ней?

И, может, потому, что конкуренция между государствами хотя бы минимально заставляет их работать на благо населения — а то шарящее население уедет куда-то ещё, и государство кончится?

а последние лет 200 с экспансией запада (в т.ч. и России, запада - в том смысле что белого мира) и его взглядов на мир

«Конец истории» оказался несколько преждевременным, как показывает практика.

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

Это если победят все правильные идеи, а все неправильные идеи не победят. Правда, тут есть один нюанс: почти любой носитель почти любой идеи искренне считает именно свою идею правильной, а остальные — ересью.

но вот идея с миллионом мелких государств со своими принципами - очевидно провальная

Неочевидно.

пока вполне очевидно что все проблемы с территориальными претензиями

Территориальные претензии как раз давно кончились, кроме пары маленьких, но гордых исключений, но не будем вскрывать эту тему. Остаются претензии к ресурсам (и это вполне возможно и в рамках одного мегагосударства, потому что ресурсы — они для моей клики или вашей клики, которые исторически ассоциируются с нацгосударствами), и так далее.

Физиологически гетерогаметному полу обычно хуже. Следовательно, мужчины должны выходить на пенсию раньше и иметь приоритетное обслуживание в медицинских учреждениях.

Можете. Только потребуется не функция

— Могу ли я написать функцию?
— Да. Только не функцию.

Гм.

Ладно. Функции вычёркиваем.

В C# это сделать несложно даже в старом синтакисисе, без стрелочных функций: создаете объект

Ура, мы пришли к тому, о чём я говорил изначально: создаёте объект.

Кажется, умные люди в умных ООП-книгах называют это «стратегией» (вернее, частным случаем), и, кажется, я ровно такой пример видел в одной из них (но напрочь не помню, в какой). Там, правда, развешивалась целая иерархия в духе

interface ISomeStrategy
{
  T run(T);
}

class Composite : ISomeStrategy
{
  ISomeStrategy S1;
  ISomeStrategy S2;

  T run(T arg)
  {
    return S2.run(S1.run(arg));
  }
}

вместо простого

compose s1 s2 = \arg → s2 (s1 arg)

(которое полиморфно и работает для любых функций, покуда типы подходят, и которое, тем более, во всех известных мне ФП-языках встроено в стандартную либу языка и пишется, скажем, просто как .), но это ведь то же самое и почти так же легко, поэтому программисты не будут лениться и избегать этим пользоваться, не так ли?

В C++, насколько я его представля, сложнее - там память этого объекта надо вовремя освободить, насколько это автоматизировано в современном синтаксисе - не в курсе.

Можно в лямбду по значению захватывать, но да.

Степени оптимизации, разворачивание циклов, поддержка разных типов архитектур, всяких версий наборов sse/avx, скорость компиляции, кроссплатформенность, логгирование. Я не разбираюсь в компиляторах, никогда не писал, но это список навскидку.

Про это я тоже писал: моя реализация давала более производительный код (и ещё имела зачатки статического анализа, лол).

Разница в том, что проценты поддержки семантики нельзя сравнивать напрямую. Я, к примеру, могу написать компилятор, с поддержкой 90% семантики за месяц. С кучей нюансов, да. И говорить, что эти идиоты писали свой годами. Что тоже будет некорректно.

Если они будут поддерживать не 90, а меньше, и выплёвываемый ими код будет работать медленнее, то вполне себе корректно.

Впрочем, в том месте я имел в виду, что мне всё равно, что моя программа корректно скомпилится на 90% или на 40%. Она всё равно не запустится.

Не понял, что это за «эргодичность» такая? В одном случае компилируется 90% программ, в другом — 40%. Это не то же самое.

Но сложный проект обязательно имеет много строк.

Вот здесь мы и несогласны, и весь тред выше — моя попытка пояснить примерами, за счёт чего именно.

Не в 10 раз никак.

И в 10 раз тоже.

Определитесь.

Давно определился: в первой (моей цитате речь не о сложности, а во второй (вашей) — о сложности.

Циркулярка может пилить доски вдоль. Торцовочная - только поперёк. Остальные ваши рассуждения про "пересекающиеся области" смысла не имеют.

Во-первых, мне ни разу не нужно было распилить плинтуса вдоль. Я их пилил только поперёк, и эту задачу могут решить и циркулярка, и торцовочная, и даже лобзик. Эта задача на пересечении.

Во-вторыю, циркулярка не может пилить доски вдоль сама по себе, потому что вам нужна обвязка, чтобы доску зафиксировать, например. Здесь есть тоже кое-какие параллели с этими нашими ЯП, но не будем об этом.

Нет. I said what I said. Я сказал, что ваше утверждение ошибочно.

Потому что что-то там про сложность и мощность.

У ПО есть всего две задачи: делать то, что требуется и не делать то, что не требуется.

Управление сложностью что-то очень резко сдулось, сразу после ФП в шарпе.

И у вас там в голове ничего не щёлкнуло, когда это писали, не? No bells ringing? Нормально вообще требовать семантики хаскеля от кода на шарпе?

Так я-то и не требую. Я констатирую факт, что у шарпа меньше средств выражения семантики композируемым и проверяемым компилятором образом, чем у хаскеля (а у хаскеля меньше, чем у идриса, например).

И я не вижу ваших проектов. Ни гитхаба ни продуктов в паблике. И у меня возникает интересный вопрос.

Предположим, я вам дам ссылку на, скажем, интерпретатор языка смарт-контрактов для одного из блокчейнов, куда я контрибьютил. Дальше что? Пойдёте переписывать его на сишарпе, чтобы сравнить сложность?

Должен ли житель глубоко южного штата, где снег идёт раз в год, сдавать такие же нормативы на вождение зимой/по льду, как житель глубоко северного штата?

Какие должны быть стандарты для сильно rural-штата, где 90% людей вне крупных городов, и как они отличаются от стандартов для «городских» штатов? Это не только вождение в городских условиях, это и послабление стандартов для того, чтобы люди могли куда-то добраться и быть продуктивными членами экономики.

В некоторых штатах можно делать right on red, в некоторых — нет, в некоторых — если подождать. Как унифицировать и почему?

Дальше чисто политически-философские вопросы: исторически федеративная система Штатов даёт очень много власти в руки отдельных, собсна, штатов, и федералам оставляет только регуляцию взаимодействий между штатами. Подобная децентрализация — это одна из тех самых мэдисоновских сдержек против централизации власти и следующей за ней тирании. Обсуждать в этом контексте права, конечно, смешно, но, во-первых, это смешно до первой отмены прав при голосовании не за того президента или выхода на протесты против результатов голосования, а, во-вторых, централизация одних аспектов власти в глазах общества легитимизирует централизацию других аспектов, где может быть ещё менее смешно.

Поэтому не, не соглашусь с вами.

Надеюсь, что нет, потому что, если вкратце, конкуренция юрисдикций, правовых систем и законов — это тоже хорошо.

Вам будет очень тяжело найти более прооружейного человека, чем я, но я против carry reciprocity, например.

При этом я по правам одного штата вполне могу ездить в (и, тем более, проезжать через) другой штат. Есть требования сдать старые права и получить права/ID нового штата (если старые права есть), если вы становитесь резидентом нового штата, но это требование тяжело энфорсить, особенно в граничных случаях.

И да, обмен прав на новые не требует сдавать экзамен по нормативам целевого штата (насколько я знаю, но IANAL). Учитывая, что в разных штатах могут быть очень разные требования, это получается забавно.

Олсо, тем временем поговаривают не только о правах, но и об universal carry reciprocity.

«расскажи, зачем снимаешь деньги со своего счёта и как их потратишь»

Или там,

Canadian Police Chief: “If you ever find yourself the victim of a home invasion, we are urging citizens not to take matters into your own hands... The best defense is to comply...”

(ведь наказывать преступников, или там вообще самооборона — это не либерально-просвещённая идея)

Много там приколов.

боюсь что человечество вообще не готово не то чтобы двигаться в эту сторону но и пытаться обсуждать эту проблему

Я готов обсуждать эту проблему. Давайте?

хотя они все одинаковые люди - мешки с костями, отличаются только записью в бумажке которая лежит в определенном месте на планете...если бумажка "такойто такойтович родился 1 апреля" лежит в Судане, вам не повезло, если в США - повезло

Они одинаковые мешки с костями (плюс-минус), это да. Но у них разная фирмварь, сформировавшаяся под влияниием культуры и условий что рождения, что даже немножко жизни матери.

Поэтому если чувак родился в Судане… хотя не, про Судан не знаю, так вот, если чувак родился, скажем, в Пакистане, а не в США или Европе, то куда больше вероятность, что в его культуре и парадигме отношений с обществом будут понятия кровной мести, скажем, а понятий толерантности (в классическом смысле) — не будет.

И поэтому это, например, выливается в очень прикольные графики о том, какие люди из какой страны рождения где-то там совершают сколько изнасилований.

И поэтому, например, мне было бы очень интересно послушать, почему я должен предпочитать наличие «беженцев» в своём месте жительства его отсутствию, или почему я должен предпочитать суданцев, сомалийцев и пакистанцев, скажем, белым африканерам, бегущим от геноцида.

Готовы обсуждать, или не?

Таки являются: в C++ - там есть унаследованный из C указатель на функцию, а ещё есть указатель на функцию-член (метод, иначе говоря)

Этого недостаточно.

Я могу написать функцию, принимающую два инта и возвращающую третий (их сумму). Могу ли я написать функцию, принимающую два указателя на функцию и возвращающую третий, указывающий, скажем, их композицию?

Олсо, для протокола: C++ — мультипарадигменный язык, поэтому для обсуждения «в ООП принято» лучше читать книжки по ООП, а не языки, которые среди прочего поддерживают ООП (но это неточно).

Это я ещё не касался других параметров. Скажем так, одну и ту же работу можно сделать множеством способов и помимо очевидного процента разборки токенов есть ещё сотни нюансов.

Например? Можно конкретнее?

Я устал от демагогии. Речь шла про, цитирую " 90% набора в правильно исполняемый код ".

На что вы ответили, что либо 100%, либо не считается. Так вот, компилятор плюсов (любой) не обрабатывает 100% исходников, соответствующих стандарту, так, как того требует стандарт. В чём разница?

Неопровержимих причин чтобы что?

Чтобы сказать, например, что «есть сотни нюансов».

Возвращаю: я утверждал, что ООП нужен для управления сложностью. Вы утверждали, что ваш "большой" проект на 5к строк справляется без ООП. Я утверждаю, что проект на 5к строк не может считаться большим. Какая нахуй вера?

Нет. Я утверждал, что судить о сложности проекта по количеству строк — бред, потому что разные языки обладают разной выразительной силой, и если две программы решают одну и ту же задачу, то они имеют одинаковую внутреннюю (которая intrinsic) сложность.

Да, проект на 50к строк (решающий то же, что проект на 5к строк) может иметь большую «добавленную» сложность из-за языка, и там ООП действительно может помочь. Но тогда ООП помогает не «решать задачи», не «управлять сложностью проектов», а обкостыливать кривые языки. И это другой тезис (с которым я даже не буду спорить).

Просто, в частности, из вашего тезиса следует, что крупные проекты без ООП невозможны/тяжелы/етц (выберите модальность по вкусу), а из моего — нет.

То, что я пишу - это вполне научные методы.

Научные методы «сотни нюансов» — это на уровне научных методов «святой имени всех электриков помог».

Есть моё предположение, что возможно вы переоцениваете своё творение. Это ни разу не фантастика, а характерное когнитивное искажение разработчика.

Вполне научные данные я уже привёл в виде измеримых критериев: объём кода, процент решаемых задач, производительность, например. Вы говорите, что это всё ерунда и когнитивные искажения. Штош.

Мерить успешность в процентах ключевых слов - бред. При незаконченности обоих вариантов - тем более.

ХЗ, тут вот измеряют, и на эту страницу даже часто ссылаются, хотя там видно, что никто ничего до конца не поддерживает: https://en.cppreference.com/w/cpp/compiler_support.html

Даже C++23 (вышедший почти три года назад уже) целиком не поддерживает ни один компилятор, что не мешает писать -std=c++23 во флагах сборки, сравнивать разные компиляторы, и так далее.

Кстати, есть ещё третий вариант people forget exists. Но он вам тем более не понравится.

Там на самом деле реализовался третий вариант, и он мне на самом деле не понравился, но это уже корпоративная политика, а не тонкости языка.

Речь была про то, что "инструмент, который может отпилить пальцы - плохой инструмет". Так чтож вы плохим инструментом-то пользуетесь?

Потому что остальные ещё хуже [по совокупности доступных критериев]. Неважно, на самом деле, является ли инструмент «плохим» или «хорошим». Важно, лучше он других или хуже (для данных задач). А как вы его назовёте — это неважно, важна лишь его сравнительная позиция.

Пытаться ловить собеседника на этом, «что ж вы плохим пользуетесь» — это как раз та самая демагогия, которая вас вроде как утомила.

Неправильно. Опять демагогия. Опять манипуляции. Ненавижу этот манипулятивный приём, когда собеседник берёт мои слова и начинает искажать, гиперболизируя.

А к чему эти слова были написаны? Ваш тезис, который вы тут отстаиваете — что $smth не подходит для крупных проектов и управления сложностью. Если вы пишете какие-то тезисы и не пишете явно, что из них следует, то естественно предполагать, что вы ими подтверждаете ваш исходный тезис. Ну или напишите явно, что из них следует-то, и тогда обсудим.

Или, например, инвертируя, как было с инструментами:
Отличный вывод, да? А я что, говорил, что следует?

Вы пользовались отрицанием вашего утверждения для вывода, что критика инструментов, могущих нанести много вреда долбоёбу — плохая идея.

Шарп - статически типизированный язык. У него всё нормально с типами.

Non sequitur. C (без шарпа и плюсиков) — тоже статически типизированный язык, но утверждение «у C всё нормально с типами» — это кекспертиза уровня opennet.

Они есть, они проверяются на этапе компиляции и всевозможные чекеры работают в реалтайме, пока пишешь код.

Важно не то, что они есть, а то, какие поведения они могут запретить. Чем мощнее система типов, тем больше поведений запрещается, тем проще рассуждать о коде, глядя только на типы, и тем больше проверяет компилятор, а не ваш (или мой) величественный взор на PR-ревью.

Решена. Метод вызывается? Ошибки ловятся? Дерево обходится? Чего ещё надо?

Собрать все ошибки, если есть хоть одна, выразить семантику «либо ошибка, либо коммент», и ещё ряд пунктов по списку. Мне его сюда закопипастить?

JS — неудивительно, там же вдохновление из лиспов брали :]

Но тут вопрос не в языках, которыми пользуются ООП-программисты, а в том, что эти ООП-программисты делают. По крайней мере, в моём личном опыте я не особо много использований этих фич видел в коде на питоне или JS.

Делать выводы что компилятор не понимающий 100% - негодный правильно.

Вы делаете не этот вывод. Вы делаете вывод, что до дописывания до 100% сравнивать нельзя.

Начнём с того, что это не соответствует действительности: в компиляторах есть известные баги, компиляторы известно реализуют стандарты/спеки не до конца, и так далее, и это не мешает компиляторами пользоваться. Этот ваш cl.exe вроде как не поддерживал такую базовую штуку, как two-phase lookup, и ничего, люди его не то что сравнивали, люди им пользовались и разрабатывали работающие продукты.

Это не вопрос веры. Я сказал "возможно в варианте В были решены более сложные задачи". Где здесь вера? Это за что меня в религию записывают?

Вера в нахождении всё менее реалистичных и всё более неопровержимых причин. Неопровержимых потому, что вы не воспримете, конечно, утверждение в духе «нет, множество проходящих у них тестов было собственным подмножеством проходящих у меня тестов».

Торцовочная пила. У неё другие задачи, как видно из названия.

Мне не видно, я её для выпиливания плинтусов купил вообще и не шарю, но неважно.

Есть пересечение задач, которое может быть решено обоими видами пил. На этом пересечении эти вещи вполне можно сравнивать.

Во-первых я так не делал. Я говорил про управление сложностью. Слов "не готов" я не писал.

Окей, справедливо. Переформулирую в ваших терминах: язык C++ не позволяет управлять сложностью потому, что там компилятор жрёт много памяти и компилирует долго. Правильно, да?

Ну и с хот релоадом там тоже довольно печально (dlopen/dlclose — это не хот релоад).

А что, бывает иначе?

В некоторых плюсовых проектах — да. Там либо всё красненькое, потому что LSP отвалился, либо ничто не красненькое, потому что LSP снова отвалился, но в другую сторону.

Это не значит, что его там нет или что он хуже.

Наоборот, это значит, что с точки зрения управления сложностью (типы — они для этого) сишарп в этом аспекте хуже.

Потому что, во-первых, у меня не 10 строк обхода дерева.

Но у вас и задача до конца не решена.

Во-вторых у вас не одна строка.

В данном случае строку с типом можно вообще убрать. Воспринимайте её как комментарий.

А вот капиталист выжмет из тебя все соки за "конкурентную" зарплату, которой не факт что хватит для обеспечения благосостояния.

Это программистам не хватает для обеспечения благосостояния? Это программистов выжимают, и у них нет альтернатив? Лол.

И я напомню, что социалистические (коммунистические, если хотите) идеи расцвели в то время, когда капиталиста никто не обязывал ограничивать ваш рабочий день

Социалистические (коммунистические) идеи в США расцветают тогда и среди тех, кто для обеспечения базовых потребностей может реально работать где-то пару часов в день. Сегодня эти идеи — это что называется luxury beliefs.

Люди не на пособиях, мелкие самозанятые, и так далее, почему-то этот коммунизм в гробу видали.

Отпуска, пенсии и больничные тебя, мой 14-ти летний друг, ещё точно не волнуют.

Дедуль, я понимаю, что очень хочется пошутить про возраст собеседника, да и сам коммунизм симпатичен потому, что при нём последний раз хотелось и моглось, но давай воздержимся от подобных унылых школьных переходов, хорошо?

А если серьёзно, отпуска, пенсии и больничные меня вполне волнуют. Пенсия у меня в 401k + личные инвестиции (я считал — это в разы, если не на порядки, эффективнее государственной пенсии), отпуска у меня между работами (занимают месяца, а иногда и год-другой) и по одному дню по пятницам каждый год с этак августа (и мне так удобнее, чем обязательные неделя-две), да и больничные тоже есть. Всё это — сильно выше того, что мне гарантирует весьма слабый трудовой кодекс Штатов.

Вы спросили в чем минусы, я ответил в том что это может стать таковым. Не станет - так и чудесно.

Неявным условием в подобных разговорах является достаточная вероятность и историческая либо логическая обусловленность этих минусов.

Например, отвечать «в чём минус доступности кофе без лицензии и ограничений?» чем-нибудь в духе «кофе — диуретик, поэтому если все начнут пить только его, то умрут от обезвоживани. а не умрут — так и чудесно» формально можно, но бессмысленно. Или там «разрешать аборты плохо, потому что если вдруг все будут делать аборты, то человечество вымрет. а не вымрет — так и чудесно».

И именно поэтому

Но забавно, что этот аргумент вам в голову не пришел.

— он мне, конечно, в голову приходит, но я сразу его отметаю как имеющий слишком низкую ценность для дискуссии.

Тут кстати с другой стороны посмотреть можно - тот же ИИ можно рассматривать как критически важную прорывную технологию, овладение которой раньше других или как минимум не позже важно для общества в целом.

Можно, кстати, посмотреть транзитивное замыкание этих вещей.

Для ИИ нужны видяхи. Следовательно, кранчи в nvidia оправданы. Для видях нужен платежеспособный спрос. Следовательно, кранчи в геймдеве оправданы. Для машинных обучателей нужна работа, следовательно, машинное обучение рекомендательных моделей жоп в инстаграме — общественно полезное дело, и кранчи там тоже оправданы.

Но это так, в порядке развития мысли.

Думаю очевидно, что такие законы прежде всего будут иметь слишком много побочных и сложнопредсказуемых эффектов. Надо ли дальше расписывать?

А с работой такого не будет?

Способность части людей работать по 12 часов в сутки неотличима с этой точки зрения от способности части людей работать 8 + самообразовываться 4 часа в сутки.

Могу привести простой пример - во всех развитых странах сейчас запрещено продавать ядовитую еду.

Неправда. Алкоголь разрешён и не имеет ограничений по объёму на продажу. Сладкая еда с сахаром разрешена и не имеет ограничений ни по объёму, ни по возрасту на продажу.

Конкретно ментоловые сигареты (известный общественный риск для здоровья) разрешены на федеральном уровне в тех же США. Но не потому, что «люди должны иметь право выбирать себя гробить как угодно» (с чем я бы согласился как анкап), а потому, что «ментоловые сигареты особенно любимы расовыми меньшинствами, поэтому запрет — это расизм», или чё-т такое.

Я могу собраться и привести пару десятков примеров ядовитой/вредной/связанной с раком еды и подобных продуктов, которые, однако, спокойно продаются.

Ни одно нормальное общество не полагается на то, что отравившиеся люди как вы говорили в другой ветке "сами виноваты"

Я говорил в другой ветке «сами виноваты» о слегка другом классе поведений. Вы это не заметили, или заметили, но на самом деле ведёте дискуссию недобросовестно и приписываете моим словам контекст, который сильно меняет их заряженность?

Реальная жизнь - это набор компромиссов и нейтрализации все тех же побочных эффектов.

Проблема в том, что невозможно централизованно просчитать все возможные компромиссы и их нейтрализовать. Из такой централизации получается ерунда. Единственный способ это сделать нормально — да-да, позволить рыночку решать. Ну или, в данном случае, мета-рыночку: чтобы в одном государстве был социализм и никому нельзя выделяться, а в другом — зубастый капитализм. Потом посмотрим, где больше открытий, где больше стартапов, где больше 1T-компаний, и куда больше люди иммигрируют (хинт: например, из стран Скандинавии в США, а не обратно, несмотря на существенно более наркоманскую визовую систему США).

Те факторы что вы перечислили тоже имеют свой вес - но основной и главный как по мне это возвращение к норме для других отраслей, айтишников готовят все больше и больше, рабочие места уж не растут так быстро а то и сокращаются

Предложения на синиоров как бы намекают, что это всё не так. Смотрю по своей специализации на рынке США за последние лет 12.

а еще и ИИ подъедает часть работы.

Единственное, что ИИ подъедает — пайплайн обучения джунов в недальновидных компаниях. Так-то оно только работы подкидывает.

Так что ситуация будет возвращаться к норме например для врачей или юристов, ученых или конструкторов.

Врачи получают дохрена [в Штатах], юристы тоже неплохо, учёные… там отдельная история, настолько далёкая от айти, что на это можно забить.

Что же касается некого экономического кризиса - никто не застрахован от его перерастания в новый и крупный кризис, это опять же исторически вполне возможно.

Ничего страшного, это настолько же исторически не страшно, как это исторически возможно. И ограничения овертаймов тут не зароляют вообще никак, к слову.

И уж точно пузырь ИИ с очень высокой вероятностью сдуется

Как можно одновременно писать «ИИ подъедает часть работы» и «пузырь ИИ сдуется»? Это почти наверное следствия из сильно разных, несовместных мировоззренческих картин.

в духе пузыря доткомов (из чего не следует что ИИ бесполезен, гугл тоже доткомом был) и неизвестно насколько сильно это ударит по мировой экономике в целом.

А чё там после пузыря доткомов, айтишка откатилась на уровень «конструкторов»?

В чём смысл проводить аналогию с пузырём доткомов, если она опровергает ваш тезис?

Это откровенно странное высказывание. У огромного количества людей интересы лежат далеко не в тех областях, в которых можно стабильно заработать деньги на жизнь.

Я не против и их не критикую. Просто если вы начинаете рассматривать этих людей, то непонятно, какой вывод вы делаете. Надо ограничить овертаймы потому, что иначе им тяжко? Надо стремиться уравнять в зарплатах и условиях труда тех, кто пишет код с 10 лет и тех, кто впервые написал код на первом курсе специальности, выбранной по «бабок вроде норм платят и на ЕГЭ баллов хватило»?

Так что работа в неинтересных областях вообще-то историческая норма и при наличии мозгов и трудолюбия никогда не вызывала особых проблем. Не думаю, что все юристы например прямо мечтали всегда о такой работе.

Хорошие юристы любят свою работу и интересуются ей вне работы. Хорошие врачи читают статьи после работы (после того, как выжили в интернатуре). Хорошие учёные прошли через publish or perish.

Пришедшие тупо за баблом остаются paralegal'ами, или низкооплачиваемыми околоэйчарами в компаниях, или ассистентами ветеринаров, или публикуются в Вестнике Усть-Пердыщенска дважды (или сколько там для защиты диссера), защищают унылый диссер в 30, и больше про него никогда не вспоминают.

Так я и сужу на данный момент именно высказывания. И такие высказывания опасны для общества и как по мне должны вызывать общественное неодобрение.

Ну вот я общественно неодобряю гугл по этой и многим другим причинам (цензура интернета в американском инфопространстве, например — куда большая такая причина, чем визгливые CEOреканья, на которые уже давно никто не обращает внимания). Но я не требую от государства ничего зарегулировать и запретить.

Я на самом деле не требую от государства зарегулировать и запретить даже тогда, когда мне это напрямую выгодно, но неважно.

Если это превратится в массовую практику, оно должно будет быть ограниченно законодательно.

Если hookup culture превращается в массовую практику, из-за чего какие-то дикие количества мужчин являются одинокими, что негативно влияет на здоровье, рождаемость, вовлёченность их в экономику, и так далее, то надо ли законодательно ограничить hookup culture и забанить тиндер?

(да, социалисты — это инцелы от экономики)

А вот где, кстати, про действия как first-class можно почитать?

В любой книжке по ФП :]

Это ж просто higher-order functions. Передаёшь функцию (олицетворяющую действие) в функцию, и всё. Вот тебе паттерн «стратегия».

Каррирование — это просто паттерн «фабрика». И всё.

Нет. Дело здесь не в наличии конкурентного общественного строя, а в том, что крутить гайки руками можно дольше, чем крутить коммутативные диаграммы башкой (я пробовал и то, и другое, это не элитизм).

То обе не годятся и сравнивать их бесполезно.

Да, если один программист за X времени починил 40% сломанных тестов, а другой — 90%, то они оба одинаково негодные программисты, их сравнивать нельзя. Надо починить 100%, и потом сравнивать.

Тем более, что на практике может встречаться эквивалентные 80%, скажем, которые реализацией A уже покрываются, а B — нет.

Возможно в варианте B намного более сложные задачи решены.

Как я и говорил выше, это для вас вопрос веры: вы, «не зная книг по которым я учился», делаете выводы.

Я не про то. Циркулярка может отпилить пальцы.

Да. Поэтому если что-то можно выпилить при помощи и циркулярки, и miter saw (хз как по-русски), то я предпочитаю miter saw, ровно потому что она от пальцев дальше.

Что самое странное (нет), чем мощнее инструмент, тем больше вреда он может долбоёбу нанести.

Из этого не следует, что любой инструмент, могущий нанести много вреда долбоёбу, заведомо более мощный.

Поэтому логика [...]

[...] хромает в вашем рассуждении выше, сорян.

У меня впечатление, что вам тяжело не переходить на личности.

Для протокола, переход на личности — это аргументация вида «ты неправ потому, что ты идиот и хочешь свою мамку» (хотя последнее скорее фрейдизм, но неважно). Высказывание «ты неправ потому, что A и A ⇒ B известно нам обоим, поэтому из этого следует B, но ты делаешь вывод ¬B» не является, например, переходом на личности. Кстати, переходом на личности не будет даже последующее высказывание «поэтому ты идиот». Вопрос исключительно в том, стоит характеристика личности слева или справа от значка ⇒.

Но это, впрочем, неважно, потому что апелляция к личности — это метод ведения спора, а спор — он вокруг потенциально обсуждаемых высказываний, а фраза «у хаскеля всё плохо с компилятором» поддающимся обсуждению высказыванием не является. У хаскеля всё плохо с компилятором. У C# всё плохо с компилятором. У C++ всё плохо с компилятором. Почему? Я художник, я так вижу.

Был бы другой разговор, если б вы сразу написали, скажем, что…

Ghc очень долго компилирует и жрёт много памяти. Я такую информацию слышал.

… но очень долго — это сколько? И сколько другие компиляторы языков с не менее слабыми по выразительной силе системами типов компилируют с -O0? (известные мне — дольше) Сколько компилируют компиляторы с -O3, которые выдают похожий по производительности код из похожего кода по высокоуровневости?

С памятью — хз, не мегабайт, конечно, но и в своп не уходит на параллельных сборках в 32 процесса на моей домашней машине.

И судить о готовности языка к проду по скорости компиляции и потреблению памяти — плохая идея. У вас тогда и C++ не готов.

Может просто я привык к дотнету, где всё практически моментально.

Я привык к LSP, где всё практически моментально. Пишешь код, а тебе сразу красным подчёркивается, где ты неправ. С какой скоростью работает компилятор — совершенно неважно, потому что саму сборку нужно запускать очень редко.

Может стоило сказать, что ghc нормальный, а компилятор в dotnet - отличный. Да?

Когда у вас там в сишарпе тайпчекер будет такой же, как в хаскеле, и на уровне типов можно будет настолько же легко выражаться, то тогда да, будет отличный.

Ну серьёзно, вот посмотрите на уровень, за который то и то отвечает. Вот зачем нужна беготня по деревьям, когда нет гуя?

Ну, не знаю, когда вы компиляторы пишете, то за всем?

Мне вообще ни разу в жизни не платили за проекты, где был бы гуй (или где хотя бы пригодился бы гуй). Пет-проект у меня такой, с гуями, ровно один, и я его начал школотроном в 15 лет, когда не знал ничего лучше.

Ну допустим, в паре мест бы пригодилось. Но я и так дерево обойду, чай не на брейнфаке.

Ну да, выше уже обошли. 10 строк неподдерживаемого кода вместо одной.

И это я ещё не говорил о магии вроде uniplate.

Во первых это достаточно спорное заявление. Ну или как минимум это очень субъективно.

Безусловно. Вопрос личного опыта, который, однако, вполне себе может быть дополнительной точкой данных.

Объективных сценариев успешной счастливой жизни вообще нет.

А во вторых: так а мне то вы это зачем рассказываете?

Я рассказываю не вам, а в ветке с вашим участием. Потому что эта ветка релевантна.

Information

Rating
1,140-th
Registered
Activity