On Thu, 2009-05-28 at 12:59 +0300, Abdulaziz Ghuloum wrote: > On May 28, 2009, at 12:38 PM, Derick Eddington wrote: > > > On Thu, 2009-05-28 at 09:53 +0300, Abdulaziz Ghuloum wrote: > >> For now, I have added a warning message that's printed whenever a > >> library is considered stale. (we should have a "warnings policy") > > > > I think the warnings policy should be: raise-continuable &warning > > exceptions with at least a &message. &warning is non-&serious and so > > the base exception handler will return (as required by R6RS, and > > Ikarus > > already conforms) after printing the exception to (current-error-port) > > (which Ikarus already does) and the program will continue.
> Sounds good to me. Thanks. > > How about a policy for handling these warnings? > > I'm thinking, for example, that ikarus --compile-dependencies should > silently continue "&stale" warnings (or is that undesirable?). You mean not print the exception? I don't have a conviction either way, but I think printing the exception makes sense because when --compile-dependencies is done when non-stale precompiled files already exist, the non-stale ones are not recompiled, and because this is an aspect of --compile-dependencies, I think it makes sense to print the warning saying "I know you have an existing precompiled file, but it's stale so it needs to be recompiled" because that way you know an existing precompiled file was overwritten and was stale. It's consistent with printing the warning when precompiled files are detected as stale when importing. See below for an idea for silencing warnings. > Maybe > we'll also need --warnings-fatal, --warnings-to-file <filename>, etc. If --warnings-fatal makes &ikarus-warning exceptions exit ikarus, that sounds good. But I don't think it should make &warning exceptions exit because those are the users' programs'/libraries' responsibility to handle because the R6RS semantics is for the base handler to return. I know you don't like "chatty compilers" so I see why you want --warnings-to-file :) It sounds good, and we can do --warnings-to-file=/dev/null to silence all Ikarus warnings. I think it also should only deal with &ikarus-warning exceptions. If these are also parameters which are exported from (ikarus), then the RC init file(s) could configure them instead of always needing to give the command-line options, right? Now you can put your sweet command-line options processing library to work for all these new options ;-) (and so they're also added to the --help print-out). -- : Derick ----------------------------------------------------------------
