Но хотелось бы знать, с чего тех, кто не разделяет уверенность в существовании тёмной материи записали? Пока с ней ситуация как с эфиром в XIX веке. Вроде всё выглядит так, будто она должна существовать. Но найти её не удаётся никакими усилиями.
case Rectangle(length=l, width=w) if isinstance(l, int):
И это не супермедленно. По крайней мере, насколько я нагуглил, CPython использует для таких сравнений специальные инструкции байткода, типа MATCH_CLASS, MATCH_SEQUENCE. Т.е. это будет работать быстрее аналогичной цепочки if <условия> <условия> <условия>...
Да вроде как да. Видать чего-то не заметил. Потому что про Python ничего не написано. А для Rust примеры не сложнее того, что можно сделать в других языках. Ну, просто вот это:
Some(v) if v > 5 => println!("Больше пяти: {v}")
А в Go я типа не могу if внутрь case вставить? Ну т.е. про Rust ничего особо не показано, а про Python я теперь вообще в непонятках. Может его match мощнее, чем я думал?
Теперь моя очередь вопрос задавать: Вы свой каммент написали чисто потроллить или правда не предположили, что человек может всерьёз спрашивать?
Если вдруг вопрос забылся:
Что такого умеет match в Python, чего не умеют switch в PHP/Go? Если ничего, то имею ли я право задаться вопросом за что Python оказался в списке pattern matching языков?
Обычно я на стороне Rust, но тут несколько вопросиков появилось...
Скорость выполнения Rust-кода действительно впечатляет.
А нельзя ли тогда компилятор Rust написать на самом Rust? А то некоторые жалуются, что у них руки устают драться с коллегами игрушечными мечами верхом на офисных креслах...
развешивать нечитаемую лапшу из вложенных операторов if в связке с несколькими логическими И/ИЛИ (что часто встречается в Go, JavaScript, PHP и Java).
сопоставление по шаблону также доступно в Ruby, Python, Kotlin и C#.
Я сейчас шокирую кого-то. Но в Go и PHP есть switch. С... Спокойно, держите себя в руках. Я понимаю, такое переварить не просто. Многие вообще не в курсе. Но вот. Они есть. Даже работают. Я проверял.
В языках Go и Rust любая возникающая ошибка обязана быть обработана.
Чего, правда? А Go в курсе, что он что-то обязан? Просто выкидываете значение err, не присваивая его и живёте дальше. Как получится. :)
[del]
Ура, больше беременных Эльз!
Короче, неудобные обновления были просто объявлены удобными.
Но хотелось бы знать, с чего тех, кто не разделяет уверенность в существовании тёмной материи записали? Пока с ней ситуация как с эфиром в XIX веке. Вроде всё выглядит так, будто она должна существовать. Но найти её не удаётся никакими усилиями.
Хе-хе... Сегодня буквально вышло.
"Генеральные прокуроры США требуют от Microsoft, OpenAI и Google устранить" мокрость воды...
Ну это как f-строки, только функцию обработки параметра можно свою задать. Чтобы в SQL параметр гарантировано экранировало.
А, так вот оно зачем...
Это да. Всем бы такой "недостаток". :-)
Это сарказм был. Жалуется народ на низкую скорость.
Это просто NPC у которого срабатывает триггер имитации бурной деятельности при проходе рядом игрока.
Видимо так:case Rectangle(length=l, width=w) if isinstance(l, int):И это не супермедленно. По крайней мере, насколько я нагуглил, CPython использует для таких сравнений специальные инструкции байткода, типа MATCH_CLASS, MATCH_SEQUENCE. Т.е. это будет работать быстрее аналогичной цепочки if <условия> <условия> <условия>...
Можно, уже смотрю pep-0636.
case Rectangle(length=l, width=w) if w >= 5 and l < 1:Ну вот, кто-то смог нормально ответить. switch работают примерное как в C. А это интересно, пожалуй к Python и правда стоит снять претензии.
Да вроде как да. Видать чего-то не заметил. Потому что про Python ничего не написано. А для Rust примеры не сложнее того, что можно сделать в других языках. Ну, просто вот это:
А в Go я типа не могу if внутрь case вставить? Ну т.е. про Rust ничего особо не показано, а про Python я теперь вообще в непонятках. Может его match мощнее, чем я думал?
Теперь моя очередь вопрос задавать: Вы свой каммент написали чисто потроллить или правда не предположили, что человек может всерьёз спрашивать?
Если вдруг вопрос забылся:
Что такого умеет match в Python, чего не умеют switch в PHP/Go? Если ничего, то имею ли я право задаться вопросом за что Python оказался в списке pattern matching языков?
Тогда Python почему в списке нормальных языков? Его match умеет не больше switch.
Обычно я на стороне Rust, но тут несколько вопросиков появилось...
А нельзя ли тогда компилятор Rust написать на самом Rust? А то некоторые жалуются, что у них руки устают драться с коллегами игрушечными мечами верхом на офисных креслах...
Я сейчас шокирую кого-то. Но в Go и PHP есть switch. С... Спокойно, держите себя в руках. Я понимаю, такое переварить не просто. Многие вообще не в курсе. Но вот. Они есть. Даже работают. Я проверял.
Чего, правда? А Go в курсе, что он что-то обязан? Просто выкидываете значение err, не присваивая его и живёте дальше. Как получится. :)
Я куплю это... За доллар.
Вход в MAX через Госуслуги. Вход в Госуслуги через MAX...
Ну вот, бывают же хорошие новости с утра...