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

Re: s-exprs + prototypes

On Sunday, June 22, 2003, at 09:57  AM, Steve Dekorte wrote:

> On Sunday, June 22, 2003, at 01:37 AM, Anton van Straaten wrote:
>> BTW, with all this talk of "objects" as the ultimate goal of all
>> programming, you might want to have a chat with some 
>> FunctionalWeenies or
>> LambdaWeenies, about the mathematical properties of languages.  For 
>> example,
>> I get the distinct impression you're talking about mutable objects, 
>> which
>> are a big no-no, with all sorts of undesirable properties.  They make
>> programs more difficult to reason about, analyze, optimize, and 
>> verify, and
>> thus more bug prone.
> If you're goal is to optimize for static programs on Von Neumann 
> architectures, then that's a good point. But don't you think that goal 
> is a bit short sighted?

Reasoning, analysis, optimization, and verification are HUMAN 
activities as well as programmatic ones.

I personally suspect that functional-programming probably makes 
human-based optimization harder (you can do more tricks with mutable 
state available).  An exception to this personal belief is the case of 
optimization by distributing the computation across multiple 
computation units, which is almost certainly easier to implement 
efficiently in an FP setting.

But one can make good arguments that the other three activities are 
easier in the absence of mutation operations.

I hope I don't have to explain why reasoning and verification are 
important goals (The Therac-25 is a good hint).