From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Yuri Khan Newsgroups: gmane.emacs.devel Subject: Re: HTML-Info design Date: Mon, 29 Dec 2014 21:36:02 +0700 Message-ID: References: <83ppbanqhe.fsf@gnu.org> <87vbl2xigp.fsf@ferrier.me.uk> <83ioh2nlow.fsf@gnu.org> <87sig6xech.fsf@ferrier.me.uk> <83fvc5ni0u.fsf@gnu.org> <87k31fwwyv.fsf@ferrier.me.uk> <87bnmq9ibf.fsf@ferrier.me.uk> <87lhlrx5fc.fsf@building.gnus.org> <877fxb9821.fsf@ferrier.me.uk> <878uhrg6uu.fsf@building.gnus.org> <871tnj90lt.fsf@ferrier.me.uk> <87mw67elgf.fsf@building.gnus.org> <86bnmn1rwk.fsf@dod.no> <87tx0fczoj.fsf@building.gnus.org> <87ppb28z1q.fsf@building.gnus.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Trace: ger.gmane.org 1419863811 22589 80.91.229.3 (29 Dec 2014 14:36:51 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 29 Dec 2014 14:36:51 +0000 (UTC) Cc: Emacs developers To: Lars Ingebrigtsen Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Dec 29 15:36:44 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 1Y5bR6-0005gR-Hi for ged-emacs-devel@m.gmane.org; Mon, 29 Dec 2014 15:36:44 +0100 Original-Received: from localhost ([::1]:33607 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Y5bR6-0001y4-2o for ged-emacs-devel@m.gmane.org; Mon, 29 Dec 2014 09:36:44 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:33993) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Y5bQW-0001Jj-PU for emacs-devel@gnu.org; Mon, 29 Dec 2014 09:36:13 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Y5bQR-00083U-NQ for emacs-devel@gnu.org; Mon, 29 Dec 2014 09:36:08 -0500 Original-Received: from mail-ig0-x229.google.com ([2607:f8b0:4001:c05::229]:58853) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Y5bQR-00083O-J0 for emacs-devel@gnu.org; Mon, 29 Dec 2014 09:36:03 -0500 Original-Received: by mail-ig0-f169.google.com with SMTP id z20so552393igj.2 for ; Mon, 29 Dec 2014 06:36:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type:content-transfer-encoding; bh=7ridqKzkGM1TeYlWiDX/wb7di4etGRGnVjMUfUlCvqc=; b=d6dOhfHyaJX7uKUXins4kkve4rAk7WnUWctIsyl2ms/w6W0MKb3MYhbC7+uA3QjQE9 +zq85kmzijP+tQNjGxP0HqyNzoFsY0lLxOJvuKHyVcBMjhtGy7D6ArBjRxj5yjfLkU/p tBLVEgyyx2m4eDRASLQNzoz9WYHr7tyCa6IUbPeZ+ZEXCLTdBUq5hc8Mzvh3iOmseJV5 D96x5z9vspgXi7Ei3NTYaT0+LD4h52w3R9ZaOnSs/60Z6gees0rboB7KHYT1oP7MShAN gSZi2oaAPebROFuBerdxq4KLZAnWbavaHJ8jEEUAKqAZV09KwbVcUSN7HOZbOyucuM/H iQbw== X-Received: by 10.50.35.195 with SMTP id k3mr46064727igj.11.1419863762979; Mon, 29 Dec 2014 06:36:02 -0800 (PST) Original-Received: by 10.107.48.82 with HTTP; Mon, 29 Dec 2014 06:36:02 -0800 (PST) In-Reply-To: <87ppb28z1q.fsf@building.gnus.org> X-Google-Sender-Auth: rGHXE4edJ2iaA5uhw9y-jJdmoPA X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2607:f8b0:4001:c05::229 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:180833 Archived-At: On Mon, Dec 29, 2014 at 5:40 PM, Lars Ingebrigtsen wrote: >> With implicit tags, browsers can and will infer tag nesting on their >> own, and have an intricate system of rules to do so. > > Yeah, that's why all Python code looks like > > for x in range(10): # THE LINE ENDED THERE > squares.append(x**2) # THE FOR ENDS HERE I PROMISE!!! Interesting that you take for an example Python, a language with very clear rules on where indented blocks end. Rather, let=E2=80=99s take C. In C, indentation is insignificant. For that matter, all whitespace is insignificant (except in string literals). But we don=E2=80=99t write our programs all in one line, and we indent consistently, and we choose either spaces or tabs but not both, even though the compiler doesn=E2=80=99= t give a damn either way. Also in C, braces are optional if there is only a single statement inside. But most coding style guides at least STRONGLY RECOMMEND spelling out all braces explicitly, and often REQUIRE that. Parentheses are often redundant thanks to the operator precedence rules, but the GNU Coding Standard RECOMMENDs spelling out parentheses where doing so helps readability. Optional tags in HTML are closest to optional parentheses, except that the precedence of HTML elements is much more intricate than the precedence of C operators, and so explicit closing tags help readability almost always, except for the simplest of cases.