Войти в систему

Home
    - Создать дневник
    - Написать в дневник
       - Подробный режим

LJ.Rossia.org
    - Новости сайта
    - Общие настройки
    - Sitemap
    - Оплата
    - ljr-fif

Редактировать...
    - Настройки
    - Список друзей
    - Дневник
    - Картинки
    - Пароль
    - Вид дневника

Сообщества

Настроить S2

Помощь
    - Забыли пароль?
    - FAQ
    - Тех. поддержка



Пишет kouzdra ([info]kouzdra)
@ 2012-06-11 16:27:00


Previous Entry  Add to memories!  Tell a Friend!  Next Entry
Зойгадко компутерное:
Что не так в этом вот коде:
  method modul =
    try 
      Module (self#impexps, lazy (
	let decls = self#topdecls     in
	let errs  = self#soft_req EOF in
	(decls, errs)
     ))
    with exn -> 
      Module ([], lazy ([], self#mk_exn exn))

Комменты скринятся.


(Добавить комментарий)


[info]ifp5
2012-06-13 13:55 (ссылка)
Вне контекста (не зная что есть self) и не пиша в быту компиляторов как-то не видно ничего криминального.

(Ответить) (Ветвь дискуссии)


[info]kouzdra
2012-06-13 14:56 (ссылка)
На сам деле оно ни к тому ни другому отношения не имеет - но в коде есть ошибка: я пытался поймать exception изнутри "ленивого" кода - а он есс-но выкидывается не в момент формирования lazy значения, а в момент его вычисления.

(Ответить) (Уровень выше)