6 ms·
I haven't read the immutability patent in detail, but it seems like the problem they are considering is not completely trivial. I've seen research papers on sim
by more_original 12y ago
I haven't read the immutability patent in detail, but it seems like the problem they are considering is not completely trivial. I've seen research papers on similar topics. Example: http://www.cs.ru.nl/E.Poll/papers/esop07.pdf http://www.cs.ru.nl/E.Poll/papers/esop07.pdf
I think one should have a careful look at it to check if there is anything new here. Maybe there is.
Edit: Found a recent paper by some of the patent authors that looks related:
https://homes.cs.washington.edu/~csgordon/papers/oopsla12.pdf https://homes.cs.washington.edu/~csgordon/papers/oopsla12.pd...
That being said, it clearly shouldn't be possible to patent such ideas.
- bunderbunder 12y agoIt shouldn't be possible to patent such ideas. But in the current legal environment, it would be crazy of a company like Microsoft not to try and get a patent on anything they can get away with. Especially so now that the the America Invents Act is in effect. Being first to file means that they no long have the option of being altruistic and just letting their inventions sit around unpatented. That leaves an opening for someone else to swoop in, get the patent, and try to sue them for "infringing" on something they invented first. Which is admittedly an awful situation. It really shouldn't be possible to patent such ideas.
- deleted 12y ago[deleted]
- rayiner 12y agoAnyone who gives you that story is trying to mislead you, using the rule change as cover. What first to file does is change the rule for who gets priority when multiple parties file overlapping patents. Before priority went to the "first to invent" now it goes to the "first to file" (avoiding the expensive process of figuring out which applicant invented first). It has no effect on a party that publishes an invention with no intention of patenting it.
- rayiner 12y agoI've been doing a lot of reading in this area lately, and it's not trivial stuff. The central idea of this field of inquiry is using the type system to limit the proliferation and capabilities of aliases. Concurrency is one application: a class of race conditions can be prevented if you can statically guarantee that only one read/write reference to an object exists, potentially in the face of many read-only references. But there are also applications to memory management: you can use annotations to ensure that, e.g. that no aliases to objects in a region outlive the region. No existing system is really satisfactory in terms of annotation overhead versus the ability to accommodate arbitrary object graphs. IMHO, figuring out a usable system should at least pass the obviousness hurdle to patentability. I think the real issue is that it neither costs much money to develop these ideas, nor does anyone make any money off compiler technology, so the rationale for patents isn't really implicated. If the idea was backed by real world testing of its usability in production systems, I think that could merit a patent, because that is expensive R&D someone could free-ride off of.
- Locke1689 12y agoOne thing I'll note in regards to Microsoft patents is that for basically the entire lifetime of the company filing patents has been considered important. On the other hand, that doesn't necessarily mean Microsoft wants to keep them closed. On the Roslyn team we received a number of patents on some new algorithms and data structures to do fast and incremental parsing with immutable data structures. When Roslyn was open sourced all the code and patents went under Apache and are now open under its conditions.
- Locke1689 12y agoThat OOPSLA paper is essentially the patent (it was written by the patent authors). It's basically baking many forms of immmutability (e.g., immutable to view, but not when owned, vs. immutable in the entire object graph) into the type system. As far as I can see, if any software is patentable, that is.
- DannyBee 12y ago"As far as I can see, if any software is patentable, that is. " Why? It has been known you could do this for years. There is literally nothing special about their model, other than baking it into a type system, which everyone knew you could do, but nobody had bothered to try to sell to programmers.
- ConceptJunkie 12y agoYou don't seem to understand the patent system. It doesn't matter how obvious something is. There's a good likelihood someone at the overworked, understaffed USPTO will rubber stamp it. Bombarding the USPTO with patents for any and everything you can possibly think of is a valid strategy, because once you get it, it's a lot of work and expense to overturn and you can start extorting people in the meantime. Microsoft didn't start out with this attitude, but when it was applied to them, they decided join in and hard. If you're a programmer who can do more than write a for loop that counts to 10, I can almost guarantee you've violated a patent. In fact, I used to joke about getting a patent on the for loop. If Fortran, or whatever language first had for loops, had been created today, there would probably be a patent granted for it.
- DannyBee 12y ago"You don't seem to understand the patent system." 1. I"m a registered patent attorney. 2. I run www.google.com/patents 3. I talk to examiners frequently 4. I spent years of my life working for patent reform in DC Trust me, I understand how the patent system works. The USPTO is not horribly understaffed. They have other issues. One of the main issues is actually that the patent examiners are union, and the union is not really on board with them being asked to do significantly more work (IE searching harder), unless they get significantly more pay. In a lot of cases, they can't get significantly more pay, because there are salary caps on federal employees, etc.