GNU bug report logs - #16357
insufficient print abbreviation in error messages

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: guile; Reported by: Zefram <zefram@HIDDEN>; dated Sun, 5 Jan 2014 23:45:05 UTC; Maintainer for guile is bug-guile@HIDDEN.

Message received at 16357 <at> debbugs.gnu.org:


Received: (at 16357) by debbugs.gnu.org; 26 Jun 2016 01:05:55 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jun 25 21:05:55 2016
Received: from localhost ([127.0.0.1]:55859 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1bGyWJ-0002As-18
	for submit <at> debbugs.gnu.org; Sat, 25 Jun 2016 21:05:55 -0400
Received: from world.peace.net ([50.252.239.5]:58659)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mhw@HIDDEN>) id 1bGyWI-0002Af-5k
 for 16357 <at> debbugs.gnu.org; Sat, 25 Jun 2016 21:05:54 -0400
Received: from pool-71-174-35-80.bstnma.east.verizon.net ([71.174.35.80]
 helo=jojen)
 by world.peace.net with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <mhw@HIDDEN>)
 id 1bGyWB-0001IZ-S8; Sat, 25 Jun 2016 21:05:47 -0400
From: Mark H Weaver <mhw@HIDDEN>
To: Andy Wingo <wingo@HIDDEN>
Subject: Re: bug#16357: insufficient print abbreviation in error messages
References: <20140105230032.GB30283@HIDDEN> <87ziqezqg5.fsf@HIDDEN>
 <87lh1vrggi.fsf@HIDDEN> <87inwzn5w1.fsf@HIDDEN>
