В Китае своих стэм выпускников море и безработица у молодежи немаленькая. При этом партия активно выдавливает иностранцев из страны. Хотелось бы понимания, в чем смысл этой визы.
Go зашел массам, потому что его специально сделали для масс. Т.е. официально сделали потупее, чтобы джун мог начать вырабатывать кодосодержащий продукт в кратчайшие сроки.
На высококвалифицированных низкооплачиваемых специалистов всегда огромный спрос.
Про Японию читал, что программисты там на роли чуханов. У них нет места в иерархии фирмы, поэтому у них самый низкий приоритет. Поэтому мизерные зарплаты и никаких перспектив роста. Девушки их обходят стороной. Деды в руководстве, которые не знают с какого конца подойти к компьютеру, усугубляют проблему - они не понимают, зачем нужны эти кнопкодавы.
Читал недавно книгу по Common Lisp. Сразу бросается в глаза его "грязность". Очень много странных функций со странными названиями, множество фич, между которыми нет гармонии. В общем, сразу видно, что его изобретали человек 100 одновременно.
трейты не наследуются друг от друга а только аккумулируют ограничение
В этом суть наследования. Немного контринтуитивно, но верно. Только поэтому приведение к общему типу имеет смысл - мы снимаем ограничения.
в между трейтом и структурой нет отношения наследования типов
Не понятно, что это должно значить.
трейт в принципе не является типом
Но impl X им является, в чем проблема? Это не проблема раста, что в других языках impl для спокойствия и удобства пользователя неявный.
То, что есть в Java/C# - это не 10 заповедей, которые всем нужно соблюдать. Некоторые их даже не считают ООП языками, потому что они устроены не как Smalltalk.
Этот контрпример по сути сведение к проблеме целых чисел. Ничего нового он не дает. Я так понимаю, смысл поста был в том, что вещественные числа "неинтересны", их вещественность не добавляет ничего ценного.
Вообще, стоит держаться подальше от таких "технологий". Кто бы ей не заинтересовался, вряд ли это будет корпоративный жирный клиент. И криминал, наверно, не самый плохой вариант.
А явные ошибки чем лучше? Точно так же любая функция может вернуть непонятно что, непонятно при каких условиях. Мы с легкостью можем свести исключения к ошибкам - везде добавить catch, а обратное не получится.
Бесполезно так считать. В арабском (семитских) языках, например, берешь корень (согласные), вставляешь туда любые гласные и получается новое слово. Считать это официально словом, только если оно есть в словаре? Но это странно. В русском тоже сравнительно легко можно выдумывать новые слова. Вот я назову это словохаканьем - все поймут более менее, что это значит, а официально слова нет. В английском наоборот пространство для словотворчества ограничено, поэтому на каждый чих отдельное слово.
Это все разговоры про уникальные секреты древних. По факту сейчас никому не нужен дорогой бетон, который будет стоять тысячелетия. Здание сломают лет через 100, зачем усложнять себе жизнь. + мы теперь владеем уникальной технологией укладки арматуры в бетон, что еще больше снижает требования к самому бетону.
Теория категорий - это не стрелки, функторы и т.п. мелочи. Это естественные преобразования и еще более сложные построения. Кроме того, это инструмент для изучения общих свойств математических структур, которые понять могут 0.01% людей на планете. Остальным достаточно теории множеств (хотя таких тоже меньше процента, полагаю). Зачем это обычному программисту, какие общие свойства он сможет обнаружить...
Монады тоже утратили актуальность. Их покрывают алгебраические эффекты, которые гораздо понятнее и их польза очевидна.
Теория категорий просто? Ха-ха-ха. Я мог бы в другой жизни быть математиком, но когда я в первый раз увидел теорему о фактор группе по ядру гомоморфизма, я не мог ее понять месяц. Так это просто первый можно сказать уровень абстракции, 1-й семестр 1-го курса. Теория категорий вовсе не о категориях (1 уровень), не о функторах (2 уровень), она о естественных преобразованиях (3 уровень) как базе, а дальше уже строятся еще более сложные объекты. Всем кто считает ее простой, предлагаю понять доказательство леммы Ионеда. Это утверждение уровня 1+1=2, если вы действительно понимаете о чем там речь.
Что сложного вы увидели? Есть структура данных, есть определения которые описывают, как она должна себя вести в различных ситуациях. Всего 2 (две) концепции. Альтернатива этому - выдумывать поведение "по дефолту", а потом удивляться, что что-то пошло не так. Сами имена трейтов даже не нужно помнить, компилятор сам в ошибке скажет, что нужно.
В Китае своих стэм выпускников море и безработица у молодежи немаленькая. При этом партия активно выдавливает иностранцев из страны. Хотелось бы понимания, в чем смысл этой визы.
Go зашел массам, потому что его специально сделали для масс. Т.е. официально сделали потупее, чтобы джун мог начать вырабатывать кодосодержащий продукт в кратчайшие сроки.
На высококвалифицированных низкооплачиваемых специалистов всегда огромный спрос.
Про Японию читал, что программисты там на роли чуханов. У них нет места в иерархии фирмы, поэтому у них самый низкий приоритет. Поэтому мизерные зарплаты и никаких перспектив роста. Девушки их обходят стороной. Деды в руководстве, которые не знают с какого конца подойти к компьютеру, усугубляют проблему - они не понимают, зачем нужны эти кнопкодавы.
Как раз разговоры, сплетни - это свойственные мозгу задачи, а умножение, сложение нет.
Читал недавно книгу по Common Lisp. Сразу бросается в глаза его "грязность". Очень много странных функций со странными названиями, множество фич, между которыми нет гармонии. В общем, сразу видно, что его изобретали человек 100 одновременно.
В этом суть наследования. Немного контринтуитивно, но верно. Только поэтому приведение к общему типу имеет смысл - мы снимаем ограничения.
Не понятно, что это должно значить.
Но impl X им является, в чем проблема? Это не проблема раста, что в других языках impl для спокойствия и удобства пользователя неявный.
То, что есть в Java/C# - это не 10 заповедей, которые всем нужно соблюдать. Некоторые их даже не считают ООП языками, потому что они устроены не как Smalltalk.
Этот контрпример по сути сведение к проблеме целых чисел. Ничего нового он не дает. Я так понимаю, смысл поста был в том, что вещественные числа "неинтересны", их вещественность не добавляет ничего ценного.
Нет. Если посмотреть на фонетическую запись, сразу видно какое это убожество. Как геометрическую задачу решать алгеброй.
Вообще, стоит держаться подальше от таких "технологий". Кто бы ей не заинтересовался, вряд ли это будет корпоративный жирный клиент. И криминал, наверно, не самый плохой вариант.
А явные ошибки чем лучше? Точно так же любая функция может вернуть непонятно что, непонятно при каких условиях. Мы с легкостью можем свести исключения к ошибкам - везде добавить catch, а обратное не получится.
Бесполезно так считать. В арабском (семитских) языках, например, берешь корень (согласные), вставляешь туда любые гласные и получается новое слово. Считать это официально словом, только если оно есть в словаре? Но это странно. В русском тоже сравнительно легко можно выдумывать новые слова. Вот я назову это словохаканьем - все поймут более менее, что это значит, а официально слова нет. В английском наоборот пространство для словотворчества ограничено, поэтому на каждый чих отдельное слово.
По-гречески это значит ошибка.
Это все разговоры про уникальные секреты древних. По факту сейчас никому не нужен дорогой бетон, который будет стоять тысячелетия. Здание сломают лет через 100, зачем усложнять себе жизнь. + мы теперь владеем уникальной технологией укладки арматуры в бетон, что еще больше снижает требования к самому бетону.
Нет. Только решая реальные задачи, можно выявить слабые места. А переписывать уже существующее удобно. И логика уже есть и можно сравнить результат.
Могу сказать, что это намного проще, чем учить С++ или пользоваться окаменевшим в мезозое С.
В нормальных компаниях наоборот поощряют переходить и текущий начальник ничего не может сделать.
Проблема в том, что в императивном языке и реальном мире не нужно это описывать. Это есть само по себе. Трудно продать песок в пустыне.
Теория категорий - это не стрелки, функторы и т.п. мелочи. Это естественные преобразования и еще более сложные построения. Кроме того, это инструмент для изучения общих свойств математических структур, которые понять могут 0.01% людей на планете. Остальным достаточно теории множеств (хотя таких тоже меньше процента, полагаю). Зачем это обычному программисту, какие общие свойства он сможет обнаружить...
Монады тоже утратили актуальность. Их покрывают алгебраические эффекты, которые гораздо понятнее и их польза очевидна.
Теория категорий просто? Ха-ха-ха. Я мог бы в другой жизни быть математиком, но когда я в первый раз увидел теорему о фактор группе по ядру гомоморфизма, я не мог ее понять месяц. Так это просто первый можно сказать уровень абстракции, 1-й семестр 1-го курса. Теория категорий вовсе не о категориях (1 уровень), не о функторах (2 уровень), она о естественных преобразованиях (3 уровень) как базе, а дальше уже строятся еще более сложные объекты. Всем кто считает ее простой, предлагаю понять доказательство леммы Ионеда. Это утверждение уровня 1+1=2, если вы действительно понимаете о чем там речь.
Что сложного вы увидели? Есть структура данных, есть определения которые описывают, как она должна себя вести в различных ситуациях. Всего 2 (две) концепции. Альтернатива этому - выдумывать поведение "по дефолту", а потом удивляться, что что-то пошло не так. Сами имена трейтов даже не нужно помнить, компилятор сам в ошибке скажет, что нужно.