From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: ludo@gnu.org (Ludovic =?iso-8859-1?Q?Court=E8s?=) Newsgroups: gmane.lisp.guile.devel Subject: Re: Internal visibility Date: Tue, 10 Jun 2008 09:37:39 +0200 Message-ID: <87iqwhn3jw.fsf@gnu.org> References: <87k5i5d6ei.fsf@ossau.uklinux.net> <87lk2jhp0h.fsf@gnu.org> <87skwrce8y.fsf@ossau.uklinux.net> <87iqxledzz.fsf@gnu.org> <87lk2futg0.fsf@ossau.uklinux.net> <87fxslr1jr.fsf_-_@gnu.org> <878wxv5t7q.fsf@gnu.org> <87mym6dv6t.fsf@gnu.org> <49dd78620806091110v7a667787mef392fbf4446139d@mail.gmail.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1213083528 19227 80.91.229.12 (10 Jun 2008 07:38:48 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 10 Jun 2008 07:38:48 +0000 (UTC) To: guile-devel@gnu.org Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Tue Jun 10 09:39:31 2008 Return-path: Envelope-to: guile-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1K5yRx-0002oe-H4 for guile-devel@m.gmane.org; Tue, 10 Jun 2008 09:39:25 +0200 Original-Received: from localhost ([127.0.0.1]:34217 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1K5yRA-0007Xq-6I for guile-devel@m.gmane.org; Tue, 10 Jun 2008 03:38:36 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1K5yQX-0007Ck-5o for guile-devel@gnu.org; Tue, 10 Jun 2008 03:37:57 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1K5yQT-0007Aj-Gt for guile-devel@gnu.org; Tue, 10 Jun 2008 03:37:56 -0400 Original-Received: from [199.232.76.173] (port=43375 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1K5yQT-0007Ag-7y for guile-devel@gnu.org; Tue, 10 Jun 2008 03:37:53 -0400 Original-Received: from main.gmane.org ([80.91.229.2]:55709 helo=ciao.gmane.org) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1K5yQT-0001T4-1y for guile-devel@gnu.org; Tue, 10 Jun 2008 03:37:53 -0400 Original-Received: from list by ciao.gmane.org with local (Exim 4.43) id 1K5yQO-0000cJ-H3 for guile-devel@gnu.org; Tue, 10 Jun 2008 07:37:48 +0000 Original-Received: from 193.50.110.120 ([193.50.110.120]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 10 Jun 2008 07:37:48 +0000 Original-Received: from ludo by 193.50.110.120 with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 10 Jun 2008 07:37:48 +0000 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 25 Original-X-Complaints-To: usenet@ger.gmane.org X-Gmane-NNTP-Posting-Host: 193.50.110.120 X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 23 Prairial an 216 de la =?iso-8859-1?Q?R=E9volution?= X-PGP-Key-ID: 0xEA52ECF4 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 821D 815D 902A 7EAB 5CEE D120 7FBA 3D4F EB1F 5364 X-OS: i686-pc-linux-gnu User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.1 (gnu/linux) Cancel-Lock: sha1:8mNwARcRFnq2wFFwbyFZS2jlPvE= X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Developers list for Guile, the GNU extensibility library" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Errors-To: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.devel:7312 Archived-At: Hello, "Han-Wen Nienhuys" writes: > On Mon, Jun 9, 2008 at 3:10 PM, Neil Jerram wrote: >> Guile's string API is aiming not to be 8-bit-assuming, and I would >> guess from the code above that the C++ string class is 8-bit-assuming. > > Sorry, I guess I don't understand. What _is_the assumption for > representing strings in GUILE? Strings in Guile will eventually be sequences of Unicode code points (as opposed to "bytes"), which can be represented in a variety of different ways (UTF-8, UCS-4, etc.). How Guile represents strings and whether this representation "changes dynamically" (as you suggested) should not be exposed to the applications in order to leave as much freedom as possible to Guile's implementation strategy. Instead, applications should be written against an encoding-oblivious API. This is what core R5RS constructs and SRFI-1[34] provide at the Scheme level. Thanks, Ludovic.