export interrupted-condition? (from ikarus.handlers.ss ?)

Asked by Derick Eddington on 2007-11-19

I'm guessing it's planned to do so. I have a minor need for it, just to satisfy my tinkering. I tried changing the source myself in just 3 places and the resulting ikarus binary segfaults :)

Question information

Language:
English Edit question
Status:
Solved
For:
Ikarus Scheme Edit question
Assignee:
No assignee Edit question
Solved by:
Abdulaziz Ghuloum
Solved:
2007-11-20
Last query:
2007-11-20
Last reply:
2007-11-19
Best Abdulaziz Ghuloum (aghuloum) said : #1

On Nov 19, 2007, at 2:30 PM, Derick Eddington wrote:

> I'm guessing it's planned to do so.

I wasn't exactly planning on doing so. I try to keep my exports to a
minimum.

> I have a minor need for it, just to satisfy my tinkering.

I placed make-interrupted-condition and interrupted-condition? in
their own
system library (ikarus system interrupts) in revision 1093. As with
*all*
system libraries, the interface and implementation can change at any
time and
without prior notice. So, you can tinker all you want with it, and
report any
bugs you may find. Eventually (as time approached infinity):
   1. they may be officially documented and supported, or
   2. they will be dropped and replaced by other functionality.

> I tried changing the source myself in just 3 places and the
> resulting ikarus binary segfaults :)

It's magic :-)

Basically, when ikarus starts, there are no values stored in the
system, no
procedures what so ever. The ikarus system libraries are defined in
a way
that each library can be initialized without using any library that's
not
loaded yet. You modified the "handlers" system, which gets
initialized very
early at load time (it handles garbage collection among other
things), but
you made it reference the "condition" system which gets initialized
towards
the end. So, I added the interrupt condition type to the conditions
system.
So, now, you may segfault if you interrupt the system between in the
50ms
window in between the time the interrupt handler is initialized and
before
the conditions system is initialized. Oh well :-)

Aziz,,,

Thanks Abdulaziz Ghuloum, that solved my question.