This is the mail archive of the guile@cygnus.com mailing list for the guile project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: gc notes available



Before I say much else, there's a terminology issue that is bothering
me.  I understand a system to be "real time" iff it makes enough
promises about the execution time of its primitives that the user can
reliably write programs that perform computations at a certain rate,
or within a certain time.  Saying that a system is real time, to me,
specifically excludes "best effort" systems, which are designed to be
almost always efficient enough, but may sometimes be late.  A real
time system makes promises, and is designed to deliver them.

For programs like editors, debuggers, web servers, etc. you don't need
real time, as defined above.  Apache and Photoshop certainly don't
make such promises.  You just need "best effort".  As you point out,
your neural simulations run fine on Java, which is also a best-effort
system.

When one designs a program, there's an enormous difference between
best effort and real time.  So it's very distracting to me when you
say that we need real time behavior to support the applications above,
because I start thinking about treadmill GC's, resource reservation,
disabling virtual memory, and so on.


I'm not going to push Guile to be a real time system, in the sense
above.  I probably wouldn't even accept contributed changes to make
Guile a real time system, because maintaining them would be too
difficult, and too restrictive to our other goals.

Guile is, and will continue to be, a best-effort system.  I just want
our best effort to be much better.