[racket-dev] P4P: A Syntax Proposal

From: Shriram Krishnamurthi (sk at cs.brown.edu)
Date: Thu Jul 29 14:16:26 EDT 2010

They do stand for a bigger thing, but I think they also stand for themselves.

That is, as I said earlier in this thread, issues like composition and
nesting ARE difficult and students DO have difficulty adjusting to

But we should not assume that they are the ONLY problem, and that the
syntax is no problem at all.  At least, that isn't my evidence.


PS: I've been around this discussion enough times w/ Joe that I don't
think it's fruitful.  I'm taking this as an axiom; Joe takes the
negation of this as an axiom.  So I'd like to focus on discussion of
P4P itself.  In particular, it'd be great to get some feedback from
others who try it out.

On Thu, Jul 29, 2010 at 2:12 PM, Robby Findler
<robby at eecs.northwestern.edu> wrote:
> Okay, I just looked that up and I'm still not sure what you mean. :)
> Robby
> On Thu, Jul 29, 2010 at 1:09 PM, Shriram Krishnamurthi <sk at cs.brown.edu> wrote:
>> I disagree.  I think parens are synecdoche.
>> Shriram
>> On Thu, Jul 29, 2010 at 1:28 PM, Robby Findler
>> <robby at eecs.northwestern.edu> wrote:
>>> FWIW, I think you're probably right that "parens" are actually code
>>> for "I don't want to think so hard" so while an alternative syntax may
>>> take away one excuse, language design and libraries and good docs and
>>> tutorials all the other things are probably going to be required as
>>> well to really make the language a success.
>>> Robby
>>> On Thu, Jul 29, 2010 at 12:19 PM, Joe Marshall <jmarshall at alum.mit.edu> wrote:
>>>> On Wed, Jul 28, 2010 at 3:06 PM, Everett <webj2 at unoc.net> wrote:
>>>>> I've always thought the problem was the parens.
>>>> I don't believe this.  If the parens were the problem, then why didn't
>>>> M-expressions gain popularity?  Why didn't CGOL?  Why didn't Dylan?
>>>> Why hasn't *any* alternative syntax helped? (Honu, anyone?)
>>>> And why aren't parens a problem in C:
>>>>          if (unlikely(!access_ok(VERIFY_READ, iocbpp, (nr*sizeof(*iocbpp)))))
>>>>                return -EFAULT;
>>>> or Java?
>>>>        private static void defCategory(String name,
>>>>                                        final int typeMask) {
>>>>            map.put(name, new CharPropertyFactory() {
>>>>                    CharProperty make() { return new Category(typeMask);}});
>>>>        }
>>>> --
>>>> ~jrm
>>>> _________________________________________________
>>>>  For list-related administrative tasks:
>>>>  http://lists.racket-lang.org/listinfo/dev
>>> _________________________________________________
>>>  For list-related administrative tasks:
>>>  http://lists.racket-lang.org/listinfo/dev

Posted on the dev mailing list.