[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Errors using Guile 2.0 vs. Guile 1.8

From: Paul Smith
Subject: Re: Errors using Guile 2.0 vs. Guile 1.8
Date: Sun, 29 Jan 2012 19:17:57 -0500

On Sun, 2012-01-29 at 17:57 -0500, Mark H Weaver wrote:
> Replying to myself...
> > The relevant difference is that in Guile 1.8, (define foo ...) returns
> > #<unspecified>, but in Guile 2 it returns the 'variable' object for
> > 'foo'.
> I actually think that this qualifies as a bug in Guile, so please don't
> depend on this behavior.  Ideally, (define foo ...) should always return
> #<unspecified>, and I hope we can fix that in 2.0.4.

This definitely is the culprit.  If I add a #f to the end of my
definition, so the result is #f, then it works fine.  Ouch.  That is
going to be a bummer, and no two ways about it.

Was this change present in 2.0/2.0.1/2.0.2 as well?

Either I have to recommend everyone add #f for portability, or else I
have to modify my guile-to-make string conversion to map Guile variable
objects to empty strings, which could cause compatibility issues in the
future if we decide to do something "interesting" with those objects.

Not to mention that there is clearly some work needed, hopefully aided
by someone more familiar with embedded Guile than I, on handling errors
in the Guile interpreter.  If I can't understand the error resulting
from this behavior there's obviously a problem...

Is there any documentation for Guile embedders dealing with how to
gracefully manage errors in Guile code?

 Paul D. Smith <address@hidden>          Find some GNU make tips at:            
 "Please remain calm...I may be mad, but I am a professional." --Mad Scientist

reply via email to

[Prev in Thread] Current Thread [Next in Thread]