From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Paul Smith Newsgroups: gmane.lisp.guile.user Subject: Re: Errors using Guile 2.0 vs. Guile 1.8 Date: Sun, 29 Jan 2012 19:17:57 -0500 Organization: GNU's Not Unix! Message-ID: <1327882677.3401.37.camel@homebase> References: <1327852458.3401.10.camel@homebase> <87ty3ejgbx.fsf@netris.org> <87lioqjevm.fsf@netris.org> Reply-To: psmith@gnu.org NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Trace: dough.gmane.org 1327882691 16344 80.91.229.3 (30 Jan 2012 00:18:11 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Mon, 30 Jan 2012 00:18:11 +0000 (UTC) Cc: guile-user@gnu.org To: Mark H Weaver Original-X-From: guile-user-bounces+guile-user=m.gmane.org@gnu.org Mon Jan 30 01:18:09 2012 Return-path: Envelope-to: guile-user@m.gmane.org Original-Received: from lists.gnu.org ([140.186.70.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1Rrewi-0003Jb-9i for guile-user@m.gmane.org; Mon, 30 Jan 2012 01:18:08 +0100 Original-Received: from localhost ([::1]:42997 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Rrewg-0004Q4-1q for guile-user@m.gmane.org; Sun, 29 Jan 2012 19:18:06 -0500 Original-Received: from eggs.gnu.org ([140.186.70.92]:33060) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Rrewc-0004Pz-30 for guile-user@gnu.org; Sun, 29 Jan 2012 19:18:03 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Rrewa-0006dI-IJ for guile-user@gnu.org; Sun, 29 Jan 2012 19:18:02 -0500 Original-Received: from oproxy6-pub.bluehost.com ([67.222.54.6]:38779) by eggs.gnu.org with smtp (Exim 4.71) (envelope-from ) id 1Rrewa-0006d1-CG for guile-user@gnu.org; Sun, 29 Jan 2012 19:18:00 -0500 Original-Received: (qmail 19036 invoked by uid 0); 30 Jan 2012 00:17:58 -0000 Original-Received: from unknown (HELO box531.bluehost.com) (74.220.219.131) by cpoproxy3.bluehost.com with SMTP; 30 Jan 2012 00:17:58 -0000 Original-Received: from 146-115-71-23.c3-0.lex-ubr1.sbo-lex.ma.cable.rcn.com ([146.115.71.23] helo=[172.31.1.105]) by box531.bluehost.com with esmtpsa (SSLv3:AES256-SHA:256) (Exim 4.76) (envelope-from ) id 1RrewY-00071O-Ma; Sun, 29 Jan 2012 17:17:58 -0700 In-Reply-To: <87lioqjevm.fsf@netris.org> X-Mailer: Evolution 2.32.2 X-Identified-User: {678:box531.bluehost.com:madscie1:mad-scientist.us} {sentby:smtp auth 146.115.71.23 authed with paul+mad-scientist.us} X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-Received-From: 67.222.54.6 X-BeenThere: guile-user@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: General Guile related discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-user-bounces+guile-user=m.gmane.org@gnu.org Original-Sender: guile-user-bounces+guile-user=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.user:9214 Archived-At: 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 > > #, 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 > #, 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 Find some GNU make tips at: http://www.gnu.org http://make.mad-scientist.net "Please remain calm...I may be mad, but I am a professional." --Mad Scientist