Re: [Readable-discuss] wart

2012-07-18 Thread Kartik Agaram
ii) An indentation-sensitive lisp like wart requires mentally inserting parens to make sure we aren't accidentally wrapping something we didn't mean to. People indent even when it's *not* significant, so this turns out to be a non-problem. The indentation ends up working with, not

Re: [Readable-discuss] wart

2012-07-15 Thread Kartik Agaram
I split up the sweet-expression description so that there are 2 main rules, followed by a list of refinements. Appended below is my stab at the sweet expressions section. I've separated out the tutorial from the spec. I would like for tutorial forms of the problem and solution to go right on

Re: [Readable-discuss] wart

2012-07-15 Thread David A. Wheeler
Kartik Agaram: Appended below is my stab at the sweet expressions section. Thanks! I've separated out the tutorial from the spec. I would like for tutorial forms of the problem and solution to go right on the top-level page at http://readable.sourceforge.net. The reader should be able to

Re: [Readable-discuss] wart

2012-07-14 Thread David A. Wheeler
Kartik Agaram: The idea of suppressing paren-insertion inside explicit parens is a good one. I had considered it, but I hadn't noticed that it allows me to get rid of the single-space rule. I'm going to try that! Ok, this change is now in: http://github.com/akkartik/wart/commit/3320d257ac

Re: [Readable-discuss] wart

2012-07-14 Thread David A. Wheeler
Kartik Agaram: Ok, I'm done going through it and I went through the tutorial as well. curly-infix.cl works great with sbcl. Great, I've noted that in the tutorial. I had to change the shebang in sweet-guile and modern-guile to /usr/bin/env rather than /bin/env. Aside from that

Re: [Readable-discuss] wart

