Email list hosting service & mailing list manager

Re: complexity of mechanism felix winkelmann (12 Apr 2006 19:39 UTC)
Re: complexity of mechanism Eli Barzilay (12 Apr 2006 20:54 UTC)
Re: complexity of mechanism felix winkelmann (13 Apr 2006 06:43 UTC)
Re: complexity of mechanism Eli Barzilay (13 Apr 2006 07:07 UTC)
Re: complexity of mechanism felix winkelmann (13 Apr 2006 08:04 UTC)
Re: complexity of mechanism Eli Barzilay (13 Apr 2006 08:26 UTC)
Re: complexity of mechanism felix winkelmann (13 Apr 2006 09:44 UTC)
Re: complexity of mechanism John Cowan (13 Apr 2006 11:43 UTC)
Re: complexity of mechanism John Cowan (13 Apr 2006 11:52 UTC)
Re: complexity of mechanism Eli Barzilay (13 Apr 2006 12:58 UTC)
Re: complexity of mechanism felix winkelmann (13 Apr 2006 13:15 UTC)
Re: complexity of mechanism Eli Barzilay (13 Apr 2006 13:07 UTC)
Re: complexity of mechanism feeley (13 Apr 2006 14:07 UTC)

Re: complexity of mechanism Eli Barzilay 13 Apr 2006 08:26 UTC

On Apr 13, felix winkelmann wrote:
> On 4/13/06, Eli Barzilay <xxxxxx@barzilay.org> wrote:
> >
> > > [...]  It's just to easy to put a keyword-enabled interface onto
> > > everything.  [...]
> >
> > and that's a very good argument for this srfi.
>
> It seems you're trying violently to misunderstand me:

(You keep contradicting your own argument.  At least IMO.)

> it's *too* easy: you quickly end up with a small set of functions
> with loads of keyword parameters and yet another open manual to
> consult.

OK, consider what users need to know for a second.  With common Scheme
code, if you want to extend a function in a way that doesn't break
existing code, you add optional arguments.  Say you begin with
something like:

  (message-box <title> <prompt>)

You then extend it with (in this order) a csutomizable button-spec
('yes-no, 'ok-cancel, 'ok, default is 'ok), timeout (number of
seconds, or #f for no timeout), whether the dialog is on top of the
main application or not (defaults to #t), and a bgcolor (defaults to
(system-bg)):

  (message-box <title> <prompt> [buttons] [timeout] [on-top?] [bgcolor])

The defaults are the same as the original version -- so no change
needed there.  Now you want to pop a blue message box, what do you do?

  (message-box "title" "prompt" 'ok #f #t "blue")

...and you need to read through that whole paragraph above to do this.
This is in contrast to

  (message-box "title" "prompt" :bgcolor "blue")

with no knowledge of the rest.  You'll always need the manual, but you
don't need to read it through to just change the bgcolor.

--
          ((lambda (x) (x x)) (lambda (x) (x x)))          Eli Barzilay:
                  http://www.barzilay.org/                 Maze is Life!