unofficial mirror of guile-devel@gnu.org 
 help / color / mirror / Atom feed
* Eval options macro: backward compatibility?
@ 2007-01-19 15:24 Han-Wen Nienhuys
  2007-01-20 14:35 ` Ludovic Courtès
  2007-01-24 21:05 ` Kevin Ryde
  0 siblings, 2 replies; 19+ messages in thread
From: Han-Wen Nienhuys @ 2007-01-19 15:24 UTC (permalink / raw)



Hello,

what is the status of the eval options structure wrt binary compatibility?

Right now, it says

 scm_t_option scm_evaluator_trap_table[] = {
  { SCM_OPTION_BOOLEAN, "traps", 0, "Enable evaluator traps." },
  { SCM_OPTION_BOOLEAN, "enter-frame", 0, "Trap when eval enters new frame." },
  { SCM_OPTION_BOOLEAN, "apply-frame", 0, "Trap when entering apply." },
  { SCM_OPTION_BOOLEAN, "exit-frame", 0, "Trap when exiting eval or apply." },
  { SCM_OPTION_SCM, "enter-frame-handler", (unsigned long)SCM_BOOL_F, "Handler for enter-frame traps." },
  { SCM_OPTION_SCM, "apply-frame-handler", (unsigned long)SCM_BOOL_F, "Handler for apply-frame traps." },
  { SCM_OPTION_SCM, "exit-frame-handler", (unsigned long)SCM_BOOL_F, "Handler for exit-frame traps." }
};


this order is awkward when a new trap option has to be added.

The problematic thing is that this is exported to GUILE users, through

  #define SCM_ENTER_FRAME_P      scm_evaluator_trap_table[1].val

in eval.h

I would like to change this order, and if possible move this out of
the global namespace.  Are there any objections? It would break binary
compatibility with apps that inspect options by looking at
scm_evaluator_trap_table directly, but I believe those are broken
anyway.


-- 
 Han-Wen Nienhuys - hanwen@xs4all.nl - http://www.xs4all.nl/~hanwen



_______________________________________________
Guile-devel mailing list
Guile-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/guile-devel


^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2007-01-24 22:44 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-01-19 15:24 Eval options macro: backward compatibility? Han-Wen Nienhuys
2007-01-20 14:35 ` Ludovic Courtès
2007-01-22 14:18   ` Han-Wen Nienhuys
2007-01-22 20:48     ` Kevin Ryde
2007-01-23  0:51       ` deprecated features Han-Wen Nienhuys
2007-01-23  1:03         ` Kevin Ryde
2007-01-23  1:20           ` Han-Wen Nienhuys
2007-01-23 14:50             ` Bruce Korb
2007-01-23 22:45               ` Han-Wen Nienhuys
2007-01-23 23:20                 ` Bruce Korb
2007-01-24  0:44                   ` Han-Wen Nienhuys
2007-01-24  0:10                     ` Bruce Korb
2007-01-23 23:10               ` Han-Wen Nienhuys
2007-01-23 23:35                 ` Bruce Korb
2007-01-24  0:38                   ` Han-Wen Nienhuys
2007-01-24 22:44             ` Kevin Ryde
2007-01-22 15:28   ` Eval options macro: backward compatibility? Han-Wen Nienhuys
2007-01-22 20:50   ` Kevin Ryde
2007-01-24 21:05 ` Kevin Ryde

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).