From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "Stephen J. Turnbull" Newsgroups: gmane.emacs.devel Subject: Re: Emacs Lisp's future Date: Wed, 08 Oct 2014 04:21:43 +0900 Message-ID: <871tqjsn20.fsf@uwakimon.sk.tsukuba.ac.jp> References: <54193A70.9020901@member.fsf.org> <87lhp5m99w.fsf@fencepost.gnu.org> <87h9ztm5oa.fsf@fencepost.gnu.org> <87d2ahm3nw.fsf@fencepost.gnu.org> <871tqneyvl.fsf@netris.org> <87d2a54t1m.fsf@yeeloong.lan> <83lhotme1e.fsf@gnu.org> <871tql17uw.fsf@yeeloong.lan> <838uktm9gw.fsf@gnu.org> <87h9zgarvp.fsf@fencepost.gnu.org> <87mw97rjwm.fsf@yeeloong.lan> <8761fvn8io.fsf@yeeloong.lan> <87egujahw6.fsf@fencepost.gnu.org> <87wq8bd8w2.fsf@netris.org> <87y4sr909s.fsf@fencepost.gnu.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 X-Trace: ger.gmane.org 1412709755 691 80.91.229.3 (7 Oct 2014 19:22:35 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 7 Oct 2014 19:22:35 +0000 (UTC) Cc: Richard Stallman , Mark H Weaver , dmantipov@yandex.ru, emacs-devel@gnu.org, handa@gnu.org, monnier@iro.umontreal.ca, Andreas Schwab , Eli Zaretskii To: David Kastrup Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Oct 07 21:22:28 2014 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1XbaL4-0004Jp-VZ for ged-emacs-devel@m.gmane.org; Tue, 07 Oct 2014 21:22:27 +0200 Original-Received: from localhost ([::1]:60590 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XbaL4-0005dm-7S for ged-emacs-devel@m.gmane.org; Tue, 07 Oct 2014 15:22:26 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:58403) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XbaKt-0005db-Nl for emacs-devel@gnu.org; Tue, 07 Oct 2014 15:22:23 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XbaKm-0007Jm-0o for emacs-devel@gnu.org; Tue, 07 Oct 2014 15:22:15 -0400 Original-Received: from shako.sk.tsukuba.ac.jp ([130.158.97.161]:42210) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XbaKR-00070p-1h; Tue, 07 Oct 2014 15:21:47 -0400 Original-Received: from uwakimon.sk.tsukuba.ac.jp (uwakimon.sk.tsukuba.ac.jp [130.158.99.156]) by shako.sk.tsukuba.ac.jp (Postfix) with ESMTP id 2D6B61C38FB; Wed, 8 Oct 2014 04:21:44 +0900 (JST) Original-Received: by uwakimon.sk.tsukuba.ac.jp (Postfix, from userid 1000) id 159601A2888; Wed, 8 Oct 2014 04:21:44 +0900 (JST) In-Reply-To: <87y4sr909s.fsf@fencepost.gnu.org> X-Mailer: VM undefined under 21.5 (beta34) "kale" acf1c26e3019 XEmacs Lucid (x86_64-unknown-linux) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 130.158.97.161 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:175096 Archived-At: David Kastrup writes: > With the "we don't want to cater for raw bytes by default" attitude > you'll never get away in a reasonably reliable manner from the "our code > will not deal with raw bytes" situation you have now with regard to > string manipulation. If Emacs and Emacs Lisp developers never can make it work, I think that says more about Emacs than about the concept of standards-based program design. I'm sure the Guile community will succeed as Python did. It took Python about 3 months to implement PEP 383, another 6 to actually publicly release a Python using it, and no, Python has never defaulted to anything but strict error handling ("crash and traceback on invalid input") since. Nobody complains, because in practice strict is almost good enough for interactive programs (ask the user to clean up the input and resubmit), and the few who do need rawbytes are perfectly happy writing stream = open(filename, 'r', encoding='utf-8', errors='surrogateescape') when it's needed.