The progmodels module is a parent for the various implementations of a programming model supported by the framework.
A 'programming model' means the support for various programming conventions and annotations used by Isis to build up its internal metamodel.
The implementations available are:
The dflt (default) progmodel implementation supports domain applications written in Java 5 or later. It is broadly the same as the one originally defined by Isis' predecessor, the Naked Objects Framework.
The groovy progmodel implementation, which extends the dflt programming model but to allow domain applications to be written in Groovy.
The wrapper progmodel implementation, which also builds on the dflt programming model, but which also provides the ability for domain objects to be wrapped such that interactions between domain objects can be "as if" through the viewer. (In other words, business rule constraints are applied).