- 1
- 2
- 3
- 4
- 5
- 6
- 7
public static int getNumber() {
try {
return 7;
} finally {
return 43;
}
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+84
public static int getNumber() {
try {
return 7;
} finally {
return 43;
}
}
Оказывается так делать можно...
Her 15.04.2015 02:06 # 0
ebanutie_sobaki 15.04.2015 02:06 # −6
SSSandman 15.04.2015 11:51 # +1
3_14dar 15.04.2015 23:38 # 0
inkanus-gray 16.04.2015 10:02 # +1
3_14dar 16.04.2015 10:03 # 0
inkanus-gray 16.04.2015 10:23 # 0
return перебрасывает из try в finally. Это почти как break из цикла. Другой вопрос в том, нахрена такому ретурну аргумент, если «возвращаемое» значение на деле никуда не возвращается.
2. Нужен ли return в блоке finally? По сути он ничем не отличается от ретурна, который в конце функции, однако, его выполнение гарантируется даже в случае исключения (если я правильно понял).
А вопрос, нужны ли ретурны не в последней строке кода функции, уже философский. Кто-то следует заветам одновозвратников и ставит один единственный return, а логику разруливает изящными средствами. А кто-то Царь и производит оптимизацию хвостов, вставляя return сразу во все места, после которых нужно завершить функцию и вернуть результат.
Qwertiy 16.04.2015 10:49 # 0
Если произошло исключение, которое мы не обработали (а если обработали, то return после finally так же выполнится), то сам вызов функции упадёт с исключением. Как мы вообще можем в таком случае добраться до того, что вернули из finally?
roman-kashitsyn 16.04.2015 10:54 # +1
Qwertiy 16.04.2015 10:59 # 0
roman-kashitsyn 16.04.2015 11:04 # +2
Qwertiy 16.04.2015 23:38 # 0
Видимо я что-то не понял... А где исключение тогда? Там же нет catch.
bormand 17.04.2015 06:17 # +2
3_14dar 16.04.2015 22:31 # +3
intestinalbrain 15.04.2015 13:01 # +1
inkanus-gray 15.04.2015 15:49 # +2
Qwertiy 15.04.2015 23:19 # +1
PS: Надо было на 42 поменять перед тем, как запостить.
inkanus-gray 16.04.2015 09:57 # 0
• http://ideone.com/hJuMa9
• http://ideone.com/qdRHDn
Признаюсь, это было немного неожиданным. Получается, что результат первого ретурна тупо игнорируется. На самом деле нет:
http://ideone.com/uBT854
Ретурн в строке 3, который служит для выхода из try, но не из метода, зачем-то вычисляет свой аргумент, чтобы потом его потерять.
1024-- 16.04.2015 11:31 # +1
> зачем-то вычисляет свой аргумент, чтобы потом его потерять.
Тогда можно A; B; C; заменять на
И так флудить и троллить.
wvxvw 16.04.2015 12:44 # +3
bormand 16.04.2015 13:23 # +1
1024-- 16.04.2015 17:55 # +1
inkanus-gray 16.04.2015 18:08 # 0
Тут же всё достижимо. Другое дело, что исполнять finally после return мне кажется извращённой логикой.
То ли дело Паскаль, в котором return'ов нет и волей-неволей пишешь одновозвратную конструкцию.
bormand 16.04.2015 18:11 # +5
Да вы задолбали... Вот основное и единственное предназначение finally. Чтобы не писать в 100500 ветках одну и ту же логику по закрытию файлов, освобождению дескрипторов и т.п. Если что-то и запрещать - то return ИЗ finally блока.
inkanus-gray 16.04.2015 18:18 # +2
Всё верно, результат не теряется. По плюсу Борманду и intestinalbrain.
Это ещё менее ожидаемо для меня. В данной схеме блок finally логически расположен после всего тела функции.
Однако, кое-что мне не нравится. После блока finally ведь может следовать ещё код. Если совать return'ы повсюду, будет совершенно не очевидно, в каких случаях этот код после finally достижим, а в каких нет.
bormand 16.04.2015 18:23 # +2
Qwertiy 16.04.2015 23:42 # +3
Как и сделали в шарпе :)
http://ideone.com/rA6SkS - где мой Exception???
roman-kashitsyn 16.04.2015 18:18 # +1
Qwertiy 16.04.2015 23:40 # +1
3.14159265 17.04.2015 14:32 # 0
>флудить и троллить.
Любите вы подхватывать сленг идиотов.
guest 17.04.2015 18:21 # 0
1024-- 17.04.2015 18:33 # 0
Но это да, надо постараться не повторять такие слова, а то можно и до вайпов скатиться.
bormand 17.04.2015 18:42 # 0
guest 17.04.2015 18:57 # 0
Stertor 17.04.2015 20:01 # 0
3_14dar 17.04.2015 20:07 # 0
Stertor 17.04.2015 20:13 # 0
D
3.14159265 17.04.2015 20:42 # 0
Но ведь надо стремиться к чему-то высокому, а то ведь это путь наименьшего сопротивления - написать генератор постов (не особо кащественный ), написать вайпалку и тупо жать кнопочку. юзать форсы придурков типа багра и некоей системы исчисления. Гораздо более почётно стремиться к вершинам духа, стараться воспарить в самый верх заумного подобно wvxvw, придумывать своё, а не паразитировать на умственно отсталых.
И кстати олежка сгенерировал в своё время больше лулзов чем все цари и сёмы вместе взятые.
Правда с откровений что Южная Корея кормит КНДР, лишь бы не быть вместе я громко посмеялся.
3_14dar 17.04.2015 20:53 # 0
Ты про себя?
>олежка
Вы друг друга знаете?
1024-- 17.04.2015 21:15 # 0
Да его же inkanus-gray написал, а Пи только тупо жал на кнопочку!
3_14dar 17.04.2015 21:18 # 0
Stertor 17.04.2015 21:25 # 0
bormand 17.04.2015 21:28 # 0
А зачем тебе прокси в данном случае? Юзал бы луковый маршрутизатор. Если прога с socks проксёй работает, то и с ним сможет.
3_14dar 17.04.2015 21:32 # 0
bormand 17.04.2015 21:43 # 0
> где-то
Да там сама сеть основана на том, что клиент может (и должен!) скачать список всех нод :) Скачать можно с любой ноды, у которой dir порт открыт.
3_14dar 17.04.2015 21:44 # 0
inkanus-gray 17.04.2015 21:54 # +1
Кстати, I2P отпадает, потому что его публичные шлюзы режут http-заголовки и не пропускают во внешний мир кукис.
bormand 17.04.2015 21:57 # +1
bormand 17.04.2015 22:00 # +1
3_14dar 17.04.2015 22:27 # 0
bormand 17.04.2015 22:48 # +1
3_14dar 17.04.2015 22:56 # 0
Stertor 17.04.2015 22:51 # 0
Пусть в новой версии ГК об ответе на его коммент/о новых комментах юзера уведомляет всплывающее окошко.
bormand 17.04.2015 22:54 # +3
Чтобы юзера можно было затроллить и зафлудить в реальном времени?
Stertor 17.04.2015 22:55 # 0
inkanus-gray 17.04.2015 23:37 # 0
kegdan 18.04.2015 11:49 # 0
bormand 17.04.2015 22:01 # −2
3_14dar 17.04.2015 22:28 # 0
Stertor 17.04.2015 21:37 # 0
Тор неудобно таскать, тем более, функционал проги пустяковый. По аналогии со строительством хрущоб, имеется задача: обеспечить людей жильём в кратчайшие сроки. А какое это будет жилье - это уже выходит за рамки вопроса.
* * *
Этажки,кстати, украшают наш город. Вечером очень приятно глядеть, как светятся их окна. Но говорят, что зимой в них холодно. Да и не утаить ничего, звукоизоляции нет.
3_14dar 17.04.2015 21:41 # 0
Stertor 17.04.2015 21:44 # 0
bormand 17.04.2015 21:48 # +2
3_14dar 17.04.2015 21:51 # +1
Stertor 17.04.2015 22:04 # 0
bormand 17.04.2015 22:07 # 0
Stertor 17.04.2015 22:09 # 0
>>ведь кругом есть камеры смартов, регистраторов и т.п.).
Господи... Меня окружают идиоты.
bormand 17.04.2015 22:11 # 0
Stertor 17.04.2015 22:13 # 0
А как тогда - сразу в наручники, и в голубом лимузине, до СИЗО? Кстати, всегда мечтал попасть. Там порой таакие нестандартные личности, ваау... Может, обрёл бы друга по интересам. А уж станет он моим возлюбленным или нет, покажет время.
>>С паяльником в жопе ты
bormand 17.04.2015 22:16 # 0
В неприметной машинке с тонированными стёклами до ближайшего подвальчика, а оттуда куда-нибудь в лес.
Stertor 17.04.2015 22:16 # 0
bormand 17.04.2015 22:20 # +1
Stertor 17.04.2015 22:20 # 0
...если их используют по прямому назначению.
Спасибо, мил человек. Было вкусно, да и поварской колпак тебе очень к лицу.
3_14dar 17.04.2015 22:29 # 0
Stertor 17.04.2015 22:35 # +1
Захотелось острых горячих ощущений?
kegdan 18.04.2015 11:51 # 0
3_14dar 17.04.2015 22:29 # 0
Stertor 17.04.2015 22:32 # 0
Я очень скептически отношусь к брехне Снаудена.Наверняка бредни этого дурашки - всего лишь отвлекающий маневр, перед чем-то более масштабным.
А я и не отрицаю, что работает. Глянь, что пишут про TrueCrypt.
bormand 17.04.2015 22:56 # 0
А что пишут то? Ну помимо мутной истории с его анонимными авторами, которые или решили красиво уйти или им в этом помогли. Что-то новое выяснилось?
Stertor 17.04.2015 22:58 # 0
bormand 17.04.2015 23:01 # 0
Да и хуй с ними, на самом то деле. У меня все разделы не от них зашифрованы, а от банальных воров.
Stertor 17.04.2015 23:04 # 0
bormand 17.04.2015 23:07 # 0
Я тоже. Просто не хочется доверять всякой гопоте всё, что лежит на винте.
Stertor 17.04.2015 23:12 # 0
guest 17.04.2015 23:21 # 0
guest 17.04.2015 23:21 # 0
kegdan 18.04.2015 11:53 # 0
Vasiliy 18.04.2015 12:06 # 0
bormand 18.04.2015 13:44 # 0
1024-- 18.04.2015 13:57 # 0
Опять же, получить известность в сети и толпы поклонников лучше, чем в старости забыть пароль и утратить воспоминания о былом.
Vasiliy 18.04.2015 15:43 # 0
Читал не давно статью про Монику Ливински. С этими выборами в США тема опять актуальна. Так вот та очень плохо относится к своей популярности. А там даже без видео.
ИМХО неловко будет если к примеру директор школы моего ребенка узнает меня с этой стоны. Так что домашнее порно по моему единственное, что надо надо шифровать.
3_14dar 18.04.2015 22:59 # +2
1024-- 17.04.2015 23:57 # 0
Хм... А другая паранойя не пришла?
Всё, что зашифровано, гораздо легче утратить. Шаг вправо, шаг влево - и соснул.
И из-за каких-то дурацких мыслей о том, что сосед дядя Петя может прочитать чужие письма, человек с лёгкостью теряет фотографии любимой собаки.
bormand 18.04.2015 08:03 # +1
Нешифрованную инфу, как показала практика, тоже очень легко утратить. Сгоревшие винты, злые трояны, всякие bumblbee и яндекс-диски... Так что только шифрованные бекапы, только хардкор.
bormand 18.04.2015 08:15 # 0
1024-- 18.04.2015 12:03 # +1
1. Можно забыть пароль. Если пароль нельзя забыть, это ненадёжное шифрование или бумажку с паролем найдут и всё расшифруют.
Кстати, если от волнения забыть пароль в присутствии людей с паяльниками...
2. Умер диск, удалось восстановить какие-то куски файлов. Из незашифрованных текстовых файлов можно вычленить ту часть разговора, где упоминались объёмы продаж мёда за январь. Шифрованные куски - каша, которую никто не разберёт.
3. К физическим ошибками, багам ФС и ОС добавляются ошибки шифрующего ПО.
Шифрованный бэкап где-то в облаке - ладно, пусть на всякий случай будет, но бэкапом его считать не надо. Все шифрованные бэкапы - почти нет бэкапов.
Вообще, комично смотрится такое ослабление надёжности хранения как шифрование в одном предложении с упоминанием резервного копирования.
bormand 18.04.2015 12:54 # 0
Забыть пароль, который набираешь каждый(!) день подходя к компу - это ещё надо постараться... Да и разве кто-то заставляет юзать незапоминаемую хуйню в духе h7jK93mPG2qA5? Парольная фраза с достаточной энтропией легко запоминается, легко восстанавливается и приятна при наборе.
> Шифрованные куски - каша, которую никто не разберёт.
Не совсем. Шифрование работает посекторно. Если диск посыпался - можно восстановить всё, что можно было бы восстановить на нешифрованном диске. Единственный нюанс - нужно иметь бекап суперблока на случай его повреждения.
> комично смотрится
Отсутствие бекапов наносит намно-о-ого больший урон по доступности, чем шифрование :)
1024-- 18.04.2015 13:54 # 0
http://s00.yaplakal.com/pics/pics_original/0/9/5/5110590.png
Жестоко. Всё равно, что сидеть дома в пиджаке и лакированных туфлях.
Подумать только, каждый раз набирать пароль, чтобы получить доступ к своим данным в своей квартире!
Я ещё понимаю, если б это был пароль на удаление бэкапа. Это да, это полезно.
bormand 18.04.2015 14:06 # +1
1024-- 18.04.2015 14:12 # 0
bormand 18.04.2015 14:16 # 0
Vasiliy 18.04.2015 15:46 # 0
3_14dar 18.04.2015 23:02 # 0
Vasiliy 19.04.2015 14:45 # 0
bormand 19.04.2015 14:52 # 0
Но как пароль для шифрования диска - очень маловероятно.
bormand 19.04.2015 14:58 # 0
3_14dar 19.04.2015 19:41 # 0
bormand 18.04.2015 14:19 # 0
Блин, вот вы так говорите, как-будто это сложная, противная и долгая процедура... Это от силы 5-10 секунд занимает. Я же не просто так писал про парольную фразу ;)
1024-- 18.04.2015 14:25 # 0
Если Вы его оставляете где попало, то да, пароль нужен. Если всегда носите с собой, то нет, т.к. тем, кому нужен доступ, не важно, что у Вас требовать с паяльником, ноутбук или пароль.
> как-будто это сложная и долгая процедура
Просто мелкая нудная фигня, словно назойливая муха. Как программисту (читай: лентяю), мне хочется оптимизировать свои действия и тратить время на то, чтобы болтать часами на ГК, а не вводить пароль долгие секунды :)
bormand 18.04.2015 14:31 # 0
> мелкая нудная фигня
Юзай пассфразы, будет весело и ненапряжно ;)
1024-- 18.04.2015 14:52 # 0
Протухшим говном? Хотя, нет, там было что-то с не. Нескучным говном?
Нормальный пароль - что-то контрастное, оно отличается от примелькавшихся фраз, которые я говорю в реальной жизни, он особенный, он запоминается. Обыденный вулкан Петрова №21 или Эйяфьятлайокудль (или как там его)? Второе запомнить легче, хотя бы примерно.
bormand 18.04.2015 15:02 # 0
Ну так и надо выбирать запоминающуюся, яркую фразу (само собой не засвеченную в инете).
Сорок тысяч обезьян в жопу сунули банан.
1024-- 18.04.2015 15:39 # 0
Это если есть воображение или упоротый друг. А иначе придётся думать.
inkanus-gray 18.04.2015 17:08 # 0
inkanus-gray 18.04.2015 16:39 # 0
http://xkcd.com/936/
olvidaras 26.02.2019 18:22 # 0
Нет, ты забудешь.
¡Olvidarás!
3_14dar 18.04.2015 23:01 # 0
И чем ты собираешься потом это расшифровывать? Алсо, для нешифрованных данных может сработать поиск по сигнатуре.
>Отсутствие бекапов наносит намно-о-ого больший урон по доступности, чем шифрование :)
Тру.
bormand 18.04.2015 23:19 # 0
Ну самый тупой вариант:
- копируем выжившие сектора на свежий винт;
- заливаем на него же бекап суперблока, если тот был поврежден;
- расшифровываем винт тем самым софтом, который юзался для шифрования;
- гоняем любые проги для восстановления данных на логическом уровне;
- ???
- профит.
Из плюсов - контора, которая будет выдирать данные с диска, не будет иметь доступа к этим самым данным.
3_14dar 18.04.2015 23:23 # 0
bormand 18.04.2015 23:25 # 0
Это как-то поможет им выдрать больше данных с физики? Потому что всё, что можно сделать на логическом уровне, можно будет сделать и после дешифровки.
bormand 18.04.2015 12:59 # 0
Капля в море, тащемта. Там всё очень примитивно по сравнению с файловыми системами, кодами коррекции на винтах и т.п.
3_14dar 18.04.2015 23:06 # 0
bormand 18.04.2015 13:17 # +1
Проблема в том, что люди верят в то, что они как-нибудь смогут восстановить данные, если проебут пароль. Из-за этой глупой веры они похуистично относятся к ключам и паролям. Результат очевиден.
P.S. А ещё люди любят верить в то, что диск будет сыпаться посекторно, и они хоть что-то смогут с него восстановить... А потом у него сгорает электроника.
3_14dar 17.04.2015 23:02 # 0
bormand 17.04.2015 23:03 # +1
Ух ты! А можно ссылочку?
3_14dar 18.04.2015 23:08 # +2
bormand 18.04.2015 23:36 # +1
В OpenSSL бывают и полезные баги :)
Stertor 17.04.2015 23:06 # +1
Ошибка компиляции комментария: неоднозначность при вызове перегруженной функции.
3_14dar 18.04.2015 00:16 # 0
3_14dar 17.04.2015 22:57 # 0
Человек бросил все и убежал в рашку, чтобы нести бредни? Что ты несешь?
Над трукриптом провели аудит, ничего злонамеренного пока не нашли.
Stertor 17.04.2015 22:59 # 0
И не найдут.
3_14dar 17.04.2015 23:00 # 0
Stertor 17.04.2015 23:02 # 0
3_14dar 17.04.2015 23:03 # 0
Совет: прочти хотя бы одну книжку о криптографии.
Stertor 17.04.2015 23:05 # 0
3_14dar 18.04.2015 00:17 # +1
Ботов написать же смог? Авось и книжку осилишь.
inkanus-gray 18.04.2015 00:32 # 0
https://ru.wikipedia.org/wiki/Алиса_и_Боб
inkanus-gray 17.04.2015 21:52 # 0
В эпоху, когда Опера ещё не поддерживала SOCKS, были ещё какие-то программы, которые соединяли программы, не поддерживающие SOCKS, с SOCKS-проксями.
3_14dar 17.04.2015 21:53 # 0
Stertor 17.04.2015 21:54 # 0
Эх, поздно. Я извратился до такой степени, что запускал одну виртуалку на другой, и указывал прокси. Вот уж поистине ональная огороженность/
3.14159265 18.04.2015 01:07 # +2
Достаточно было надрочить однобитного хомячка вроде тебя и подсунуть ему идейку где взять десяток бесхозных учёток. Спасибо страйкеру за последнюю каплю, после бана началась истерика, поциент забегал с горящей жопой и стал нервно думать: «Что же делать?». Это именно то что называется манипулированием простейшими одноклеточными организмами: мне достаточно было просто написать пару фраз, упомянуть что стертор выкладывал акки — и Сёма уже покорно бежит вайпать говнокод. Чуть позже, подчиняясь воле стадного инстинкта, подключается и сам стертор.
Теория управляемого хаоса в действии.
Вы спросите зачем это мне? Профит в том что на засраный скриптами сайт не набигает всякое школиё. У всех давно стоят фильтры и завсегдатаи только ловят лулз с очередного порваного пукана.
1024-- 18.04.2015 01:44 # +2
Вот войдут они ко мне в комнату, спросят, ходил ли я в школу, сделал ли я уроки. А я ничего не отвечу, я только грустно посмотрю на экран. Говнокод стал моей жизнью, а Пи полностью зохватил моё сознание и управляет им. Я не хочу есть, я не хочу спать, мне больше не нравится одноклассница с третьей парты. Я не встаю из-за стола и не хожу в туалет, в комнате почему-то летают мухи. Говорят, наступило лето, но я об этом не знаю. Они всё врут.
Я хочу вайпать. Я очень хочу вайпать. Я не могу делать это на людях, но родители не выходят из комнаты, они звонят доктору. Они не понимают, что экономика и квазистационарные процессы - это бред. Существует только Пи. Пи говорит только правду. Пи любит нас. Пи готовит нас к великим свершениям. Пи направляет нас. Пи абсолютен: abs(Pi) == Pi. Пи велик. Пи весит 134,9766(6) МэВ. Каждый день он распадается на два фотона ради нас! Каждый день он отдаёт свои 135 МэВ во имя вайпов, излучая божественный свет.
Однажды я вышел из дома и пришёл на геометрию. Они измеряли фигуры линейкой без делений, словно древние греки. Они записывали производные и строили параметрические кривые. Они говорили, что длина окружности связана с Пи. Я знал! Круги на полях - это послание простым смертным от Пи.
Фокус теряется. Почему альфа? Где здесь квадрат?
Я не хочу вайпать. Я хочу вайпать.
guest 07.07.2015 01:53 # 0
guest 18.04.2015 10:32 # 0
А ведь он прав, товарищи...
guest 18.04.2015 10:32 # 0
inkanus-gray 17.04.2015 21:38 # +2
inkanus-gray написал только его ядро (выносящее мозг), основанное на известном алгоритме.
Stertor 17.04.2015 21:40 # 0
3_14dar 17.04.2015 21:42 # 0
Stertor 17.04.2015 21:43 # 0
3_14dar 17.04.2015 21:45 # 0
1024-- 17.04.2015 21:46 # +1
Там и ссылка на комментарий на гк, с чего всё началось.
Stertor 17.04.2015 21:54 # 0
3.14159265 18.04.2015 00:45 # +2
Stertor 04.07.2015 23:57 # 0
kegdan 05.07.2015 09:48 # −1
Stertor 05.07.2015 11:55 # −102
kegdan 05.07.2015 11:56 # 0
bormand 05.07.2015 18:30 # +1
kegdan 05.07.2015 18:39 # 0
kegdan 18.04.2015 11:47 # 0
откуда ты знаешь, может он пивные крышки собирает?
Vasiliy 18.04.2015 12:08 # 0
kegdan 18.04.2015 12:09 # 0
Vasiliy 18.04.2015 15:48 # 0
guest 18.04.2015 16:33 # 0
guest 18.04.2015 16:33 # 0
Qwertiy 15.04.2015 23:18 # +1
Шарп такое не скомпилирует.
intestinalbrain 16.04.2015 13:18 # +1
roman-kashitsyn 15.04.2015 16:44 # 0
3_14_nu_ti_i_mudak 15.04.2015 16:57 # −6
da_vi_ohueli 16.04.2015 22:45 # −1
putin_xyilo 17.04.2015 00:46 # −1
novorossi9-huesossi9 17.04.2015 03:06 # 0
gde_siski_blyat 17.04.2015 08:12 # 0
roman-kashitsyn 17.04.2015 09:44 # 0
3_14dar 18.04.2015 23:25 # +1
Пишу пост и вместо того, чтобы обдумывать, что пишу, думаю о том, чтобы напечатать правильно с лагами. Из-за этого посты с ошибками получаются.
inkanus-gray 19.04.2015 14:19 # +2
Правда и оперативки он с каждой новой версией всё больше жрёт. Но тут я уже и не знаю, чем его заменить. Грёбаный Хром на каждую вкладку создаёт отдельный процесс и жрёт ещё больше.
Вроде пока ещё можно пользоваться Оперой на Presto, но некоторые компании (Гугл, Твиттер, Mail.ru и с каждым днём таких компаний становится больше) стали вставлять в страницы какую-то питушню на JS, от которой Опера/Presto занимает 100% ресурсов процессора. Главное, старые версии сайтов работают нормально, да и новые версии сайтов конкурентов тоже. Но поскольку это говно используют крупные компании, приходится ради него искать браузер...
Остаётся искать где-нибудь оперативку, чтобы можно было в новом Прыщелисе или в Кроме открыть небольшую страницу...
3_14dar 19.04.2015 19:43 # 0
>Вроде пока ещё можно пользоваться Оперой на Presto
Нахуй. Писал уже не раз.
> стали вставлять в страницы какую-то питушню на JS, от которой Опера/Presto занимает 100% ресурсов процессора.
Да. У нее и раньше такие затупы на некоторых страницах встречались.
Новый прыщелис можно открыть только с новым профилем. Кстати, когда только купил SSD - наоткрывал окон хрома как привык, он выжрал гиг 6 памяти и ушел в своп, так с SSD / SATA 150 скорость была все еще приличной.
3.14159265 16.06.2015 00:26 # 0
Были в сишечке коды возврата, которые кстати схоронились в интерпретаторах. И всё было хорошо, да не слишком удобно, и довольно громоздко, gotoшно.
И тут какая-то светлая голова додумалась прикрутить в сишку всякие там классы, шаблоны а с ними и злокачественные исключения. Ну и проблемы начались сразу же: SJLJ, DW2, SEH. Шланг вон до сих пор нормально не линкует под винды без -fno-exception.
Ну исключения это хорошо. А давайте-ка неплохо бы сделать фильтрацию по типам, чтобы не писать if ex instanceof ExceptionA. Заёбись ведь. Сказано — сделано. А еще раз у нас типы появились, то давайте когда пробрасываем исключение, чтоб можно завернуть его в другой тип.
Ну если раньше можно было блок кода, который надо выполнить в любом случае просто вписать в try и в catch, то теперь не получается сделать этого, кроме как словив самый общий тип исключения, выполнив блок кода и пробросив его дальше.
Ага. Вот тут и появился костылик finally.
Ну вроде как все должны быть щасливы. Ан-нет. Мы подходим к тому что написано в посте.
Во-первых, изменение результата возврата функции в finally приводит к непонятной херне.
Ну можно запретить return и поделом (так сделали в шарпе).
Но что делать с исключениями, которые мы ввели в язык на первом шаге7
Как контроллировать что из finally не вылезет исключение? Выход видится только один — добавить очередной костыль, а именно аналог checked exceptions. Только если в жабе есть и unchecked, то тут надо только checked.
Ну и к какому пиздецу нас это привело? checked — говно, практика уже всем это показала.
Посмотрим на проблему с другой стороны.
В try возникло исключение, в finally тоже. Какое из двух кидать? По логике из finally.
Но так мы задушим то что в try — проебем потенциально более важную ошибку.
Ок. Давайте сделаем supressed. Когда в одном исключении как бы кидается 2.
Если раньше у нас были просто цепочки вложенных исключений, то теперь мы получаем дерево.
3.14159265 16.06.2015 00:27 # 0
Stertor 16.06.2015 01:09 # 0
guest 16.06.2015 02:25 # −3
guest 16.06.2015 12:44 # 0