Hi,
At Wed, 23 May 2012 12:54:18 -0400 (EDT),
David A Wheeler wrote:
>
> Alpheus Madsen <[email protected]>
> > One thought I've been wanting to experiment with, but haven't had the time
> > to attempt to implement, is to use a double-indent to indicate groups.
>
> I think that's even worse. It's very unreadable. It's also ambiguous for
> the first indent; does "two spaces" mean an indent of two spaces, or a
> double-indent for one-space indenting?
Using double indent had also been my first idea, but I discarded it, because
the meaning of the double indent would not be obvious without the less-indented
line which comes later - it would be ambigous.
example:
(let
((a b)(c d))
(e))
becomes
let
a b
c d
e
Imagine 5 let arguments and you cannot know anymore if it’s double-indented.
Compare
let
.
a b
c d
e
The reason why I chose the . is to avoid adding any new syntax elements. . is
already used to create cons-cels, but it has little use on its own:
(if (equal (. (quote "abc")) (quote "abc")) t)
; this syntax would be invalid with the .-notation.
if
equal
.
quote "abc"
quote "abc"
t
Also I like about the . that it is so small: It is almost like double indent,
but explicit. And it scales:
(a (((((b c))))))
→
a
.
.
.
.
b c
here it is explicit what happens, even though the code is evil.
Best wishes,
Arne
PS: Only answering now, because I we just moved, so I was overloaded for quite
some time.
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Readable-discuss mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/readable-discuss