[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Y Store /Closures



On Fri, 2003-02-28 at 08:57, Sundar Narasimhan wrote:
>    What is the minimal piece of Java or XML or Python that shows the same
>    kind of executable step-by-step definition of a task as I gave in my post?
> 
> Avi: You've gone from "cannot be done" to "cannot be done in as many
> lines of code". I won't take that bait, Sorry. Because the lines of
> code you are focussed on reducing is not what I (and other enterprise
> developers are focused on -- supporting the back button in the manner
> you describe is less than 5% of my use-cases).

You know, as a huge Zope lover, let me chip in my 2 cents.  I think you
take another look at Avi's approach, and think about it more deeply
before dismissing it so quickly.

I can (and do) write object-oriented programs in C, but they're totally
different beast than the ones I write in C++.  Similarly, I can (and do)
write functional programs in C, but they're *so much uglier* than the
ones I write in Scheme.  Avi is talking about a conceptual jump as big
as the jump from 'goto' to structured programming, or the jump from
structured programming to object-oriented programming.  It's not
something you can grok without hands-on experience.

Now, what he's talking about might not (ultimately) offer you any
benefits.  Objects didn't help everyone, either.  But object-orientation
wasn't just a way for C programmers to save a few "lines of code"; it
was a whole new way of thinking about designs.

I believe that (programming) languages affect the way we think, and that
design changes in programming languages can produce *radically* better
software.  I may occasionally pick on language designers for having poor
FFIs, weird syntax, or intrinsically alien semantics, but that's because
I *want* the cool languages to succeed, because many of them are
profound.

Language designers rescue us from the Turing Tarpit, where everything is
possible, but nothing is easy or elegant.

Cheers,
Eric