Christian Haack, Erik Poll: Type-Based Object Immutability with Flexible Initialization. ECOOP 2009: 520-545