From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 86774 invoked by alias); 26 Apr 2017 21:33:50 -0000 Mailing-List: contact kawa-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: kawa-owner@sourceware.org Received: (qmail 86755 invoked by uid 89); 26 Apr 2017 21:33:50 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.5 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=ham version=3.3.2 spammy=kawa, H*Ad:U*per, becomes X-HELO: aibo.runbox.com Received: from aibo.runbox.com (HELO aibo.runbox.com) (91.220.196.211) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 26 Apr 2017 21:33:48 +0000 Received: from [10.9.9.210] (helo=mailfront10.runbox.com) by mailtransmit03.runbox with esmtp (Exim 4.86_2) (envelope-from ) id 1d3UZH-0002Xx-1S; Wed, 26 Apr 2017 23:33:47 +0200 Received: from 70-36-239-209.dsl.dynamic.fusionbroadband.com ([70.36.239.209] helo=localhost.localdomain) by mailfront10.runbox.com with esmtpsa (uid:757155 ) (TLS1.2:DHE_RSA_AES_128_CBC_SHA1:128) (Exim 4.82) id 1d3UYx-0000NU-4z; Wed, 26 Apr 2017 23:33:27 +0200 To: srfi-140@srfi.schemers.org, Kawa mailing list From: Per Bothner Subject: srfi-140 (immutable strings) - getting close to last call Message-ID: <209edb5c-4962-2a47-7341-1871794403a9@bothner.com> Date: Wed, 26 Apr 2017 21:33:00 -0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-IsSubscribed: yes X-SW-Source: 2017-q2/txt/msg00032.txt.bz2 The specification has been updated: https://srfi.schemers.org/srfi-140/srfi-140.html The most important changes: - A redone and greatly expanded Implementation section. - Link to a test suite. - Renamed string-replicate to xsubstring, to match SRFI-13. - Added unintentionally-skipped string-pad{,right} and string-trim{,-right,-both}. The Kawa implementation is complete (barring bugs and testing) and seems to be working well. So far very little Scheme code is broken by the switch to immutable strings, but more testing would be welcome. When testing, please replace (import (scheme base)) by (import (kawa base)) to make sure you get the istring-returning procedures. The implementation is in the 'invoke' branch of the Kawa repository: https://gitlab.com/kashell/Kawa/tree/invoke The plan is before finalization to have a final kawa 2.4 release, and then merge the invoke branch into master. (This will becomes kawa 3.0 in the near future.) The documentation for the 'invoke' branch is here: http://per.bothner.com/kawa/invoke/index.html The updated strings chapter is here: http://per.bothner.com/kawa/invoke/Strings.html To do before finalization: - Add some more tests, including testing for srfi-118 features, and more non-BMP-characters. - Merge the Kawa invoke branch into master. -- --Per Bothner per@bothner.com http://per.bothner.com/