feature suggestion: accessor-pattern

15-minutes hack, but it works.
If we further expand this strategy,
almost all constructor patterns can be derived from the combination of
 this one and other primitive patterns e.g. type/and/guard patterns.

Note: of course you don't have to merge this commit.