[ocaml] поймать исключение
От: _rasta  
Дата: 10.07.08 08:29
Оценка:
день добрый.

вопрос: можно как-то поймать описание исключения?

что-то вроде:
try 1/0 with _ -> print_endline ("Error: " ^ (и вот тут вот что-то, что
покажет описание))


--
-- via knode --
Posted via RSDN NNTP Server 2.1 beta
Re: [ocaml] поймать исключение
От: D. Mon Великобритания http://thedeemon.livejournal.com
Дата: 10.07.08 09:15
Оценка:
Возможно кто-то подскажет красивый способ.
Некрасивый:
try 1/0 with e -> print_endline ("Error: " ^ Std.dump e)

(используется ExtLib)
Re[2]: [ocaml] поймать исключение
От: Vintik_69 Швейцария  
Дата: 10.07.08 09:25
Оценка:
Здравствуйте, D. Mon, Вы писали:

DM>Возможно кто-то подскажет красивый способ.

DM>Некрасивый:

А чем он некрасивый? Можно еще через Printexc.to_string
Re[3]: [ocaml] поймать исключение
От: _rasta  
Дата: 10.07.08 10:21
Оценка:
Vintik_69 wrote:

> Здравствуйте, D. Mon, Вы писали:

>
> DM>Возможно кто-то подскажет красивый способ.
> DM>Некрасивый:
>
> А чем он некрасивый? Можно еще через Printexc.to_string

thanx

--
-- via knode --
Posted via RSDN NNTP Server 2.1 beta
Re[3]: [ocaml] поймать исключение
От: D. Mon Великобритания http://thedeemon.livejournal.com
Дата: 10.07.08 10:47
Оценка:
Здравствуйте, Vintik_69, Вы писали:

V_>А чем он некрасивый?


Тем что через Obj.magic работает, я надеялся на более элегантное решение. Спасибо за подсказку Printexc, он чуть лучше, хотя механизм используется тот же.
Re: [ocaml] поймать исключение
От: Didro Россия home~pages
Дата: 12.07.08 13:39
Оценка: 14 (1)
Здравствуйте, _rasta, Вы писали:

_>день добрый.

_>вопрос: можно как-то поймать описание исключения?

OCaml не знаю, поэтому может быть и не по теме.

Недавно на LtU появилась статья:

Catch me if you can: Towards type-safe, hierarchical, lightweight, polymorphic and efficient error management in OCaml

The paper also gives a good overview of current techniques of exception checking in OCaml, ie. ocamlexc


http://lambda-the-ultimate.org/node/2892
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.