From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: David Kastrup Newsgroups: gmane.emacs.devel Subject: Re: Emacs Lisp's future Date: Thu, 09 Oct 2014 06:14:51 +0200 Message-ID: <87bnpl7ubo.fsf@fencepost.gnu.org> References: <54193A70.9020901@member.fsf.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> <87ppe3lbkr.fsf@yeeloong.lan> <87oatn8dqz.fsf@fencepost.gnu.org> <87eguili20.fsf@yeeloong.lan> <87siiy7e0p.fsf@fencepost.gnu.org> <8761ftrki2.fsf@uwakimon.sk.tsukuba.ac.jp> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1412831797 22875 80.91.229.3 (9 Oct 2014 05:16:37 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 9 Oct 2014 05:16:37 +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: "Stephen J. Turnbull" Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Oct 09 07:16:30 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 1Xc65V-0007dE-MS for ged-emacs-devel@m.gmane.org; Thu, 09 Oct 2014 07:16:29 +0200 Original-Received: from localhost ([::1]:40410 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Xc65V-0003cF-6b for ged-emacs-devel@m.gmane.org; Thu, 09 Oct 2014 01:16:29 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:59102) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Xc65K-0003c9-43 for emacs-devel@gnu.org; Thu, 09 Oct 2014 01:16:18 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Xc65J-00041E-0Q for emacs-devel@gnu.org; Thu, 09 Oct 2014 01:16:18 -0400 Original-Received: from fencepost.gnu.org ([2001:4830:134:3::e]:59339) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Xc65I-00041A-Tv for emacs-devel@gnu.org; Thu, 09 Oct 2014 01:16:16 -0400 Original-Received: from localhost ([127.0.0.1]:38278 helo=lola) by fencepost.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Xc65B-00051I-03; Thu, 09 Oct 2014 01:16:09 -0400 Original-Received: by lola (Postfix, from userid 1000) id 8B4B6E0611; Thu, 9 Oct 2014 06:14:51 +0200 (CEST) In-Reply-To: <8761ftrki2.fsf@uwakimon.sk.tsukuba.ac.jp> (Stephen J. Turnbull's message of "Thu, 09 Oct 2014 12:26:45 +0900") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.4.50 (gnu/linux) X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:4830:134:3::e 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:175162 Archived-At: "Stephen J. Turnbull" writes: > We advocate a default that is safer for the user, GUILE is not a user application but a programming language. > who may lose their life savings if a filter for 419 phish fails Can we have terrorism with that scaremongering? > because a character is encoded with "long" UTF-8, and fails to match > the regexp which expects the character and not rawbytes. I am glad that Emacs and sed and other utilities don't trash PostScript files by default in order to save me from phishing. > I don't know that there are any Emacs MUA users who have ever fallen > for a phishing message, but I assure you that I personally have > observed "long" UTF-8 in messages that are otherwise duplicates of > correctly encoded spams. Those bastards don't miss a trick. So? Does that mean that string operations should throw an error when encountering $$$$$$$$$$$$$ in a string? To save the user from scams? If you keep confusing the responsibilities of platform, application and user, you arrive at a system you have to work around with constantly because it knows better than you what you want. A network application that throws exceptions internally when fed non-UTF-8 byte combinations is an attack vector for denial-of-service attacks. And since the naive programmer does not expect exceptions for just reading strings, this is a very real danger. And since GUILE is an extension language, implicit conversions for C/GUILE call gates are hard to avoid, and when every call gate is locked towards passing strings representing arbitrary data, you will not be able to use libraries without having access to the semantics of every call gate. At any rate, there is no point to this discussion. It tends to solve itself in practice by developers at some point of time becoming tired of ever the same application programmer level problems getting reported, and application programmers becoming tired of ever the same developer attitude regarding internals that refuse to "simply work". At least I am still allowed to call cons without triggering an error when the second argument is not a list. -- David Kastrup