Passing values taking implicit parameters

Jorge Adriano jadrian@mat.uc.pt
Thu, 31 Jan 2002 14:27:44 +0000


> > BEGIN wishlist:
> <snip>
> My whilist for records. 'Records' provide projection functions, but IMO
> that is not enough, it would be really handy to have some 'update' and
> 'apply field' functions provided automaticly for each field.
> I always find myself having to write this functions by hand for each field,
> because I just can't do without them, and if you have 2 records with 6
> fields each, that means 2*2*6 functions = 24 functions... wasted time, more
> oputunities to make dumb mistakes defining similar functions, tiresome to
> add and delete record fields... you get the picture.

Forgot to mention that a particular case in which these functions are 
extremely useful, is when using implicit parameters as John Huges describes 
in http://www.md.chalmers.se/~rjmh/Combinators/MonadTransformers.hs

If you follow his sugestion and use group parameters in a record, and then 
pass around an STRef to that record as an implicit parameter, then in order 
to change the fields of the record it's nice to be able to use modifySTRef.

Not having 'update/apply field' functions for records, and having to (either 
not provide a signature or) define the whole context makes the whole 
experience a lot more painful than it actually has to be...

J.A.