From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: Asynchronous DNS Date: Mon, 08 Feb 2016 20:11:02 +0200 Message-ID: <83zivboyx5.fsf@gnu.org> References: <87si1gx6wz.fsf@gnus.org> <86y4b5zvzt.fsf@gmail.com> <8760y9kwrk.fsf@gnus.org> <8760y7nag7.fsf@gnus.org> <83oabzzsjq.fsf@gnu.org> <87fuxazkfe.fsf@gnus.org> <83io25yeqk.fsf@gnu.org> <87h9hpnreg.fsf@gnus.org> <83y4b0wi7m.fsf@gnu.org> <87si17evk6.fsf@gnus.org> <83twlnvcz2.fsf@gnu.org> <87vb63obm3.fsf@gnus.org> <87r3gqmg6g.fsf@gnus.org> <83egcqtfnm.fsf@gnu.org> <86mvrdmk8p.fsf@realize.ch> <877fihjo4m.fsf@gnus.org> <86io20n3xn.fsf@realize.ch> <8760y055l1.fsf@gnus.org> <8660xzmyyr.fsf@realize.ch> <87pow7ocyw.fsf@gnus.org> Reply-To: Eli Zaretskii NNTP-Posting-Host: plane.gmane.org X-Trace: ger.gmane.org 1454955094 6726 80.91.229.3 (8 Feb 2016 18:11:34 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 8 Feb 2016 18:11:34 +0000 (UTC) Cc: a.s@realize.ch, emacs-devel@gnu.org To: Lars Ingebrigtsen Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Feb 08 19:11:33 2016 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 1aSqHa-0007V1-DJ for ged-emacs-devel@m.gmane.org; Mon, 08 Feb 2016 19:11:30 +0100 Original-Received: from localhost ([::1]:47474 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aSqHZ-00068D-Ni for ged-emacs-devel@m.gmane.org; Mon, 08 Feb 2016 13:11:29 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:34111) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aSqHU-00067Z-Qe for emacs-devel@gnu.org; Mon, 08 Feb 2016 13:11:25 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aSqHP-0007xj-Qt for emacs-devel@gnu.org; Mon, 08 Feb 2016 13:11:24 -0500 Original-Received: from fencepost.gnu.org ([2001:4830:134:3::e]:34571) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aSqHP-0007xf-NX; Mon, 08 Feb 2016 13:11:19 -0500 Original-Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:1544 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1aSqHO-00051c-Ut; Mon, 08 Feb 2016 13:11:19 -0500 In-reply-to: <87pow7ocyw.fsf@gnus.org> (message from Lars Ingebrigtsen on Mon, 08 Feb 2016 18:52:55 +1100) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] 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:199542 Archived-At: > From: Lars Ingebrigtsen > Cc: Eli Zaretskii , > Date: Mon, 08 Feb 2016 18:52:55 +1100 > > > Well, back to square /two/ I would say, depending on how you arrange the > > squares ;) Because application code would just loose the > > async-DNS-resolve benefits. As most of the functions such as > > `set-process-coding-system', that would need to block, require only an > > initialized socked (and not really a connected one). And if the author > > of the code doesn't care, he just accepted that he wrote semi-optimized > > async code -- but code that actually works. This doesn't sound wrong to > > me. > > Yeah, that's true. It's less fragile. But I wonder whether being that > application friendly can sometimes be a disservice? If you're an > application writer, trying to be as async as possible (that is, after > all, why you're using :nowait 'immediate), would you prefer that random > functions block without telling you, or that they error out? I don't think we should punish users of those packages and their developers by breaking their code. If they didn't get their act together, their code will not enjoy the advantages of asynchronicity, but it should still work, IMO. Teaching by punishment rarely works, IME, certainly not in a community such as this one.