Email list hosting service & mailing list manager


Re: Are we done? Are other changes needed to maximize adoption? David A. Wheeler 18 Sep 2012 16:10 UTC

I said:
> > All things have a learning curve.  But:
> >   {a + {b * c} + cos(x)}
> > should be easy-to-read by *everyone*, including both the unwashed through and the old hands.

Per Bothner:
> My concern: It's not easy-to-write by the unwashed.

A worthy concern, but I don't think it's a problem.  Indeed, it's pretty easy.  The basic rules are:
1. Use {...} every time you want to use infix order inside, with space-delimited operators
2. You can use f(...) anywhere in {...} (recursively).

It's worth optimizing reading anyway.  When you modify existing code, you need to read a lot of lines before you decide where and what to write.

> Perhaps it might be useful to have two modes in a REPL...

That's a possibility, but I don't think we should do that.  You now need mode-switching commands, and have to remember which mode you're in, and code then works differently depending on the mode.  Ugh.  I think it'd be better to have a simple rule that "works everywhere".

--- David A. Wheeler