Here are some benefits (from the top of my head) I've got from pushing a
more functional style to my java coding:

1 - Referencial transparency (in most areas of the code)
2 - Simpler code (smaller classes, better separation of state and behaviour
even if encapsulated inside an object)
3 - Simpler tests
4 - Better code reuse
5 - More predictability and easier to reason about the code execution
6 - Easier to scale, improve performance

On 14 July 2010 16:16, Casper Bang <[email protected]> wrote:

> I mean, we have tricks such as tail-recursion to optimize FP but at
> the end of the day, FP ends up executing on a turing-machine. So isn't
> FP more about expressiveness and correctness than performance? Perhaps
> multi-cores will change this but don't think it has happened yet.
> We'll always need number-crunching, but the most interesting stuff at
> the systems level comes from side-effects (I/O, screen etc.).
>
>
> On Jul 14, 4:03 pm, Kevin Wright <[email protected]> wrote:
> > Well, one could argue that copy-on-write filesystems are all about
> > persistent immutable structures.
> > A cornerstone of most FP patterns nowadays.
> >
> > (no, not "persistent" as in Hibernate, but this kind of persistent:
> http://en.wikipedia.org/wiki/Persistent_data_structure)
> >
> > On 14 July 2010 15:00, Casper Bang <[email protected]> wrote:
> >
> >
> >
> >
> >
> > > > Functional level programming is very useful at the system level
> > > > implementations.
> >
> > > Hmm... because many kernels and device drivers make use of FP?
> >
> > > --
> > > You received this message because you are subscribed to the Google
> Groups
> > > "The Java Posse" group.
> > > To post to this group, send email to [email protected].
> > > To unsubscribe from this group, send email to
> > > [email protected]<javaposse%[email protected]>
> <javaposse%2bunsubscr...@googlegroups .com>
> > > .
> > > For more options, visit this group at
> > >http://groups.google.com/group/javaposse?hl=en.
> >
> > --
> > Kevin Wright
> >
> > mail/google talk: [email protected]
> > wave: [email protected]
> > skype: kev.lee.wright
> > twitter: @thecoda
>
> --
> You received this message because you are subscribed to the Google Groups
> "The Java Posse" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected]<javaposse%[email protected]>
> .
> For more options, visit this group at
> http://groups.google.com/group/javaposse?hl=en.
>
>

-- 
You received this message because you are subscribed to the Google Groups "The 
Java Posse" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/javaposse?hl=en.

Reply via email to