Pull to refresh

Comments 8

В самом начале статьи идет куча сложнейшего для восприятия кода, а что же такое CLCS, автор нам так и не рассказал…
Да, наверное с количеством кода перебрал…
Хорошее описание есть по ссылке на PCL ( lisper.ru/pcl/beyond-exception-handling-conditions-and-restarts ).
Надо было ее, наверное, повыше положить.

Но вообще, само описание системы условий/ситуаций CL, пожалуй, стоит отдельной статьи. Тут я про реализацию, в основном, которой, кстати, сам пользуюсь постоянно, в отсутствии возможности писать на CL.
Вместо слабой хэштаблицы можно же использовать thread-local-переменные. Код станет проще от этого.
да, я вот почему-то не подумал, но это было бы логичнее
в .NET 4 как раз ввели замечательный класс ThreadLocal<T>
В .NET с певой версии есть атрибут ThreadStaticAttribute, который вешается на статическую переменную и делает ее локальной для нити.
это да, но с простым ThreadStatic инициализация менее удобная, т.е. само по себе его использование кода не убавит
А как быть если нам нужно иметь несколько блоков catch у одного вызова?
Вложенные handler-bind/handler-case :)
Несколько блоков обработчиков, даже в обычных try-catch, это просто синтаксический сахар.
В принципе, несложно и в данную реализацию его добавить.
Sign up to leave a comment.

Articles