Same with Java. Name one feature of Java that hasn't been done 100 times in one form or another in some other language
This is why software patents are absurd. We are all standing on the shoulders of giants.
In the tech industry, 20 years are couple of lifetimes long. I'm in favor of shorten the period too.
Oracle is another matter entirely, and arguing that case requires discussing whether an unoriginal programming language and associated virtual machine should be patentable. Oracle gets no sympathy from me because of the way they've treated the various communities that built up around Sun's products, but beyond that, I think a rational case can be made that Google's independent implementation of a register-based VM should not be seen as infringing patents on Java's stack-based VM, and/or that Java's patents cover things that are obvious or non-novel.
The core idea of Free Software is the notion that one's own creations have every right to be free. If I create something independently, it is my right to give it away for free. Why should some other company I've never heard of and/or never done business with get to charge license fees for something I created myself, without their help?