Hi,

Am Donnerstag, den 03.12.2009, 01:16 +0100 schrieb Martijn van
Steenbergen:
> So here's a totally wild idea Sjoerd and I came up with.
> 
> What if newtypes were unwrapped implicitly?
> 
> What advantages and disadvantages would it have?
> In what cases would this lead to ambiguous code?

not sure if this is what you are thinking at, but everytime I wrap a
type Foo in a newtype MyFoo to define my own instances (or just for more
expressiveness code), I wish I had a way to tell the compiler:
„Please define function myfoo to be the same as foo, with all occurences
of Foo in its type signature replaced by MyFoo.“

Instead I find my self writing manually code like

myfoo :: (Blubb -> MyFoo) -> MyFoo -> MyFoo -> MyFoo 
myfoo f (MyFoo a) (MyFoo b) = MyFoo (foo (unMyFoo . f) a b)

I guess TH could probably do this.

Greetings,
Joachim


-- 
Joachim "nomeata" Breitner
  mail: [email protected] | ICQ# 74513189 | GPG-Key: 4743206C
  JID: [email protected] | http://www.joachim-breitner.de/
  Debian Developer: [email protected]

Attachment: signature.asc
Description: Dies ist ein digital signierter Nachrichtenteil

_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to