| ... | ... | @@ -101,8 +101,6 @@ Note the change in the type of the stored field. | 
| 
 | 
 | 
At the moment, such a record update must be written using the data constructor, not the update syntax.
 | 
| 
 | 
 | 
 | 
| 
 | 
 | 
**SLPJ:** That isn't true.  Haskell 98 already supports what you suggest here, and the code above compiles with GHC without flags.  
 | 
| 
 | 
 | 
 | 
| 
 | 
 | 
 | 
| 
 | 
 | 
However I would like to argue for *removing* this feature.  It causes a quite unreasonable amount of
 | 
| 
 | 
 | 
pain in the type checker, especially once we start thinking about GADTs and existentials.  And I think the benefit is modest at best.  I don't think programmers generally expect record update to be a type-changing operation.
 | 
| 
 | 
 | 
 | 
| ... | ... |  |