From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Tom Lord Newsgroups: gmane.lisp.guile.user Subject: Re: null terminated strings Date: Fri, 16 Jan 2004 13:06:09 -0800 (PST) Sender: guile-user-bounces+guile-user=m.gmane.org@gnu.org Message-ID: <200401162106.NAA06037@morrowfield.regexps.com> References: <87oet4ntsm.fsf_-_@ID-28718.user.uni-berlin.de> <1074245327.6733.9.camel@localhost> <87u12wjiy7.fsf@ID-28718.user.uni-berlin.de> <1074250929.6734.63.camel@localhost> <87eku0f5em.fsf@ID-28718.user.uni-berlin.de> NNTP-Posting-Host: deer.gmane.org X-Trace: sea.gmane.org 1074286681 22568 80.91.224.253 (16 Jan 2004 20:58:01 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Fri, 16 Jan 2004 20:58:01 +0000 (UTC) Cc: guile-user@gnu.org Original-X-From: guile-user-bounces+guile-user=m.gmane.org@gnu.org Fri Jan 16 21:57:57 2004 Return-path: Original-Received: from monty-python.gnu.org ([199.232.76.173]) by deer.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 1Ahb2T-0001Mh-00 for ; Fri, 16 Jan 2004 21:57:57 +0100 Original-Received: from localhost ([127.0.0.1] helo=monty-python.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.24) id 1Ahb1s-0006wp-4j for guile-user@m.gmane.org; Fri, 16 Jan 2004 15:57:20 -0500 Original-Received: from list by monty-python.gnu.org with tmda-scanned (Exim 4.24) id 1Ahb12-0006tz-Bf for guile-user@gnu.org; Fri, 16 Jan 2004 15:56:28 -0500 Original-Received: from mail by monty-python.gnu.org with spam-scanned (Exim 4.24) id 1Ahb0V-0006hc-CO for guile-user@gnu.org; Fri, 16 Jan 2004 15:56:26 -0500 Original-Received: from [65.234.195.89] (helo=morrowfield.regexps.com) by monty-python.gnu.org with esmtp (Exim 4.24) id 1Ahayr-000603-7a for guile-user@gnu.org; Fri, 16 Jan 2004 15:54:13 -0500 Original-Received: (from lord@localhost) by morrowfield.regexps.com (8.9.1/8.9.1) id NAA06037; Fri, 16 Jan 2004 13:06:09 -0800 (PST) (envelope-from lord@morrowfield.regexps.com) Original-To: prj@po.cwru.edu In-reply-to: (prj@po.cwru.edu) X-BeenThere: guile-user@gnu.org X-Mailman-Version: 2.1.2 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 Xref: main.gmane.org gmane.lisp.guile.user:2624 X-Report-Spam: http://spam.gmane.org/gmane.lisp.guile.user:2624 > From: prj@po.cwru.edu (Paul Jarc) > FWIW, I think that (preferably copy-on-write) shared substrings are > valuable enough for performance mutation-effects-both shared substrings are valuable as a feature of (extended) Scheme. A common idiom in string-manipulating programs is to manipulate and pass around triples (STRING START END). It's well worthwhile to make such triples a first-class type -- the alternative is to have to write lots of string manipulation functions in a style where they take three actual parameters (ideally with two of those being optional) to represent a single conceptual parameter. And if you have that abstract data type, since it is compatible with the RnRS requirements for the STRING? type, it may as well be a subset of the STRING? type. copy-on-write shared substrings are a performance feature -- mutation-effects-both shared substrings are an improvement to Scheme. -t _______________________________________________ Guile-user mailing list Guile-user@gnu.org http://mail.gnu.org/mailman/listinfo/guile-user