The point is to prevent company 'A' from simply taking code, modifying it and not returning the modifications to the code base to improve the original piece of work (Microsoft and the BSD IP stack for instance). Why not give the original creator of code freedom to do with the code as he/she see's fit? GPL does this while BSD simply says "hey you want it--take it. If you make it better, well then keep that secret so no one else can benefit."
If you are a developer and don't feel like writing a chunk of code and would rather cut and paste from a GPL'd piece of work then the original creator of the work should get credit should he/she not? GPL says develope your own code from scratch if you like. If you do then license it however you want. If you decide
to use a piece of GPL'd code in your project though you must agree
to abide by all of the terms of the GPL. Again, if you don't like it don't use GPL. Sounds pretty simple doesn't it?
If you don't like GPL don't use it. If you develope software and prefer BSD or any other IP scheme then feel free to use what you like.
Oh, RMS is not a Linux Zealot BTW. In fact I'd say he's the exact opposite of a Linux zealot. RMS only cares about the FSF and GNU. He harps about Linux as much as he does about plan 9 or solaris or aix.