Consider this, from the GPL Faq:
In an object-oriented language such as Java, if I use a class that is GPL'ed without modifying, and subclass it, in what way does the GPL affect the larger program?
Subclassing is creating a derivative work. Therefore, the terms of the GPL affect the whole program where you create a subclass of a GPL'ed class.
It's these types of issues that really add to the confusion. Also see tilly's reply in Using GPL'd Perl Modules in Commercial Software. There is a lot of room here, and I think many companies will making "use" of it shortly.