[infinispan-issues] [JBoss JIRA] (ISPN-5553) Functional Java 8 API

Galder Zamarreño (JIRA) issues at jboss.org
Tue Jun 16 10:16:03 EDT 2015


Galder Zamarreño created ISPN-5553:
--------------------------------------

             Summary: Functional Java 8 API
                 Key: ISPN-5553
                 URL: https://issues.jboss.org/browse/ISPN-5553
             Project: Infinispan
          Issue Type: Feature Request
            Reporter: Galder Zamarreño
            Assignee: Galder Zamarreño
             Fix For: 8.0.0.Final


Infinispan 8 is baselining on Java 8 and that enables a more advanced , functional, APIs to be built instead of relying on the traditional Map-like APIs. Such APIs, taking lambda functions, can improve on the current APIs in the following way:

* Being able to provide a write operation, where the operation is defined as a lambda, better enables conditional (CAS) like operations that are based in functions other than equality, e.g. version equality. If this functions can be executed atomically, they provide a better solution for Hot Rod version-based replace operations that currently can cause some weird behaviour (ISPN-4972)
* When operations are defined as lambdas, it's easier to move towards a model that tracks/replicates operations leading to state, rather than replicating state itself. This makes it easier to implement more-efficiently replicated alternative data structures, such as counts, lists...etc, and paths the way towards CRDTs, particularly CmRDT (Commutative Replicated Data Types) or operation-based CRDTs.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)



More information about the infinispan-issues mailing list