Date: Sat, 25 Jun 2016 21:05:36 -0400
In-Reply-To: <87inwzn5w1.fsf@HIDDEN> (Andy Wingo's message of "Thu, 23 Jun
 2016 19:59:10 +0200")
Message-ID: <871t3krc7z.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.95 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 16357
Cc: Zefram <zefram@HIDDEN>, 16357 <at> debbugs.gnu.org, guile-devel@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 0.0 (/)

Andy Wingo <wingo@HIDDEN> writes:

> On Thu 23 Jun 2016 18:57, Mark H Weaver <mhw@HIDDEN> writes:
>
>> Andy Wingo <wingo@HIDDEN> writes:
>>> Or, we could use print states.  But print states are not so great and
>>> ideally we would remove them eventually.
>>
>> We will need print states, or something like them, to support writing
>> cyclic data structures as required by R7RS.
>
> I was thinking parameters would be sufficient.  Dunno.  WDYT about that?

Parameters would propagate to places where we don't want them to
propagate.  For example, if in the course of running a custom printer,
some internal procedure prints something to a different port, e.g. to a
string port, then the parameter would still take effect.

      Mark




Information forwarded to bug-guile@HIDDEN:
bug#16357; Package guile. Full text available.

Message received at 16357 <at> debbugs.gnu.org:


Received: (at 16357) by debbugs.gnu.org; 23 Jun 2016 17:59:20 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 23 13:59:20 2016
Received: from localhost ([127.0.0.1]:52954 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1bG8uN-000205-PA
	for submit <at> debbugs.gnu.org; Thu, 23 Jun 2016 13:59:19 -0400
Received: from pb-sasl2.pobox.com ([64.147.108.67]:58066
 helo=sasl.smtp.pobox.com) by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <wingo@HIDDEN>) id 1bG8uM-0001zx-9b
 for 16357 <at> debbugs.gnu.org; Thu, 23 Jun 2016 13:59:18 -0400
Received: from sasl.smtp.pobox.com (unknown [127.0.0.1])
 by pb-sasl2.pobox.com (Postfix) with ESMTP id 0C4EA25452;
 Thu, 23 Jun 2016 13:59:18 -0400 (EDT)
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=pobox.com; h=from:to:cc
 :subject:references:date:in-reply-to:message-id:mime-version
 :content-type; s=sasl; bh=XtCZy2ydc/NtHKRuZXRDr385ljg=; b=xiT3lm
 dih9thKmh0Nap8tBXe8NcQZ/67PyglyZFwETJ4Ddlh9W3h12s5OLsf53hXxEvK8G
 1gcV22L6qQ2nchpp7/K8F1KyT7wtVAxZCvKZQoQKyJnngKWzzTxdRFV3M58edQue
 /51xXPzMmD7MYNMyrxmFqnxxhxDfPKMrSVdCU=
DomainKey-Signature: a=rsa-sha1; c=nofws; d=pobox.com; h=from:to:cc
 :subject:references:date:in-reply-to:message-id:mime-version
 :content-type; q=dns; s=sasl; b=xgCUPXL7zamujBGDIdXFgP8gjjZRQhlc
 2qg42B5QhpWoyn0Xbpt+/CGxnJma7n6CZnV7g2IX2JurAcBiapoJEOh9d1jxFe9t
 io5dPLMAvE7Eyz4cRNTK7ZeOFdsGbQhe/6He1L0RsuzmRjnLG/xuJv45YY90MaDU
 pH0PFArV3Fg=
Received: from pb-sasl2.nyi.icgroup.com (unknown [127.0.0.1])
 by pb-sasl2.pobox.com (Postfix) with ESMTP id 0439525451;
 Thu, 23 Jun 2016 13:59:18 -0400 (EDT)
Received: from clucks (unknown [88.160.190.192])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by pb-sasl2.pobox.com (Postfix) with ESMTPSA id 2695125450;
 Thu, 23 Jun 2016 13:59:17 -0400 (EDT)
From: Andy Wingo <wingo@HIDDEN>
To: Mark H Weaver <mhw@HIDDEN>
Subject: Re: bug#16357: insufficient print abbreviation in error messages
References: <20140105230032.GB30283@HIDDEN> <87ziqezqg5.fsf@HIDDEN>
 <87lh1vrggi.fsf@HIDDEN>
Date: Thu, 23 Jun 2016 19:59:10 +0200
In-Reply-To: <87lh1vrggi.fsf@HIDDEN> (Mark H. Weaver's message of "Thu, 23
 Jun 2016 12:57:17 -0400")
Message-ID: <87inwzn5w1.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Pobox-Relay-ID: 34158670-396C-11E6-B0A9-28A6F1301B6D-02397024!pb-sasl2.pobox.com
X-Spam-Score: -1.4 (-)
X-Debbugs-Envelope-To: 16357
Cc: Zefram <zefram@HIDDEN>, 16357 <at> debbugs.gnu.org, guile-devel@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.4 (-)

On Thu 23 Jun 2016 18:57, Mark H Weaver <mhw@HIDDEN> writes:

> Andy Wingo <wingo@HIDDEN> writes:
>> Or, we could use print states.  But print states are not so great and
>> ideally we would remove them eventually.
>
> We will need print states, or something like them, to support writing
> cyclic data structures as required by R7RS.

I was thinking parameters would be sufficient.  Dunno.  WDYT about that?

Andy




Information forwarded to bug-guile@HIDDEN:
bug#16357; Package guile. Full text available.

Message received at 16357 <at> debbugs.gnu.org:


Received: (at 16357) by debbugs.gnu.org; 23 Jun 2016 16:57:38 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 23 12:57:38 2016
Received: from localhost ([127.0.0.1]:52907 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1bG7wg-0000Pv-1B
	for submit <at> debbugs.gnu.org; Thu, 23 Jun 2016 12:57:38 -0400
Received: from world.peace.net ([50.252.239.5]:35468)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mhw@HIDDEN>) id 1bG7we-0000Pf-Fc
 for 16357 <at> debbugs.gnu.org; Thu, 23 Jun 2016 12:57:36 -0400
Received: from c-73-253-48-168.hsd1.ma.comcast.net ([73.253.48.168] helo=jojen)
 by world.peace.net with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <mhw@HIDDEN>)
 id 1bG7wY-00016U-Of; Thu, 23 Jun 2016 12:57:30 -0400
From: Mark H Weaver <mhw@HIDDEN>
To: Andy Wingo <wingo@HIDDEN>
Subject: Re: bug#16357: insufficient print abbreviation in error messages
References: <20140105230032.GB30283@HIDDEN> <87ziqezqg5.fsf@HIDDEN>
Date: Thu, 23 Jun 2016 12:57:17 -0400
In-Reply-To: <87ziqezqg5.fsf@HIDDEN> (Andy Wingo's message of "Tue, 21 Jun
 2016 14:17:30 +0200")
Message-ID: <87lh1vrggi.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.95 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 16357
Cc: Zefram <zefram@HIDDEN>, 16357 <at> debbugs.gnu.org, guile-devel@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 0.0 (/)

Andy Wingo <wingo@HIDDEN> writes:
> Or, we could use print states.  But print states are not so great and
> ideally we would remove them eventually.

We will need print states, or something like them, to support writing
cyclic data structures as required by R7RS.

     Mark




Information forwarded to bug-guile@HIDDEN:
bug#16357; Package guile. Full text available.

Message received at 16357 <at> debbugs.gnu.org:


Received: (at 16357) by debbugs.gnu.org; 21 Jun 2016 15:10:35 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jun 21 11:10:35 2016
Received: from localhost ([127.0.0.1]:49897 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1bFNJz-0006K1-6k
	for submit <at> debbugs.gnu.org; Tue, 21 Jun 2016 11:10:35 -0400
Received: from pb-sasl1.pobox.com ([64.147.108.66]:51980
 helo=sasl.smtp.pobox.com) by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <wingo@HIDDEN>) id 1bFNJl-0006Jg-PG
 for 16357 <at> debbugs.gnu.org; Tue, 21 Jun 2016 11:10:34 -0400
Received: from sasl.smtp.pobox.com (unknown [127.0.0.1])
 by pb-sasl1.pobox.com (Postfix) with ESMTP id 6B00923A56;
 Tue, 21 Jun 2016 11:10:21 -0400 (EDT)
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=pobox.com; h=from:to:cc
 :subject:references:date:in-reply-to:message-id:mime-version
 :content-type; s=sasl; bh=9kjhafAKumlsLjQXdtDvymyZQdc=; b=oTweUc
 JLY68qfd9b3HtYTGBxug5SzYaU6NK97pEYV8s/GPWqO1oLRZL5W97TWMunlTS2Lk
 t4ft2uUpEK5c/VjBXYKpePXi/sg/Lr5EeYZUC9PbD3Wl0+4THW8oVpmimC8WwUHt
 +fa4ldiIJZ2kUwIvljyNT914ymY90xBFqNpIo=
DomainKey-Signature: a=rsa-sha1; c=nofws; d=pobox.com; h=from:to:cc
 :subject:references:date:in-reply-to:message-id:mime-version
 :content-type; q=dns; s=sasl; b=jrs9CrBLvmVS4xreQF0WLnkbX3tYUqhH
 tqyJgHmKp4x1Ved+gwxpQ68poLhILZt6YnRX0QcpMgTWfhl1naVb7nXtlYZR3wF6
 1BMWJdLPD9A8Djt+vBJfgbQDjN2WAv5yy0md4Q1UcD76s1CKFj/a089Tvxw+L58X
 zUhDaZSNSVM=
Received: from pb-sasl1.nyi.icgroup.com (unknown [127.0.0.1])
 by pb-sasl1.pobox.com (Postfix) with ESMTP id 6280223A55;
 Tue, 21 Jun 2016 11:10:21 -0400 (EDT)
Received: from clucks (unknown [88.160.190.192])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by pb-sasl1.pobox.com (Postfix) with ESMTPSA id 7811423A48;
 Tue, 21 Jun 2016 11:10:20 -0400 (EDT)
From: Andy Wingo <wingo@HIDDEN>
To: Zefram <zefram@HIDDEN>
Subject: Re: bug#16357: insufficient print abbreviation in error messages
References: <20140105230032.GB30283@HIDDEN> <87ziqezqg5.fsf@HIDDEN>
 <20160621123840.GZ1170@HIDDEN>
Date: Tue, 21 Jun 2016 17:10:13 +0200
In-Reply-To: <20160621123840.GZ1170@HIDDEN> (zefram@HIDDEN's message of
 "Tue, 21 Jun 2016 13:38:40 +0100")
Message-ID: <871t3qy3vu.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Pobox-Relay-ID: 45558562-37C2-11E6-9408-C1836462E9F6-02397024!pb-sasl1.pobox.com
X-Spam-Score: -1.4 (-)
X-Debbugs-Envelope-To: 16357
Cc: 16357 <at> debbugs.gnu.org, guile-devel@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.4 (-)

On Tue 21 Jun 2016 14:38, Zefram <zefram@HIDDEN> writes:

> Andy Wingo wrote:
>>Thoughts?
>
> How was this managed in Guile 1.8?

The printers and the backtrace handling was quite different, but it used
"print states".

> It seems that you need the truncated-print mechanism to be always
> available internally, but this doesn't require that it be always visible
> to the user.  You can still require the full libraries to be loaded for
> the user to get access.
>
> Lazy loading sounds like a bad idea.  Error handling is a bad place to
> attempt something that complex and failure-prone.

That's what we do for backtrace printing in 2.2, for what it's worth.
It's a tradeoff between memory size, good errors, maintainability,
startup time, safety, duplication... the global optimimum corresponds to
no per-axis optimimum :/

Andy




Information forwarded to bug-guile@HIDDEN:
bug#16357; Package guile. Full text available.

Message received at 16357 <at> debbugs.gnu.org:


Received: (at 16357) by debbugs.gnu.org; 21 Jun 2016 12:38:44 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jun 21 08:38:44 2016
Received: from localhost ([127.0.0.1]:48716 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1bFKx2-0002Gg-KT
	for submit <at> debbugs.gnu.org; Tue, 21 Jun 2016 08:38:44 -0400
Received: from river.fysh.org ([87.98.248.19]:58941 ident=Debian-exim)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <zefram@HIDDEN>) id 1bFKx1-0002GY-5T
 for 16357 <at> debbugs.gnu.org; Tue, 21 Jun 2016 08:38:43 -0400
Received: from zefram by river.fysh.org with local (Exim 4.84_2 #1 (Debian))
 id 1bFKwy-000859-EA; Tue, 21 Jun 2016 13:38:40 +0100
Date: Tue, 21 Jun 2016 13:38:40 +0100
From: Zefram <zefram@HIDDEN>
To: guile-devel@HIDDEN, 16357 <at> debbugs.gnu.org
Subject: Re: bug#16357: insufficient print abbreviation in error messages
Message-ID: <20160621123840.GZ1170@HIDDEN>
References: <20140105230032.GB30283@HIDDEN>
 <87ziqezqg5.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <87ziqezqg5.fsf@HIDDEN>
X-Spam-Score: -1.4 (-)
X-Debbugs-Envelope-To: 16357
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.4 (-)

Andy Wingo wrote:
>Thoughts?

How was this managed in Guile 1.8?

It seems that you need the truncated-print mechanism to be always
available internally, but this doesn't require that it be always visible
to the user.  You can still require the full libraries to be loaded for
the user to get access.

Lazy loading sounds like a bad idea.  Error handling is a bad place to
attempt something that complex and failure-prone.

-zefram




Information forwarded to bug-guile@HIDDEN:
bug#16357; Package guile. Full text available.

Message received at 16357 <at> debbugs.gnu.org:


Received: (at 16357) by debbugs.gnu.org; 21 Jun 2016 12:17:46 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jun 21 08:17:46 2016
Received: from localhost ([127.0.0.1]:48699 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1bFKck-0001kZ-59
	for submit <at> debbugs.gnu.org; Tue, 21 Jun 2016 08:17:46 -0400
Received: from pb-sasl1.pobox.com ([64.147.108.66]:52486
 helo=sasl.smtp.pobox.com) by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <wingo@HIDDEN>) id 1bFKce-0001kL-Nb
 for 16357 <at> debbugs.gnu.org; Tue, 21 Jun 2016 08:17:45 -0400
Received: from sasl.smtp.pobox.com (unknown [127.0.0.1])
 by pb-sasl1.pobox.com (Postfix) with ESMTP id 6600422836;
 Tue, 21 Jun 2016 08:17:38 -0400 (EDT)
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=pobox.com; h=from:to:cc
 :subject:references:date:in-reply-to:message-id:mime-version
 :content-type; s=sasl; bh=nysY4AKfsKfKNrmOaowFlIYFNU4=; b=fEBxqB
 +64U9kjQOyFfTNnxK3ArSKoz/iNox95mX2jcWTiplNJ5W+lkH8i4CIZpXP/5FCuj
 MqIYBoYnwm7Z3TsrJuWgaU9esq+sL7R0LfYrGxRNBN2e2i7riO4UoDgWIkUoH+L6
 mOtzOgB7BEDpcd1P55CNxHM0zNAnniw0543dk=
DomainKey-Signature: a=rsa-sha1; c=nofws; d=pobox.com; h=from:to:cc
 :subject:references:date:in-reply-to:message-id:mime-version
 :content-type; q=dns; s=sasl; b=N45fmfBqDaJP+xDyMkI0uRimbKnF35c8
 1jnLFaiKSLZMOJttMwql0s+Y5wJU1aJLEsf2BiE7riSIoSQAPrltNXavBAs/u5A1
 sjG9PDs48QUXPe4STILH1ifGmxio76mNrPp5WbGobAhY8mCGg0sOxsFHMDxsQ7y4
 v+WkTEJ//SQ=
Received: from pb-sasl1.nyi.icgroup.com (unknown [127.0.0.1])
 by pb-sasl1.pobox.com (Postfix) with ESMTP id 5EE7E22835;
 Tue, 21 Jun 2016 08:17:38 -0400 (EDT)
Received: from clucks (unknown [88.160.190.192])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by pb-sasl1.pobox.com (Postfix) with ESMTPSA id 66D6222834;
 Tue, 21 Jun 2016 08:17:37 -0400 (EDT)
From: Andy Wingo <wingo@HIDDEN>
To: guile-devel@HIDDEN
Subject: Re: bug#16357: insufficient print abbreviation in error messages
References: <20140105230032.GB30283@HIDDEN>
Date: Tue, 21 Jun 2016 14:17:30 +0200
In-Reply-To: <20140105230032.GB30283@HIDDEN> (zefram@HIDDEN's message of
 "Sun, 5 Jan 2014 23:00:32 +0000")
Message-ID: <87ziqezqg5.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Pobox-Relay-ID: 2475FE84-37AA-11E6-BE6D-C1836462E9F6-02397024!pb-sasl1.pobox.com
X-Spam-Score: -1.4 (-)
X-Debbugs-Envelope-To: 16357
Cc: Zefram <zefram@HIDDEN>, 16357 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.4 (-)

Not really sure what to do here.

Ideally we could just use ~@y in the format messages.  However we can't
rely on having a full format loaded up, only simple-format.  We could
lazily load the full format when needed, but I don't know if we should
train users that the full `format' is always around.

We could define well-known parameters for specifying that we should
truncate the output of a `write' procedure, and have pair / vector /
bytevectors use that parameter when needed.  Perhaps that's the thing?

Or, we could use print states.  But print states are not so great and
ideally we would remove them eventually.

Thoughts?

Andy

On Mon 06 Jan 2014 00:00, Zefram <zefram@HIDDEN> writes:

> When guile is constructing error messages that display offending objects,
> in version 2.0.9 it never abbreviates long or deep structures.  This can
> easily lead to pathologically-long messages that take stupid amounts of
> time and memory to construct and to display.  By contrast, guile-1.8
> applies abbreviation at a reasonable level, and objects appearing in
> stack traces have reasonable abbreviation on both versions.  Two very
> mild examples:
>
> $ guile-1.8 --debug -c "(read (let aaa ((n 100) (v '())) (if (= n 0) v (aaa (- n 1) (cons n v)))))"
> Backtrace:
> In current input:
>    1: 0* [read {(1 2 3 4 5 6 7 8 9 ...)}]
>
> <unnamed port>:1:1: In procedure read in expression (read (# 100 #)):
> <unnamed port>:1:1: Wrong type argument in position 1 (expecting open input port): (1 2 3 4 5 6 7 8 9 10 ...)
> $ guile-2.0 --debug -c "(read (let aaa ((n 100) (v '())) (if (= n 0) v (aaa (- n 1) (cons n v)))))"
> Backtrace:
> In ice-9/boot-9.scm:
>  157: 7 [catch #t #<catch-closure d68400> ...]
> In unknown file:
>    ?: 6 [apply-smob/1 #<catch-closure d68400>]
> In ice-9/boot-9.scm:
>   63: 5 [call-with-prompt prompt0 ...]
> In ice-9/eval.scm:
>  432: 4 [eval # #]
> In unknown file:
>    ?: 3 [call-with-input-string "(read (let aaa ((n 100) (v '())) (if (= n 0) v (aaa (- n 1) (cons n v)))))" ...]
> In ice-9/command-line.scm:
>  180: 2 [#<procedure c83ac0 at ice-9/command-line.scm:175:6 (port)> #<input: string b495b0>]
> In unknown file:
>    ?: 1 [eval (read (let aaa (# #) (if # v #))) #<directory (guile-user) d5cc60>]
>    ?: 0 [read (1 2 3 4 5 6 7 8 9 ...)]
>
> ERROR: In procedure read:
> ERROR: In procedure read: Wrong type argument in position 1 (expecting open input port): (1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100)
> $ guile-1.8 --debug -c "(read (let aaa ((n 100) (v '())) (if (= n 0) v (aaa (- n 1) (cons v n)))))"
> Backtrace:
> In current input:
>    1: 0* [read {(((# . 3) . 2) . 1)}]
>
> <unnamed port>:1:1: In procedure read in expression (read (# 100 #)):
> <unnamed port>:1:1: Wrong type argument in position 1 (expecting open input port): (((((((# . 7) . 6) . 5) . 4) . 3) . 2) . 1)
> $ guile-2.0 --debug -c "(read (let aaa ((n 100) (v '())) (if (= n 0) v (aaa (- n 1) (cons v n)))))"
> Backtrace:
> In ice-9/boot-9.scm:
>  157: 7 [catch #t #<catch-closure 1c71400> ...]
> In unknown file:
>    ?: 6 [apply-smob/1 #<catch-closure 1c71400>]
> In ice-9/boot-9.scm:
>   63: 5 [call-with-prompt prompt0 ...]
> In ice-9/eval.scm:
>  432: 4 [eval # #]
> In unknown file:
>    ?: 3 [call-with-input-string "(read (let aaa ((n 100) (v '())) (if (= n 0) v (aaa (- n 1) (cons v n)))))" ...]
> In ice-9/command-line.scm:
>  180: 2 [#<procedure 1c89da0 at ice-9/command-line.scm:175:6 (port)> #<input: string 1a505b0>]
> In unknown file:
>    ?: 1 [eval (read (let aaa (# #) (if # v #))) #<directory (guile-user) 1c65c60>]
>    ?: 0 [read (((# . 3) . 2) . 1)]
>
> ERROR: In procedure read:
> ERROR: In procedure read: Wrong type argument in position 1 (expecting open input port): ((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((() . 100) . 99) . 98) . 97) . 96) . 95) . 94) . 93) . 92) . 91) . 90) . 89) . 88) . 87) . 86) . 85) . 84) . 83) . 82) . 81) . 80) . 79) . 78) . 77) . 76) . 75) . 74) . 73) . 72) . 71) . 70) . 69) . 68) . 67) . 66) . 65) . 64) . 63) . 62) . 61) . 60) . 59) . 58) . 57) . 56) . 55) . 54) . 53) . 52) . 51) . 50) . 49) . 48) . 47) . 46) . 45) . 44) . 43) . 42) . 41) . 40) . 39) . 38) . 37) . 36) . 35) . 34) . 33) . 32) . 31) . 30) . 29) . 28) . 27) . 26) . 25) . 24) . 23) . 22) . 21) . 20) . 19) . 18) . 17) . 16) . 15) . 14) . 13) . 12) . 11) . 10) . 9) . 8) . 7) . 6) . 5) . 4) . 3) . 2) . 1)
>
> Debian incarnation of this bug report:
> http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=734128
>
> -zefram




