[Haskell-cafe] Re: Why?

Alberto G. Corona agocorona at gmail.com
Thu Dec 10 08:57:27 EST 2009

One more advantage that is not frequently cited

Purity permits to pass  every parameter of a procedure by reference (giving
the pointer) rather that by value giving a copy, and still be sure that the
data has not been modified. Besides the  safety. this is  great  language
optimization itself.

2009/12/10 Alberto G. Corona <agocorona at gmail.com>

>  What material benefit does Haskell derive from being a "pure" functional
> language as opposed to an impure one?
> Here is my list of benefits of purity (some of them are enhanced by other
> features like the type system).
> Purity means referential transparency. that means that  the programmer has
> no way to modify pure data. That cut the tree of possible programmer
> errors.In particular, since there are no variables, every state change must
> be in the form o a call to a function with new parameters. each function has
> no state change (except when needed and then the type system labels the
> stateful code as such)( This enforcement goes in the righ direction for
> clarity and readability, maintainability, modularity xxxxxbility.
> Purity also eases paralel processing, since no data is modified, each
> process is isolated better. Less opportunities for errors.
> Purity  permits lazines because since the execution tree of
> an expression has pure, data, can be evaluated later, since it will not be
> changed.
> Lazy evaluation eases mathematical reasoning,because mathematics has no
> notion of eager evaluation, but to make use of mathematical equations when
> the calculation is needed. .
> Mathematical reasoning permits the full use of a long tradition of
> mathematical knowledge. This makes code more simple, understandable,
> general, proof guarantted and elegant (for those that know the mathematical
> domain). This also permits high level optimization of code, both by the
> programmer and the compiler.
> for sure there are a few more
> We are superstitious and guided by "nonrational"  ideas such is beauty.
> but:
> bauauty -> (simplicity ->  (less effort to master, less errors)
> ,                 utility      ->, solve more problems, solve  greater
> problems
>                 )
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/haskell-cafe/attachments/20091210/919e214d/attachment.html

More information about the Haskell-Cafe mailing list