4 ms·
Just to bring clarity on what has been patented on one of the patents: Monad Maybe where Nothing >>= _ = Nothing (Just x) >>= f = f x Tho
by fabianhjr 8y ago
Just to bring clarity on what has been patented on one of the patents:
Monad Maybe where
Nothing >>= _ = Nothing
(Just x) >>= f = f x
Those three lines, implementing the Maybe Monad/bind operation, are commonplace in all functional languages. (They just called it Optional instead of Maybe and "chaining" instead of "bind"/>>=)
( https://docs.swift.org/swift-book/LanguageGuide/OptionalChaining.html https://docs.swift.org/swift-book/LanguageGuide/OptionalChai... )
EDIT:
The second one linked is a package manager — https://patents.google.com/patent/US9329841B2/en?oq=9%2c329%2c841 https://patents.google.com/patent/US9329841B2/en?oq=9%2c329%...
The third one is "a programing language that combines elements from C and Objective-C", sounds like a broad claim on swift — https://patents.google.com/patent/US9329844B2/ https://patents.google.com/patent/US9329844B2/
- stochastic_monk 8y agoRust does this as a core idiom. I don’t think this will work. Edit wrt edit in parent: all three of these claims apply to Rust.
- haimez 8y agoOr, you know, every typed functional language released in the last 30 years
- pnw_hazor 8y agoYour example can be implemented in many different ways. This patent claims one or more ways but not all of them. 1. A non-transitory computer-readable medium with instructions stored therein, the instructions, when executed by a processor, cause the processor to perform operations comprising: receiving a first request to compile a first set of program instructions coded in a first high-level language, the first high-level language a C language based object-oriented programming language; receiving a second request to compile a second set of program instructions related to the first set of program instructions, the second set of program instructions coded in a second high-level language including object-oriented elements and procedural elements, wherein the second set of program instructions includes a data type provided by the second high-level language to indicate absence of a value of any type; compiling the first set of program instructions and the second set of program instructions using a modular compilation system including multiple front-end compilers, the first set of program instructions compiled into a first intermediate representation of the first set of program instructions and the second set of program instructions compiled into a second intermediate representation of the second set of program instructions; linking the first and second intermediate representations; and compiling the first and second intermediate representations using a back-end compiler that is specific to a target processor.
- deleted 8y ago[deleted]
- megaman8 8y agoI've seen patents that hinged on a single line of Javascript code because it was used in a context that has never been patented before and no prior art. Not only was it submitted, but it was accepted and is a patent now.
- jeremyjh 8y agoIt really means very little that a patent was granted. They do not do an exhaustive search for prior art, or validation of relevance. Until it has been litigated no one really knows which patents can survive litigation.
- tyre 8y agoBut if you’re a company sued asking for less than what the cost of fighting would be, it’s in your interest to cut a deal. In that case, whether the patent is valid or not doesn’t matter.
- dragonwriter 8y ago> But if you’re a company sued asking for less than what the cost of fighting would be, it’s in your interest to cut a deal. Or, it's in your interest to fight and make it as expensive as possible for the person making the claim to prosecute it, if you have a good case, because while it's an iterated game, not a single round, and you need to make sure the next however many potential trolls (whether the same with a new claim or a different one whose seen how you react) don't try to shake you down. To quote Kipling: “But we've proved it again and again, / That if once you have paid him the Dane-geld / You never get rid of the Dane.”
- jlokier 8y agoRealistically, most small companies can't afford to fight a large one over a patent infringement claim, regardless of the merits of the case. It might be worth a couple of rounds of letters saying "we don't believe your claims to be valid", but if the aggressor continues into litigation, the legal fees can quickly become overwhelming. As in more than the defendant's business is worth. Individuals writing open source software (such as compilers) have no chance, as most of them are not wealthy, and their personal assets are on the line. If you're unluckly enough to be in the situation the parent describes, where an aggressor will keep coming for more if you capitulate on the first one, there's probably no way to win. Sometimes the rational action is a painful one: Completely shut down whatever it is you're doing, and find something else to do instead. I'm familiar with projects that have shut down, some having been published and then (sadly) removed from public availability, over patent issues where it wasn't clear the aggressor's claims had merit, but they couldn't take the risk. Several in fields I wanted to work in. The effect I see is development paused for a decade or two until it's safe to resume. I suppose you might find a "no win, no fee" lawyer, but are those common in this situation?
- brianberns 8y agoI think they’re trying to patent the syntactic sugar that corresponds to the Maybe monad, not the concept of “bind” itself. That said, I think there are other languages with very similar syntactic sugar (e.g. Rust), so this is still a very questionable claim.