- 1
- 2
- 3
- 4
- 5
# The API methods die when an error occurs.
say $api->getMe->{result}{username};
# ... but error handling is available as well.
my $result = eval { $api->getMe }
or die 'Got error message: ', $api->parse_error->{msg};
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
0
# The API methods die when an error occurs.
say $api->getMe->{result}{username};
# ... but error handling is available as well.
my $result = eval { $api->getMe }
or die 'Got error message: ', $api->parse_error->{msg};
https://metacpan.org/pod/WWW::Telegram::BotAPI
Продолжаем пиздеть про перл.
Решил выбрать предметную область "Телеграм-бот" чтобы поднатаскаться в «Perl».
Вопрос: что за говно в оп-коде? Это говноспособ обработки ошибок предлагают, или такое распространено? Типа eval вместо try?
MAKAKA # 0
barewords? и это работает с use strict?
eval вместо try это нормальная практика, но если ты все равно собрался die, то зачем что-то ловить?
BOKCEJIbHblu_nemyx # 0 ⇈
guest # 0 ⇈
BOKCEJIbHblu_nemyx # 0 ⇈
MAKAKA # 0 ⇈
BOKCEJIbHblu_nemyx # 0 ⇈
Например где-то при вычислении количества питушни в питушне происходит деление на зиро, и вместо того, чтобы говорит о каком-то хуй пойми чего-на-что делении я хочу сказать внятное, что мне не дали питушню.
vistefan # 0 ⇈
BOKCEJIbHblu_nemyx # 0 ⇈
guest # 0 ⇈
vistefan # 0 ⇈
Заебись, лооол
Всегда завидовал англоязычным людям, что мол для них имена сущностей и ключевые слова в языках, имена функций в либах — как-то роднее. И пожалуйста, вот тебе перл — иностранный агент — реализует буквально концепт ЕСЛИ НЕ из 1С )))
vistefan # 0 ⇈
guest # 0 ⇈
Ruby же:)
А методы, которые что-то меняют, имеют в конце "!"
>в джавке с префиксом IHave
Такая традиция есть в C++ на винде и C# , в джава ее вроде нет.
vistefan # 0 ⇈
Там основу фреймворка ещё до появления их зоопарка, разделения бэка и фронта в вебе на клиент и сервер, и вообще технологии «AJAX», писал очень писучий чувак, который потом ушел в яндекс, и у него как раз мог быть ЦППшный опыт, наверное подрезал фишку.
guest # 0 ⇈
Чувак видимо принес это из C# или C++ (скорее всего).
Мистер Хэнки # 0 ⇈
TEH3OPHblu_nemyx # 0 ⇈
vistefan # 0 ⇈
admin # 0 ⇈
vistefan # 0 ⇈
admin # 0 ⇈
guest # 0 ⇈
TEH3OPHblu_nemyx # 0 ⇈
JAVA OWL PERSISTENCE API
TEH3OPHblu_nemyx # 0 ⇈
MAKAKA # 0 ⇈
guest # 0 ⇈
MAKAKA # 0 ⇈
guest # 0 ⇈
MAKAKA # 0 ⇈
guest3 # 0 ⇈
TEH3OPHblu_nemyx # 0 ⇈
guest # 0 ⇈
guest # 0 ⇈
В перле в рантайме не отличается строка от числа: скаляр и есть скаляр (точнее внутри отличаетcя, но это делать реализации).
В итоге перегрузить оператор по типам операндов нельзя.
Так что нужно явно отличать eq/ne от =/!=
TEH3OPHblu_nemyx # 0 ⇈
Например, плюсик всегда складывает числа, а точка всегда кокококонкатенирует строки, поэтому такой питушни, как в «JS», когда приходится чесать репу, чтобы понять, что сделает плюсик, не бывает.
Так?
MAKAKA # 0 ⇈
Можно чтать из файла и складывать, не надо кастить как питухонские делают
MAKAKA # 0 ⇈
;
но критик ругается
vistefan # 0 ⇈
MAKAKA # 0 ⇈
vistefan # 0 ⇈
vistefan # 0 ⇈
MAKAKA # 0 ⇈
плагин к intellij (весьма неплохой) умеет им ошибки подсвечивать
vistefan # 0 ⇈
guest # 0 ⇈
В проде это в смысле где? Из вебфреймворков можешь глянуть на catalyst.
MAKAKA # 0 ⇈
мильпардон, всё работает.
barewords нельзя вместо строковых тилиралов, а заместо ключей хеша это ок.
gost # 0
Если мне не изменяет память (а она может, шалунья), в «Перле» нет «классических» блоков try-catch, и вместо них используется как раз «eval».
guest # 0 ⇈
die приводит к завершению прогшрамы, но можно завернуть код в eval, и потом считать ошибку в $@
vistefan # 0 ⇈
bormand # 0 ⇈
Вот был у тебя код, который просто помирал при ошибках. А теперь ты можешь его завернуть в eval и обработать ошибку. Даже новый кейворд добавлять не пришлось в язык. И в старом коде не надо менять die на throw.
guest # 0 ⇈
ки
киворд же.
Откуда вообще взялось "кей"?
Кей это персонаж пьесы Шварца "Снежная Королева" (не путать с оригинальной сказкой Андерсена -- в её переводах он обычно Кай)
TEH3OPHblu_nemyx # 0 ⇈
BOKCEJIbHblu_nemyx # 0 ⇈
Кууууик!
vistefan # 0 ⇈
guest # 0 ⇈
BOKCEJIbHblu_nemyx # 0 ⇈
admin # 0 ⇈
JloJle4Ka # 0 ⇈
-принято дрочить на фантазии о измены жены;
-дрочить на негров, которых вживую они скорее всего не видели;
-жаловаться на женщин, что они не приходят и не дают сами;
-наряжаться в женщин;
-коллективно дрочить на собачьи хуи и конские залупы;
-гнобить друг друга по кругу без какого-либо смысла.
guest # 0 ⇈
JloJle4Ka # 0 ⇈
Все тут именно такие.
-наряжаться в женщин;
bormand
Про остальное не буду писать, чтобы не раскрывать местных энтузиастов.
guest # 0 ⇈
какие инцелы ))
Пока одни женщин ебут, другие жалуются на них в Интернете
BOKCEJIbHblu_nemyx # 0 ⇈
TEH3OPHblu_nemyx # 0 ⇈
BOKCEJIbHblu_nemyx # 0 ⇈
MAKAKA # 0 ⇈
TEH3OPHblu_nemyx # 0 ⇈
OlegUP # 0
Этот язык для того и создан, чтобы обрабатывать строки.
vistefan # 0 ⇈
bormand # 0 ⇈
jojaxon # 0 ⇈
guest # 0 ⇈
Репетиторша по пайтону за 1000 рублей, шутки программисты за 300...
bormand # 0 ⇈
XYPO3BO3 # 0 ⇈
admin # 0 ⇈
guest # 0 ⇈
Процентов 10 времени все пинают хуй.
Правда некоторые могут в свободное время что-то изучать или подпиливать
guest # 0 ⇈
А ты оптимист
bootcamp_dropout # 0 ⇈
работа как и другая человеческая активность имеет свои издержки
чтобы работать 40 часов нужно потратить часов 50
jojaxon # 0 ⇈
guest # 0 ⇈
Чувак пишет:
"Пишу не большие программы. " Я дальше читать из пугался.
А питонистка видимо штуку за занятие берет. Имхо, норм
bormand # 0 ⇈
З.Ы. Я о питоне если что.
jojaxon # 0 ⇈
guest # 0 ⇈
jojaxon # 0 ⇈
guest # 0 ⇈
bormand # 0 ⇈
Высокий мускулистый негр из Камеруна обучит нерадивого ученика третьему питону.
guest # 0 ⇈
я за постгрес
jojaxon # 0 ⇈
guest # 0 ⇈
XYPO3BO3 # 0 ⇈
guest # 0 ⇈
Пропущен шаг "реализовываешь для него бекенд для компилятора си", лол
bormand # 0 ⇈
Хотя можно просто выбрать опенсурсный проц, под который уже есть готовый бекенд. Тогда вообще ничего писать не нужно, разве что простенький конвертер из выхлопа синтезатора в твой язык. Скажешь синтезатору, что у тебя техпроцесс кроме nand'а ничего не умеет да и всё.