From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Mike Gran Newsgroups: gmane.lisp.guile.devel Subject: Wide string status Date: Wed, 10 Jun 2009 08:31:06 -0700 Message-ID: <1244647866.3936.4416.camel@localhost.localdomain> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1244647898 2322 80.91.229.12 (10 Jun 2009 15:31:38 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 10 Jun 2009 15:31:38 +0000 (UTC) To: Guile Devel Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Wed Jun 10 17:31:34 2009 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 1MEPlx-0008EU-6h for guile-devel@m.gmane.org; Wed, 10 Jun 2009 17:31:34 +0200 Original-Received: from localhost ([127.0.0.1]:35336 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MEPlt-0007OW-S7 for guile-devel@m.gmane.org; Wed, 10 Jun 2009 11:31:25 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1MEPlr-0007OH-J6 for guile-devel@gnu.org; Wed, 10 Jun 2009 11:31:23 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1MEPlq-0007Nq-TH for guile-devel@gnu.org; Wed, 10 Jun 2009 11:31:23 -0400 Original-Received: from [199.232.76.173] (port=59378 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MEPlq-0007Nl-LZ for guile-devel@gnu.org; Wed, 10 Jun 2009 11:31:22 -0400 Original-Received: from smtp106.prem.mail.sp1.yahoo.com ([98.136.44.61]:21618) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1MEPlp-0006rL-It for guile-devel@gnu.org; Wed, 10 Jun 2009 11:31:22 -0400 Original-Received: (qmail 24431 invoked from network); 10 Jun 2009 15:31:12 -0000 DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.com; h=Received:X-Yahoo-SMTP:X-YMail-OSG:X-Yahoo-Newman-Property:Subject:From:To:Content-Type:Date:Message-Id:Mime-Version:X-Mailer:Content-Transfer-Encoding; b=wzvdLbXm0whxoBBL8FgP83VqLG+Tz1vO+fCGT5DLWwzIkSuiPUw/g2ofFQqXGT0iHDxo4RyqJ/Hq+/MPF1/yhm6dXLjKXWe45bXn63//fMALwOqqfSt+eAJ32AOQ0qT1XQxPLGhJVUHCJ9nBvTD6Ice+9lGXVZdvYOT1rLSZ5Mg= ; Original-Received: from adsl-71-130-222-158.dsl.irvnca.pacbell.net (spk121@71.130.222.158 with plain) by smtp106.prem.mail.sp1.yahoo.com with SMTP; 10 Jun 2009 08:31:11 -0700 PDT X-Yahoo-SMTP: FzNaA9iswBDuBl1BmgaIRDaP9Q-- X-YMail-OSG: STf9dgcVM1kOE3NYZAzjSG6kCKrkXPaNloANemBUuwgZBvtBFH.z5Z.Mw5b5l2X4aQRTIaRJjBXkG_o68P2lM0InvdwAYFtB72Jkg8bFbkzaElEG0_SR1zlW2SN86Cdbi_jRHA6OG5W0qsu2vroVUoO.I1aq86sHk8TUWS9dCN9V8LbqnK4qucW5OaiAqgOPyaV0FhYUL8.g4k4T0HgGRNhN0BieL_928lcmjcIn_wQtRgF2HOjRTJD.SF0ci0kviTfpUGmosdsomhIxQ2RjlmAp7TYwg3qM2jV7alZaPH2Ze47jRHc6y4t6Kq.WwdcVZi7IOQ-- X-Yahoo-Newman-Property: ymail-3 X-Mailer: Evolution 2.24.5 (2.24.5-1.fc10) X-detected-operating-system: by monty-python.gnu.org: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) 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:8663 Archived-At: Hi- It seems that the current push of the string_abstraction2 branch works fairly well with respect to non-REPL code. For examples of its basic capabilities, see the encoding tests in the test suite, such as test-suite/tests/encoding-utf8.test. So, ports have two new properties: a character encoding, and a strategy for dealing with characters unrepresentable in that encoding. set-port-encoding! and set-port-conversion-strategy! are the big procedures there. I merged master into it to bring the branch up to date. A source code file that contains non-ASCII chars needs to contain a declaration like "coding: UTF-8" within a scheme comment in the first couple of lines to be interpreted correctly. UTF-16, EBCDIC and other encodings that don't allow raw ASCII to be encoded unmodified are not supported in the reader for source code. (They sort of work for port i/o but need more testing.) Next, I suppose, is to get the compiler and REPL up and working. That requires chars be at least 21-bits wide in, for example, language/assembly/compile-bytecode.scm. I'm a bit intimidated by that code, but, we'll see. Beyond that, character sets need to be more than 256 chars, and readline needs to be checked. That would do for a release, I think. Longer term, R6RS ports need transcoders and then can be used to replace legacy Guile ports as they become more feature complete. I'm likely going to miss this point release, since I'm off on vacation in a couple of days and shall not be thinking about code for a week or two. Late, Mike