Just for the sake of argument, let's say that your lawyers conclude that you can NOT use Sort::Topological. Would it be that hard to "roll your own"? I mean, the source for the module is pretty short (especially after you strip out all the comments, POD, etc.), and it implements a fairly straight-forward algorithm easily found in any textbook on graph theory. You might even clean it up a little, find a spot to optimize here or there, etc. You can call the end result My::Topological::Sort, and slap your own GPL verbiage on it (and post it to CPAN). Problem solved?