From ... From: Erik Naggum Subject: Re: RFC: Lisp/Scheme with less parentheses through Python-like significant indentation? Date: 2000/08/10 Message-ID: <3174895060471363@naggum.net>#1/1 X-Deja-AN: 656733686 References: <3990E003.6EE78131@kurtz-fernhout.com> <3174842187091565@naggum.net> <87zommcdjy.fsf@piracy.red-bean.com> mail-copies-to: never Content-Type: text/plain; charset=us-ascii X-Complaints-To: newsmaster@eunet.no X-Trace: oslo-nntp.eunet.no 965911106 28704 195.0.192.66 (10 Aug 2000 12:38:26 GMT) Organization: Naggum Software; vox: +47 800 35477; gsm: +47 93 256 360; fax: +47 93 270 868; http://naggum.no; http://naggum.net User-Agent: Gnus/5.0803 (Gnus v5.8.3) Emacs/20.7 Mime-Version: 1.0 NNTP-Posting-Date: 10 Aug 2000 12:38:26 GMT Newsgroups: comp.lang.lisp * Erik Naggum | I think "down" and "up" are equally useful/likely "buttons". I use | Emacs with these operations all the time, in fact. Very seldom do I | type invididual parentheses. * Craig Brozefsky | How do you avoid that? M-( inserts () and leaves point between them. M-) leaves point after the closing paren. (A numeric argument, n, to M-( wraps the next n s-exprs in parens.) I have written similar functions for [] and {}, as well as "" and **. This means I don't generally have unmatched paired delimiters in my code. (This is a simplification of the SGML code I wrote years ago to start with <> and let each character (up to the first whitespace) in the start-tag also insert in the end-tag.) * Erik Naggum | Oh, right, you're thinking in Scheme, which _is_ a language that | breaks this important property of Lisp, and has a character-level | syntax, like Algol. * Craig Brozefsky | I understand this difference, but I'm unable to see the | repurcussions it has. Look at Dylan. It had a Lisp-like syntax at first, then lost it because of the syntactic changes in the "other" syntax. If you don't constantly think in terms of LL(1) grammars and readers that return objects, someone will begin to think in other terms and win popularity because people generally just accept visible concepts, but don't think about them if they aren't immediately visible. So even if the significant-whitespace proposal is OK now, _because_ of the explicit list structure, some next step will lose the list structure because someone will make another "innovation" that leaves that heritage behind. | In R5RS any Expression will also parse as Datum (what read | understands). In scheme, (if 1 2 3) and (if 1 2 . (3)) are identical as data, but as code, they are different. [I think this is completely idiotic.] #:Erik -- If this is not what you expected, please alter your expectations.