2012-07-14 Thread Kartik Agaram
Should we change all /bin/env to /usr/bin/env? What platform are you using? This was on a laptop running linux (http://www.linuxmint.com/download_lmde.php) I've only ever seen /usr/bin/env. The wikipedia article makes no reference to /bin/env except to say OpenServer and Unicos use it. What

Re: [Readable-discuss] wart

2012-07-14 Thread Kartik Agaram
Why not just myfunction(:option1 f(a), :option2 g(b), :option3 h(c))? Or is there an issue with commas? Yes, comma means unquote. In addition, comma-whitespace is used in indentation processing to mean that the inner expression of the unquote is also processed using indentation processing.

Re: [Readable-discuss] wart

2012-07-14 Thread David A. Wheeler
Kartik Agaram a...@akkartik.com ... myfunction(:option1 f(a), :option2 g(b), :option3 h(c)) I'd also be ok with writing: myfunction(:option1 (f a) :option2 (g b) :option3 (h c)) Okay, that's already a perfectly acceptable modern-expression. Have y'all been trying to avoid mixing

Re: [Readable-discuss] wart

2012-07-14 Thread Kartik Agaram
Ok, you've persuaded me not to mess with commas :) -- 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.

Re: [Readable-discuss] wart

2012-07-14 Thread David A. Wheeler
Kartik Agaram: A variant of this is now in wart: http://github.com/akkartik/wart/commit/c2e6d0c6d3. What do y'all think? (This is 1914 - experiment: ':' as a comment token). Interesting! By the way, this is exactly how we've been working - we've floated ideas on the mailing list, and if

Re: [Readable-discuss] wart

2012-07-14 Thread David A. Wheeler
Kartik Agaram: That seems *really* complicated. I didn't see reference to this 'escape hatch' in all my readings. Is this somehow deduced from the three rules, or from the new proposals for v0.3? https://sourceforge.net/p/readable/wiki/Solution/ A leading quote, comma, backquote, or comma-at,

Re: [Readable-discuss] wart

2012-07-14 Thread Alan Manuel Gloria
On Sun, Jul 15, 2012 at 1:50 AM, Kartik Agaram a...@akkartik.com wrote: I suspect that this is just strictly a problem with 2.0. Yep, I uninstalled 2.0 (just the first one I picked last night) and installed 1.8, and went through the rest of the tutorial with sweet-guile. Everything works

Re: [Readable-discuss] wart

2012-07-14 Thread Kartik Agaram
We could have leading-SPLIT always be a comment marker, even when indentation is disabled. But I think there's no need; once indentation processing is disabled, you can indent however you please, and there's no need for a special symbol. My ':' wasn't intended to help reduce parens. It

Re: [Readable-discuss] wart

2012-07-14 Thread Alan Manuel Gloria
On Sun, Jul 15, 2012 at 7:31 AM, Kartik Agaram a...@akkartik.com wrote: I use guile-2.0 for sweet-expressions development, and it works fine - probably just need to forcibly reload cache. I'm also on the project's newest code base, so it might also have an effect. I just tried 2.0 again:

Re: [Readable-discuss] wart

2012-07-14 Thread Kartik Agaram
https://sourceforge.net/p/readable/wiki/Solution/ A leading quote, comma, backquote, or comma-at, followed by space or tab, is a list with that operator and the following expression. Of course, if you think that's a bad idea, then let's discuss! This is straight from SRFI-49.. It's not

Re: [Readable-discuss] wart

2012-07-14 Thread Kartik Agaram
(Send this just to David by accident; resending to all) The spec is (currently) at: https://sourceforge.net/p/readable/wiki/Solution/ I think you're looking at the wrong file. The version02.html file is obsolete; that's mainly useful if you want to see historically where we came from.

[Readable-discuss] wart

2012-07-13 Thread Kartik Agaram
I just found out about this list (thanks Alan!) and am going to go read through the archives. In the meanwhile I wanted to share the whitespace-sensitive lisp I've been working on. You can read about the design choices I made at: http://github.com/akkartik/wart#readme I'd love feedback and

Re: [Readable-discuss] wart

2012-07-13 Thread Alan Manuel Gloria
On Sat, Jul 14, 2012 at 2:00 AM, David A. Wheeler dwhee...@dwheeler.com wrote: Kartik Agaram: I just found out about this list (thanks Alan!) and am going to go read through the archives. In the meanwhile I wanted to share the whitespace-sensitive lisp I've been working on. You can read about

Re: [Readable-discuss] wart

2012-07-13 Thread David A. Wheeler
I said about a!b syntax: This is kind of interesting, but it can already be noted as (a 'b) or a('b), and it's not clear to me that this abbreviation is worth it for arbitrary Lisp-based systems. Alan Manuel Gloria replied: Ah. This is a common idiom in Arc. In Arc, tables can be

Re: [Readable-discuss] wart

2012-07-13 Thread Alan Manuel Gloria
On Sat, Jul 14, 2012 at 7:29 AM, Kartik Agaram a...@akkartik.com wrote: In a simple 2-way branch, I try to cuddle the condition right after if where possible: . if iso(1 {x % 2}) . . 'odd . . 'even Yes, I don't use the :else in that case either. --- Your other options are fine at the

Re: [Readable-discuss] wart

2012-07-13 Thread Kartik Agaram
BTW I haven't ever considered adding syntax at the start of a line. The only place I've seen this idea before is vimscript (http://vimdoc.sourceforge.net/htmldoc/repeat.html#line-continuation). Is a backslash at the start of each line really less alien to non-lispers than a few extra parens?

Re: [Readable-discuss] wart

2012-07-13 Thread Kartik Agaram
Also, has there been discussion of the haskell approach? a) Explicitly mark certain ops as infix. That would eliminate a lot of curlies, and also allow any op to be infix. b) Allow any op to be temporarily infix by enclosing it in backticks or something like that. Maybe curlies? matrix1

Re: [Readable-discuss] wart

2012-07-13 Thread Alan Manuel Gloria
On Sat, Jul 14, 2012 at 9:12 AM, Kartik Agaram a...@akkartik.com wrote: Also, has there been discussion of the haskell approach? a) Explicitly mark certain ops as infix. That would eliminate a lot of curlies, and also allow any op to be infix. b) Allow any op to be temporarily infix by