Information forwarded to bug-guile@HIDDEN:
bug#16357; Package guile. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 5 Jan 2014 23:44:22 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jan 05 18:44:21 2014
Received: from localhost ([127.0.0.1]:37199 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.80)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1VzxMj-0004yj-7m
	for submit <at> debbugs.gnu.org; Sun, 05 Jan 2014 18:44:21 -0500
Received: from eggs.gnu.org ([208.118.235.92]:45100)
 by debbugs.gnu.org with esmtp (Exim 4.80)
 (envelope-from <zefram@HIDDEN>) id 1Vzwgj-0003lB-E0
 for submit <at> debbugs.gnu.org; Sun, 05 Jan 2014 18:00:57 -0500
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <zefram@HIDDEN>) id 1Vzwga-00013T-Q5
 for submit <at> debbugs.gnu.org; Sun, 05 Jan 2014 18:00:57 -0500
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50 autolearn=disabled
 version=3.3.2
Received: from lists.gnu.org ([2001:4830:134:3::11]:37170)
 by eggs.gnu.org with esmtp (Exim 4.71)
 (envelope-from <zefram@HIDDEN>) id 1Vzwga-00013O-Nb
 for submit <at> debbugs.gnu.org; Sun, 05 Jan 2014 18:00:48 -0500
