From: Lars Ingebrigtsen <larsi@gnus.org>
To: Yuri Khan <yuri.v.khan@gmail.com>
Cc: Emacs developers <emacs-devel@gnu.org>, Dmitry Gutov <dgutov@yandex.ru>
Subject: Re: with-url
Date: Sun, 22 Jan 2017 15:46:22 +0100 [thread overview]
Message-ID: <87tw8rywxt.fsf@gnus.org> (raw)
In-Reply-To: <CAP_d_8Ug6bugUYDE-8JQCyEn+7WGmijsYZCnxXNZwniVqPpi3Q@mail.gmail.com> (Yuri Khan's message of "Sun, 22 Jan 2017 19:14:07 +0700")
Yuri Khan <yuri.v.khan@gmail.com> writes:
> A good HTTP client framework *should* signal errors and let the
> willing client catch them, rather than leave it to the client to
> explicitly check for every error condition. Myers’ Razor: Make
> interfaces easy to use correctly and hard to use incorrectly.
It depends on the language. If the only way you have to report back
different classes of responses is through the signalling system, then
that's what you're apt to do. (Also see: Java, the 90s.)
Anyway, it's all rather moot, since this is, of course, an asynchronous
library function, and you can't really send any Lisp-level signals in
that context. So `with-url' uses the mechanisms that virtually all
other async HTTP libraries uses: Gives the callback a status object to
interrogate.
But discussion on programming philosophies is fun, anyway. :-)
--
(domestic pets only, the antidote for overdose, milk.)
bloggy blog: http://lars.ingebrigtsen.no
next prev parent reply other threads:[~2017-01-22 14:46 UTC|newest]
Thread overview: 54+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-12-29 0:41 with-url Lars Ingebrigtsen
2016-12-29 1:06 ` with-url Stefan Monnier
2016-12-29 1:12 ` with-url Lars Ingebrigtsen
2016-12-29 16:05 ` with-url Eli Zaretskii
2016-12-29 16:35 ` with-url Lars Ingebrigtsen
2016-12-29 16:40 ` with-url Lars Ingebrigtsen
2016-12-29 16:58 ` with-url Eli Zaretskii
2016-12-29 18:52 ` with-url Lars Ingebrigtsen
2016-12-29 20:31 ` with-url Eli Zaretskii
2016-12-30 14:12 ` with-url Lars Ingebrigtsen
2016-12-30 15:23 ` with-url Lars Ingebrigtsen
2016-12-30 16:58 ` with-url Eli Zaretskii
2017-01-21 15:31 ` with-url Lars Ingebrigtsen
2017-01-21 15:33 ` with-url Lars Ingebrigtsen
2017-01-21 15:54 ` with-url Eli Zaretskii
2017-01-21 16:32 ` with-url Lars Ingebrigtsen
2017-01-21 16:40 ` with-url Eli Zaretskii
2017-01-22 15:55 ` with-url Lars Ingebrigtsen
2017-01-22 16:39 ` with-url Eli Zaretskii
2016-12-29 16:53 ` with-url Eli Zaretskii
2016-12-29 18:48 ` with-url Lars Ingebrigtsen
2017-01-01 1:07 ` with-url Dmitry Gutov
2017-01-03 17:47 ` with-url Stefan Monnier
2017-01-26 23:00 ` with-url Ted Zlatanov
2017-01-26 23:08 ` with-url Lars Ingebrigtsen
2017-01-27 13:49 ` with-url Ted Zlatanov
2017-01-21 15:44 ` with-url Lars Ingebrigtsen
2017-01-21 20:26 ` with-url Dmitry Gutov
2017-01-21 20:32 ` with-url Lars Ingebrigtsen
2017-01-21 20:36 ` with-url Dmitry Gutov
2017-01-21 20:49 ` with-url Lars Ingebrigtsen
2017-01-21 21:05 ` with-url Dmitry Gutov
2017-01-21 21:12 ` with-url Lars Ingebrigtsen
2017-01-21 21:16 ` with-url Dmitry Gutov
2017-01-21 21:23 ` with-url Lars Ingebrigtsen
2017-01-21 21:27 ` with-url Dmitry Gutov
2017-01-21 21:37 ` with-url Lars Ingebrigtsen
2017-01-21 21:54 ` with-url Dmitry Gutov
2017-01-21 22:07 ` with-url Lars Ingebrigtsen
2017-01-22 12:14 ` with-url Yuri Khan
2017-01-22 14:46 ` Lars Ingebrigtsen [this message]
2017-01-22 15:13 ` with-url Dmitry Gutov
2017-01-22 16:36 ` with-url Eli Zaretskii
2017-01-22 21:27 ` with-url Dmitry Gutov
2017-01-22 14:22 ` with-url Dmitry Gutov
2017-01-22 14:42 ` with-url Lars Ingebrigtsen
2017-01-21 20:34 ` with-url Lars Ingebrigtsen
2017-01-21 20:38 ` with-url Dmitry Gutov
2017-01-21 20:48 ` with-url Lars Ingebrigtsen
2017-01-21 22:25 ` with-url John Mastro
2017-01-22 16:04 ` with-url Lars Ingebrigtsen
2017-01-22 16:42 ` with-url Eli Zaretskii
2017-01-22 16:55 ` with-url Lars Ingebrigtsen
2017-01-22 23:56 ` not with-url Richard Stallman
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87tw8rywxt.fsf@gnus.org \
--to=larsi@gnus.org \
--cc=dgutov@yandex.ru \
--cc=emacs-devel@gnu.org \
--cc=yuri.v.khan@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).