Hello I want to use Guile for scripting in program we develop (Vrr - Vector gRaphic editoR). It is written in C and use transaction-like system for handling errors (implemented using setjmp and longjmp). To create working Guile scripting in Vrr, i need good integration of Guile exceptions and Vrr transactions. I use something like: SCM my_c_function_exported_as_scheme_subr (SCM args) { setjmp (); if (first_time) scm_call_with_dynamic_root (thunk, handler) else some_else (); next_code (); } Sometimes in thunk or handler may be called another subr which causes program to longjump to setjmp and use else branch. And my question is whether is correct to leave scm_call_with_dynamic_root (from thunk or handler) with longjmp? Or are there any more issues with mixing guile code (exceptions ...) with setjmp/longjmp? -- Elen sila lumenn' omentielvo Ondrej 'SanTiago' Zajicek (email: santiago@mail.cz, jabber: santiago@njs.netlab.cz) OpenPGP encrypted e-mails preferred (KeyID 0x11DEADC3, wwwkeys.pgp.net) "To err is human -- to blame it on a computer is even more so."