Received: from eggs.gnu.org ([2001:4830:134:3::10]:46809)
 by lists.gnu.org with esmtp (Exim 4.71)
 (envelope-from <zefram@HIDDEN>) id 1VzwgU-0003zT-LI
 for bug-guile@HIDDEN; Sun, 05 Jan 2014 18:00:48 -0500
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <zefram@HIDDEN>) id 1VzwgO-00012l-Lk
 for bug-guile@HIDDEN; Sun, 05 Jan 2014 18:00:42 -0500
Received: from river.fysh.org ([5.135.154.127]:53115)
 by eggs.gnu.org with esmtp (Exim 4.71)
 (envelope-from <zefram@HIDDEN>) id 1VzwgO-00012g-FI
 for bug-guile@HIDDEN; Sun, 05 Jan 2014 18:00:36 -0500
Received: from zefram by river.fysh.org with local (Exim 4.80 #2 (Debian))
 id 1VzwgK-0000DP-8V; Sun, 05 Jan 2014 23:00:32 +0000
Date: Sun, 5 Jan 2014 23:00:32 +0000
From: Zefram <zefram@HIDDEN>
To: bug-guile@HIDDEN
Subject: insufficient print abbreviation in error messages
Message-ID: <20140105230032.GB30283@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x
X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address
 (bad octet value).
X-Received-From: 2001:4830:134:3::11
X-Spam-Score: -4.0 (----)
X-Debbugs-Envelope-To: submit
X-Mailman-Approved-At: Sun, 05 Jan 2014 18:44:19 -0500
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <http://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <http://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -4.0 (----)

When guile is constructing error messages that display offending objects,
in version 2.0.9 it never abbreviates long or deep structures.  This can
easily lead to pathologically-long messages that take stupid amounts of
time and memory to construct and to display.  By contrast, guile-1.8
applies abbreviation at a reasonable level, and objects appearing in
stack traces have reasonable abbreviation on both versions.  Two very
mild examples:

$ guile-1.8 --debug -c "(read (let aaa ((n 100) (v '())) (if (= n 0) v (aaa (- n 1) (cons n v)))))"
Backtrace:
In current input:
   1: 0* [read {(1 2 3 4 5 6 7 8 9 ...)}]

<unnamed port>:1:1: In procedure read in expression (read (# 100 #)):
<unnamed port>:1:1: Wrong type argument in position 1 (expecting open input port): (1 2 3 4 5 6 7 8 9 10 ...)
$ guile-2.0 --debug -c "(read (let aaa ((n 100) (v '())) (if (= n 0) v (aaa (- n 1) (cons n v)))))"
Backtrace:
In ice-9/boot-9.scm:
 157: 7 [catch #t #<catch-closure d68400> ...]
In unknown file:
   ?: 6 [apply-smob/1 #<catch-closure d68400>]
In ice-9/boot-9.scm:
  63: 5 [call-with-prompt prompt0 ...]
In ice-9/eval.scm:
 432: 4 [eval # #]
In unknown file:
   ?: 3 [call-with-input-string "(read (let aaa ((n 100) (v '())) (if (= n 0) v (aaa (- n 1) (cons n v)))))" ...]
In ice-9/command-line.scm:
 180: 2 [#<procedure c83ac0 at ice-9/command-line.scm:175:6 (port)> #<input: string b495b0>]
In unknown file:
   ?: 1 [eval (read (let aaa (# #) (if # v #))) #<directory (guile-user) d5cc60>]
   ?: 0 [read (1 2 3 4 5 6 7 8 9 ...)]

ERROR: In procedure read:
ERROR: In procedure read: Wrong type argument in position 1 (expecting open input port): (1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100)
$ guile-1.8 --debug -c "(read (let aaa ((n 100) (v '())) (if (= n 0) v (aaa (- n 1) (cons v n)))))"
Backtrace:
In current input:
   1: 0* [read {(((# . 3) . 2) . 1)}]

<unnamed port>:1:1: In procedure read in expression (read (# 100 #)):
<unnamed port>:1:1: Wrong type argument in position 1 (expecting open input port): (((((((# . 7) . 6) . 5) . 4) . 3) . 2) . 1)
$ guile-2.0 --debug -c "(read (let aaa ((n 100) (v '())) (if (= n 0) v (aaa (- n 1) (cons v n)))))"
Backtrace:
In ice-9/boot-9.scm:
 157: 7 [catch #t #<catch-closure 1c71400> ...]
In unknown file:
   ?: 6 [apply-smob/1 #<catch-closure 1c71400>]
In ice-9/boot-9.scm:
  63: 5 [call-with-prompt prompt0 ...]
In ice-9/eval.scm:
 432: 4 [eval # #]
In unknown file:
   ?: 3 [call-with-input-string "(read (let aaa ((n 100) (v '())) (if (= n 0) v (aaa (- n 1) (cons v n)))))" ...]
In ice-9/command-line.scm:
 180: 2 [#<procedure 1c89da0 at ice-9/command-line.scm:175:6 (port)> #<input: string 1a505b0>]
In unknown file:
   ?: 1 [eval (read (let aaa (# #) (if # v #))) #<directory (guile-user) 1c65c60>]
   ?: 0 [read (((# . 3) . 2) . 1)]

ERROR: In procedure read:
ERROR: In procedure read: Wrong type argument in position 1 (expecting open input port): ((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((() . 100) . 99) . 98) . 97) . 96) . 95) . 94) . 93) . 92) . 91) . 90) . 89) . 88) . 87) . 86) . 85) . 84) . 83) . 82) . 81) . 80) . 79) . 78) . 77) . 76) . 75) . 74) . 73) . 72) . 71) . 70) . 69) . 68) . 67) . 66) . 65) . 64) . 63) . 62) . 61) . 60) . 59) . 58) . 57) . 56) . 55) . 54) . 53) . 52) . 51) . 50) . 49) . 48) . 47) . 46) . 45) . 44) . 43) . 42) . 41) . 40) . 39) . 38) . 37) . 36) . 35) . 34) . 33) . 32) . 31) . 30) . 29) . 28) . 27) . 26) . 25) . 24) . 23) . 22) . 21) . 20) . 19) . 18) . 17) . 16) . 15) . 14) . 13) . 12) . 11) . 10) . 9) . 8) . 7) . 6) . 5) . 4) . 3) . 2) . 1)

Debian incarnation of this bug report:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=734128

-zefram




Acknowledgement sent to Zefram <zefram@HIDDEN>:
New bug report received and forwarded. Copy sent to bug-guile@HIDDEN. Full text available.
Report forwarded to bug-guile@HIDDEN:
bug#16357; Package guile. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Mon, 25 Nov 2019 12:00:02 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.