Т.е. это цикл, который всегда исполняется один раз, и если он полностью отрабатывает эту одну итерацию, то делает --rs. Иначе, если произошло исключение, то управление передастся в CATCH, который тоже можно научить делать --rs после отработки кода внутри него.
Поскольку переменная exc_try_executed должна быть своя для каждого TRY, то её надо хранить как список, параллельный массиву ret[].
Да, это одна из более-менее стандартных задачек на «advanced C»-извращения :)
Если побольше извратиться, то можно сделать try-throw-catch-аналог (правда, throw у меня получался безаргументный — т.е. throw просто кидает эксепшен безо всяких доп. данных). И можно обойтись без ENDTRY. Ну и, понятно, можно делать максимальную вложенность не жёстко заданной константой, а реализовать это как динамический список.
Ну как аналогичной — для работы во всех компиляторах BOOST_AUTO каждый свой тип надо зарегистрировать через BOOST_TYPEOF_REGISTER_TYPE, что удобным никак назвать нельзя…
На тему LSD и его влияния на психику есть замечательная книга известного врача-психиатра А.Г. Данилина «LSD: галлюциногены, психоделия и феномен зависимости». В книге рассматривается феномен психоделической революции 60-х, приводятся высказывания «идеологов» психоделического движения, а также истории простых людей, «посидевших» на LSD.
Соглашаясь с тем, что как таковой зависимости от LSD не возникает, автор аргументированно излагает своё мнение по поводу того, такая ли уж это «волшебная палочка» для развития личности, и почему вообще LSD так опасен.
Спасибо Progrik за такую рекламу, и ещё за то — что парой неделями ранее он подтолкнул меня к созданию электронной книги, и потом дал несколько ценных советов :)
Долгое время, да и до сих пор, я игнорирую сортировку — по той причине, что все на неё любят набрасываться, и все сайты — так называемые «сборники алгоритмов» обычно наполовину состояли из алгоритмов всякой сортировки :)
Меня это повышенное внимание к такой простой задаче всегда раздражало :) Хотя сейчас есть мысль сделать статью о merge_sortе — поскольку это вообще достаточно мощный приём, который позволяет решать и некоторые другие задачи.
Ха, вы не видели первой версии верстки )))
Вообще, как правильно заметили, примерно половина статей сейчас набраны в формате TeX (они переводятся на лету в HTML моим мини-парсером). Понятно, когда все статьи будут в TeXe, из них можно будет собрать гораздо более симпатичную книгу, но во-первых на переписывание старых статей уйдёт немалое время, а во-вторых возникает проблема перекрестных ссылок (из одних статей на другие алгоритмы) — насколько я знаю, TeX таких вещей в принципе не понимает. Хотя этим, конечно, можно просто пренебречь ради остальных плюсов…
Именно такая идея у меня и появилась, когда я пару недель назад собрал электронную книгу в PDF (кстати, спасибо Progrik за толчок — так бы я ещё долго «планировал» бы заняться книгой :) ). Кто знает, может когда-нибудь я и займусь бумажной книгой… Хотя усилий надо будет вложить уйму, я догадываюсь :)
Тогда идея такая. В TRY после if'а дописать примерно такой цикл:
Т.е. это цикл, который всегда исполняется один раз, и если он полностью отрабатывает эту одну итерацию, то делает --rs. Иначе, если произошло исключение, то управление передастся в CATCH, который тоже можно научить делать --rs после отработки кода внутри него.
Поскольку переменная exc_try_executed должна быть своя для каждого TRY, то её надо хранить как список, параллельный массиву ret[].
Если побольше извратиться, то можно сделать try-throw-catch-аналог (правда, throw у меня получался безаргументный — т.е. throw просто кидает эксепшен безо всяких доп. данных). И можно обойтись без ENDTRY. Ну и, понятно, можно делать максимальную вложенность не жёстко заданной константой, а реализовать это как динамический список.
Соглашаясь с тем, что как таковой зависимости от LSD не возникает, автор аргументированно излагает своё мнение по поводу того, такая ли уж это «волшебная палочка» для развития личности, и почему вообще LSD так опасен.
Меня это повышенное внимание к такой простой задаче всегда раздражало :) Хотя сейчас есть мысль сделать статью о merge_sortе — поскольку это вообще достаточно мощный приём, который позволяет решать и некоторые другие задачи.
Вообще, как правильно заметили, примерно половина статей сейчас набраны в формате TeX (они переводятся на лету в HTML моим мини-парсером). Понятно, когда все статьи будут в TeXe, из них можно будет собрать гораздо более симпатичную книгу, но во-первых на переписывание старых статей уйдёт немалое время, а во-вторых возникает проблема перекрестных ссылок (из одних статей на другие алгоритмы) — насколько я знаю, TeX таких вещей в принципе не понимает. Хотя этим, конечно, можно просто пренебречь ради остальных плюсов…