Microsoft's 'IsNot' Patent Continued...
An anonymous reader writes " According to the patent application--filed in mid-November by Paul Vick, lead architect for Visual Basic .Net at Microsoft; Amanda Silver, a program manager on the Visual Basic team; and an individual in Bellevue, Wash., named Costica Barsan--the IsNot operator is described as a single operator that allows a comparison of two variables to determine if the two point to the same location in memory." This article continues the tale started last november, and here is an eWeek story on the same subject.
the IsNot operator is described as a single operator that allows a comparison of two variables to determine if the two point to the same location in memory.
Oh please. I remember our programming instructor in sixth grade teaching us about this logic operator is BASIC. This is simply an effort (albeit transparent) for Microsoft to continue to duplicate pre-existing code for Microsoft specific code to ensure that programs written with Microsoft specific tools will maintain future market share for the company. In other words, the creation of a Microsoft specific "equals" means that code years down the road will require Microsoft specific tools to edit/change/run this code. I call shenanigans! This is not innovation in any technical sense and indeed is not even innovation in a business sense.
Visit Jonesblog and say hello.
I better go and patent it now
I am harvesting funny/good quotes. Please help by putting them in your sigs
So what's the smallest pattern of bits that Microsoft can fairly claim to hold a patent on?
xkcd.com - a webcomic of mathematics, love, and language.
We will all have to pay royalties to MS when using the English language. The fees are based on Scrabble's point system, with 1 cent per point. Pls. sign up at www.microsoft.com with your bank-account or credit card information and will send you our patented verbal-word-counter to be attached to your brain.
Thinking the words are discounted at 10% over spoken words!
If you mod me down, I *will* introduce you to my sister!
MS announced today their plans to patent the string object, the ampersand, coffee, comfy chairs, and the letter 'T'.
I will shred my adversaries. Pull their eyes out just enough to turn them towards their mewing, mutilated faces. Illyria
I'd better finish filing out my patent application for "Is" before MS finds out. It's pretty brilliant, if I do say so. "Is" compares two pointers and returns "true" if they contain the same value.
I really hate signatures, but go to my website.
It all depends on what the meaning of the word IsNot, is not.
...Ridiculous IP claims will be the death of Microsoft.
When they're resorting to patenting what appear to me to be boolean operations with an object-oriented twist, that's a bad sign about what real plans the company doesn't have.
I'm a big tall mofo.
is too!
is not!
is too!
hey, this gives me an idea...if two variables are equal in value, then I can invent an new keyword, the "ISTOO" relational operator! I'll copyright/patent/trademark it right away and make millions (billions!?). Why heck, I could probably sue M$ for the use of the equal sign operator...obviously it infringes on my idea.
If I patent XOR does that make me a great hax0r?
...why any rational company would actually be afraid of this.
People didn't take the hyperlinking patent seriously did they?
I'm surprised that Microsoft hasn't tried to patent patenting itself.
That would be no more absurd than some of its other patent requests.
Linux/Open Source/Anti Microsoft News
If my patent application for the BitwiseIsNot operator says anything, this one will be rejected. My idea was pretty novel at the time, though.
BitwiseIsNot: a binary bit-level operation that returns 1 in the bits where the two numbers differ and 0 else. I call it BitwiseIsNot.
e.g. 0110 BitwiseIsNot 1111 = 1001.
For each bit you can write it A BitwiseIsNot B = AB + A'B'
If I h ad a patent lawyer and a few million dollars, then I'd surely have gotten that patent.
I used to work for a company that trademarked the word "xor" (that was the name of the company, now defunct, 450 souls at the height of the dot-com boom). BTW no one (outside of the computer industry) knew how to prononunce xor, so they ran a full-page ad in the Wall Street Journal explaining that it is prononuced "X like the letter, or like the word"
And thus Microsoft will have another patent paper to toss onto the pile like so many unwanted gelatine Desserts.
Will wank off Linus Torvalds for fame.
software licenses don't make sense in any form.
If i had patented the technique of "fire". i could sue every company utilizing its benefits such as people who produce stoves.
Protecting a line of code GNU/GPL/whatever is fine with me, but patenting a function doesnt make sense.
Whatif for some reason someone would patent the ASCII chart. we'd bescrewed.
perpetually dwelling in the -1 pits
Will the outcome depend on what the definition of 'IsNot' is not?
I don't make the rules. I just make fun of them.
Sesame Street beat Micro$haft to the punch on that one.
Rumor has it that Santa Claus, the Easter Bunny, the Honest Politicians Society and Slashdotters with girlfriends are all filing suit claiming that they're proof of prior art...
In all seriousness, the fact that a patent like this is even entertained is a more than a bit disturbing. How in the world one can patent a logical operator is simply beyond me...
No, they want to patent: if (ptr1 != ptr2) ...
besides the fact that you're comparing the values the pointers are pointing to, not the memory location...
I like how the submitter conveniently left out Paul's blog entry on the subject:
1 /2 0/2321.aspx
http://www.panopticoncentral.net/archive/2004/1
He says, among other things that software patents are a "bad idea" and that he did not "feel particularly proud of my involvement in the patent process in this case".
So there you have it, from the horse's mouth.
Natural != (nontoxic || beneficial)
gah! another example of evilness. it's just this kind of thing that makes the teachers on my course only let us use visual c++ compilers (i got banned from using knoppix's g++). hopefully this won't progress mind you these are the same people that wouldn't let me install firefox for "security reasons"
Most people call this as "XOR".
isNOt isNot isNOTTTTTTTTTTTTTTT, Agh.
Well, it offers a simple rebuttal to Microsoft's whinging about software patents in Europe.
"Protecting development, blah blah, investment, blah blah, we'll take our ball away, whinge..."
"IsNot, Bill."
Only if ptr1 and ptr2 are pointers to pointers as you are comparing the contents of the memory locations, not the locations itself.
Henry IV's cry of the heart...
Dear MS (can I call you MS?)
I heard about your new IsNot, I think it is so elloquent and r33t, but someone has gone and copied you with a '==' object comparator that decides if the references point to the same memory area!
I say sue!
Yours,
A Microsoft Fan-Boy
#hostfile 0.0.0.0 primidi.com 0.0.0.0 www.primidi.com 0.0.0.0 radio.weblogs.com
Let's pretend this patent goes through; could RealSoftware Inc. sue the patent office for failing in it's duty? I mean, there has to be some liability here. If Microsoft can start patenting any crazy thing with their immense resources, and then everyone else has to scramble to get these patents knocked down, something has really gone wrong. Raise the patent fees so the USPO can really examine these patents. Make them liable for costs when a patent gets stricken for being obvious.
In the last month alone the software patent bastards also gained patents on:
Network drives and folder mapping
The Photo Album Software that came with your digital camera
The clickable progressbar found in all video and music playing software
The "recent" menu
It is about time that Europe puts some tough law on software patents in place. Otherwise I fear that VB programmers will emigrate en masse to Europe. Please keep them over there!
karma police: arrest this man, he talks in maths; he buzzes like a fridge, he's like a detuned radio. [radiohead]
Can anyone explain why IsNot != !=?
They should try patenting Boolean logic and affiliates in one big go instead of doing it one operator at a time.
The "IsNot" operator has been around for a very long time - only it's expressed in mathematical notation !=.
Consider the following conditional statement:
if (n != 0)
A typical programmer would read the above statement as "if the variable n is NOT EQUALS to 0 then..." A regular Joe will tell you that NOT EQUALS are synonym of IsNot.
And besides, ain't the "!=" operator doing the same thing as this "unique" ISNOT? What I meant is, the != operator can be used to compare two pointers to see if both occupies the same memory space.
Another example of absurd patent.
Ok, what's the full story on this? I personally think the USPTO has been out-sourced to the ape cages of the Washington zoo in 1997 or so, but they can not really have patented what's essentially &a!=&b, can they?
Assorted stuff I do sometimes: Lemuria.org
Microsoft is a corporation which exists solely to make money. If this will help them make money then they have an obligation to their stockholders to do it.
If you haven't learned this by now then you never will.
Go IsNot patent, go!
The sooner the industry is choked with these obvious lock-out bullshit patents, the sooner development will grind to a total stop for fear of litigation. And as soon as that happens, the system will have to be reformed.
Well, either that or we all give up tech completely and be farmers. It's in the court's hands now.
Weaselmancer
rediculous.
I welcome ridiculous MS patent claims, as it will one day (soon) make tech patents in the US defunct by reason of insanity. Europe, this is what you have avoided (so far) well done.
your talkin g C-code, M$ hoever patented it for BASIC like languages. "if MyObject1 isNot SomeOtherObject then ..." is the typical BASIC way of comparison. It already has IsEmpty IsNull IsNothing too etc.
"OK -- MICROSOFT PATENTED" on everything it gets.
Remember that story with the apple (the fruit) they patented to Microsoft? It was filed by a farmer, but they did not even read it, just *stamp*.
Sad, sad world.
*squeak*
Microsoft IsNot sane.
Microoft IsNot reasonable.
Microsoft IsNot ethical.
Why shouldn't they get to patent "IsNot"?
Insert witty sig here.
I think that within M$ they're having some sort of internal competition on which employee can get the dumbest patent imaginable...
If Microsoft was mass, stupidity would be gravity.
Of course, anyone with a little sense of history might have a thoughtful expression as they try to remember the nuances of the various LISP equality operators.
One of them, eq, was exactly what was described here. Of course, given that the USPTO don't feel that they're in the business of digging out prior art, preferring instead to let their friends in the courts profit from the resulting mess.
Madness.
Nihil Illegitemi Carborvndvm
I found some M$ notes inside a copy of Book Delta of the Metaphysics:
1. beginning (//START)
2. Cause
3. Element (+Arrays)
4. Nature (tyupe)
5. Necessary
6. One (probably prior art here)
7. Being (perfect! self-evident, but not obvious!)
8. Substance
9. The Same (PENDED: IsNot)
10. Opposite (Not)
11. Prior and Posterior: (patent this one first to protect against "Prior Art"))
12. Potency
13. Quantity
14. Quality (no rush on this one)
15. Relative ($$$)
16. Complete (n.b., get 'perpetual beta' first and nail those Google geeks).
17. Limit
18. Substrate (if we can't patent embedded apps, amybe we can patent the hardware they're embedded in)
19. Disposition
20. Habit (Eventhandlers!)
21. Passion
22. Privation
23. Possession (think those subclasses are obvious? think again!)
24. generation
25. Part
26. Whole
27. Corrupt (strong case)
28. Genus (class)
29. False
... on what your definition of the operator isNot, is. :-)
- Kevin
The less confident you are, the more serious you have to act.
is for the Linux Corporation to patent the IsTo operator and the competition can devolve to a completely childish level.
try { do() || do_not(); } catch (JediException err) { yoda(err); }
not having RTFA, I think that what they are trying to patent is something like:
;-)
Thanks for your (qualified?) guess on what the article reads.
But instead of accepting your guess what the patent is, I think I'll go ahead and RTFA.
But in BBC BASIC there's an 'address of' operator, it's ^... so this is "IF ^a% = ^b% ELSE" Though that statement makes very little sense as a% and b% could never occupy the same location in memory unless youve poked bits inside the interpreter.
Sorry, can't give the specific example since I don't want to give anyone ideas.
It is up to YOU the people to elect at least half-way savvy human beings who can change the system. Whining about it on /. isn't going to solve shit. For all the complaining that geek types do, I see scant few of us actually organizing and trying to make a difference.
Do I think Microsoft should be able to patent this? Absolutely not, because I don't believe the basic core functions of the computer should be patentable. Now taking those functions and tying them together into a cohesive program should definitely be copyrightable, but patenting a computer adding two numbers together (This will happen eventually, I'll bet a C note on it) is ridiculus.
If this is held up, it help define the precision of software patents. IsNot must be spelled exactly that, isnot would be ok. Ergo any innovation that contained a single letter different than the patten would be safe. Well that sounds silly but if it requires patent applications with every permutation of spelling a capitalization, each weighing in at 75 tons of paper, it may make the USPO revise some rulings. :-)
> When they're resorting to patenting what appear to me to be boolean operations with an object-oriented twist, that's a bad sign about what real plans the company doesn't have.
Yes, but think how useful it could be in their advertising campaign:
IsNot reliable
IsNot secure
IsNot a good idea
...
Sheesh, evil *and* a jerk. -- Jade
Oh bugger... I need to get my head checked. For a moment there I thought someone was trying to revive the Internet Boom-time with an internet-enabled handkerchief.
-----
IsToo!
Task Mangler
There needs to be some kind of deterrent to filing frivolous patents like this. Take away the arguments about innovativeness, prior art, and obviousness. It was part of the first release of .NET, correct? This means the invention was marketed for over a year prior to the patent application, which invalidates the application right there.
when my patent for '==' is approved, you're all screwed :)
-- lol pwned
Patents arn't a broad encompasing thing. They are very specific to *exactly* what the patent clauses claim. Their patent on the isNot operaton comparing two memory locations in a BASIC programming language is exactly that. Before Microsoft came up with it, it simply did not exist, you had to do it another way or it existed in some other language.
You guys should be thankful that MS will waste 750$+ patenting something this simple. If you guys ever need to patent something in the future you'll be happy the application fee is so cheap because large corporations waste money on simple mundane patents.
However, I think there is a closer parallel.
Consider the following java snippet:
Of course, underneath it is probably implemented with pointers, but the semantics of the != operator on reference types is defined to be object identity non-equality.
This prints out the following:
s1 is NOT s2
s1 EQUALS s2
The comparison operators in Java, when applied to reference variable types (which is everything other than built in primitive3 types) tell you whether the objects have the same identity (==) or different (!=).
Imagine, for example, instead of a conventional virtual memory architecture, we have an architecture where we have different kinds of memory with different speeds mapped to different address ranges; say that adresses under 1 million are fast memory and addresses 1 million or over are slow memory. This is not impossible to imagine for some kind of embedded device. Suppose, in addition, the runtime system understands this and caches copies of frequently used addresses in the below 1 million range to enhance performance.
In that case suppose we have the java expression:
if (objRef1 != objRef2)
In this case, a correct java implementation on this hypotethetical platform could not use a simple address comparision. If the addresses were unequal, it would have to do a further check to see if one of them were a cached version of the other.
Y'know, a news for nerds site really ought to make it possible to post code examples without resorting to stupid tricks like this: 2qy982uoiu 3o2iu4o23iuoi23u4 23o4uo23iu ou34oi 23oi4u o2i3u4o i234 lkasdfls llflawl fasdf ssdlllle asdf foo sdalkfl adlk;jlaskdf lsadf . as;ldkf
Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
foo isLiteralEqual bar.
'Nuff said.
-- Cerebus
With one child yelling "Is so!", and the other child, left with open mouth, tragically silenced by this patent...
Yet another core component of American culture lies destroyed by one company's greed...
The Scheme language has an even more elegant solution than IsNot:
The equivalent of Microsoft's deap innovation is: (not (eq? obj1 obj2))
I cannot believe we are discussing this! Has there ever been a more loathsome organization than Micro$oft?
an ill wind that blows no good
How then would small businesses compete? If I, sitting in my parents' basement like a good slashdotter, came up with a truly good idea, how on earth can I compete in the marketplace if the barrier to entry (the patent fee) is absurdly high?
... for having opposed the EU software patent bill at the right time.
Among other source code, you'll find prior art demonstrated on this patent in the Linux kernel. You'll find it in C64 basic rom. You'll find it in the original version of Unix for the PDP-11. You'll find it embedded in every CPU on the market.
Comparing 2 memory locations is the basis of modern computer addressing. I think this amounts to an inside joke or maybe a wager by the vb.net folks to see if the patent system is ignorant enough to actually grant such a patent.
I think SCO had been in decline for years before resorting to frivolous IP claims. It seems to me that their business model (sell a mediocre version of Unix on highly specialized machines to retailers) wasn't working well, their profits sank and they saw the writing on the wall. In comes a new CEO known for pushing IP litigation and *bang* they have a new business model overnight.
MS is in a different place. I think they will probably go into decline eventually, but they have a long way to go before their business model fails the way SCO's did.
Taft
Microsoft just demonstrated how silly software patents are.
So now, I guess the EU will easily make up its mind.
AIUI, next year MS are planning to patent the NAnd operator in a patent application titled On a general method of analysis.
I understand It is written by a rather elderly MS employee by the name of George Boole.
--
Pointers are such a basic but misunderstood concept. Here is some C basics.
int *p0,*p1;
Treat the value that is held by the variable p0 as an address somewhere in memory.
if(*p0 == '\0') foo();
Check to see if the variable p0 holds the value NULL.
if(p0 == '\0') foo();
if(*p0 != *p1) Retrieves the values of p0 and p1. Treats them as the address of the values to be compared.
if(p0 != p1) Compares the values that p0 and p1 actually hold.
"...if the two point to the same location in memory..."
It looks like MS is trying to patent if(p0 != p1)
"More fine quality bullcrap straight to you from Microsoft!"
Hold on, if Microsoft is just developing a patent arsenal in case someone else uses software patents against them, how come thay're pushing so hard for software patents in Europe? If this is just a matter of defense, Bill Gates should be asking European ministers to oppose the software patent process, not twisting their arms to push it through against the will of the European Parliament.
What am I missing?
This won't work, I already invented the infinite loop as a freshman. I even have documentation from the instructor that proves it, so I can demonstrate prior art.
Think global, act loco
If there is a software patent and your 1000000% certain that it is not inventive, not novel, etc. And if a vast majority of people in your profession agree with you!!! Then don't worry about the patent. Breach it as much as you want. If the patent holder dares to challenge you, don't worry. They won't win in court. Their patent has no grounds.
It is major companies that are trying to aquire patents to be able to stop small start-ups. Basically, MS is moving into a defensive posture. That makes sense WRT the article that was written earlier about MS starting to decay.
I prefer the "u" in honour as it seems to be missing these days.
The grass is always greener on the other side of the light cone.
Pointers are such a basic but misunderstood concept. Here is some C basics.
char *p0,*p1;
Treat the value that is held by the variable p0 as an address somewhere in memory.
if(*p0 == '\0') foo();
Check to see if the variable p0 holds the value NULL.
if(p0 == '\0') foo();
if(*p0 != *p1) Retrieves the values of p0 and p1. Treats them as the address of the values to be compared.
if(p0 != p1) Compares the values that p0 and p1 actually hold.
"...if the two point to the same location in memory..."
It looks like MS is trying to patent if(p0 != p1)
Think global, act loco
Sounds like a couple of toddlers fighting to me. Microsoft should grow up.
Oh well, what the hell...
I hereby stake my claim on the IsToo operator which can be expressed as "is also equal to" which applies to all programs, algorithms, song lyrics, and movie scripts which express that something is equal to something but also can be equal to other things and stuff like that. I'll have to direct all further questions to my attorneys.
So why did he participate in a process that he feels is a "bad idea"? I've never heard of employer pressure causing this type of thing. Was it for the bonus? Surely it wasn't to add the patent to his resume, that one might count against him ;-)
I hope I can still do: int *one *two; // mallocs and all
if (one != two)
If a patent is given for this, then it proves that the patent system is truely broken beyond repair.
"We shall party like the Greeks of old! You know the ones I mean." - HedonismBot
What is the value of these patents? They seem to patent lots of stuff that has a long history of prior art. How could they possibly sue another company using their 'patents'?
Doesn't Python do this already? I was under the impression that some == and != comparisons actually tested the address, not the data. I could be wrong, but I thought I read that.
...a patent for making shitty operating system. I guess they'll get one for that and no one will even challenge. Hiya Mr. Gates, try for that one!!!
I have the patent for IsToo... so there... :P
Why aren't we all bitching about Microsofts buffer overflow patent?
#define IsNot(x,y) ((void*)(&(x))!=(void*)(&(y)))
got patented?
Anagram("United States of America") == "Dine out, taste a Mac, fries"
patent the blue screen of death, to end this patent madness,
and see microsoft choking
Just because they applied for the patent does not mean they will get it...
"Who are in control, they are not in control of anything - they don't even control themselves!" - Glen Beck
NAND. You can build any logic operation from only NANDs. If they patent that, they've got us all.
According to Thomistic philosophy, being and good are equivalent. Therefore, not-being is evil. Therefore Microsoft is attempting to patent evil.
Microsoft patents DidTo operator. Experts said that schoolyards everywhere would be likely infringement areas of this amazing Microsoft intellectual property. A spokesman for Microsoft stated that "Microsoft employees are born innovators and often practice their art from an early age." He went on to state that, "Microsoft has been a little slow to protect it's IP. The IsNot and DidTo patents reflect Microsoft's intention to protect both older technologies, as well as future techological innovations as it discovers them."
This time, I guess, Miguel de Icaza should be worried about this patent, if granted, indeed does affect the core of the mono project...
When his defense asked, "Which computer has Jon Johansen trespassed upon?" the answer was: "His own."
Isn't this just a standard feature of C or C++?
given x86 segmentation
&a = &b
could easily be a true statement but still be wrong. because one could be in the extra segment and the other in the data segment.
"A method or apparatus to redundantly have every variable name indicate its type in a strongly typed language."
...
oddly enough the patent included a reference to another patent
"A method of apparatus to search and replace for variable prefixes."
It seems to me that their business model (sell a mediocre version of Unix on highly specialized machines to retailers) wasn't working well...
It's worse than you think. The business model that you describe above is for Sun, HP, DEC (yeah, I know, owned by HP), SGI, IBM, et al. SCO's business model was selling a mediocre version of Unix that ran on standard PC hardware- which they didn't sell. In a modern view, it's essentially like a bad version of Linux.
That's why they're hurting more than the others. Their biggest competition is free, Free, and way better...
Do you have ESP?
Congragulations Mictosoft, you are patenting "not equal". I have yet to see a language with out it.
&foo!=
but id it works for compairing the address, why wouldn't it also work for compairing the values.
foo!=footoo;
It was me, I did it, I moved your cheese
There is an important point here that people seem to be glossing over. This isn't a patent. It's a patent application. There's no guarantee that it will be granted (and I'd say the odds are good it will be denied). I also doubt that this patent is a result of some grand conspiracy inside Microsoft. Rather, it's probably just a part of a routine policy of filing patent applications for every conceivable invention, in the hopes that as many as possible will be granted. That's a pretty standard practice for large companies.
What needs to happen is some reform in the patent office that discourages this type of shotgun approach to patent applications. This patent is unlikely to get accepted, but it still requires the efforts of a patent examiner to determine if it's valid, further clogging the patent office and reducing the amount of time that can be spent examining less obvious patents (which is probably why a lot of the bad patents out there got through).
"If English was good enough for Jesus, it's good enough for everyone else."
I refuse to acknowledge all these silly software patents, and will continue to program whatever the hell I want.
Think of it: it should be easy to convince even a judge that this is an absolutely ridiculous patent claim. So invariably the judge will arrive at two conclusions: (a) this patent is invalid, and (b) the USPTO cannot do a good job. Especially (b) will go a long way in going back to a saner patent system.
I know this is TOTALLY off topic from the article but does anyone remember the origin of "I call shenanigans"? I think it's associated with some game that involves trying to slip in a bluff but I can't remember.
Googled for it but wasn't able to track down anything relevant... though, I was pleasantly surprised to have Google pop up the a cover of the old Human Torch comic.
Some MS-crackhat files such patents and a bunch of open source developers try to figure out what it means and try to stop it. MS wins by having to compete with less open source development that way.
'Tis a sad day for Big Bird and the entire Sesame Street crew.
VB.NET already has a keyword 'Is', which does exactly that. However to execute a code block if 2 references aren't the same, you have to do:
...
... oh darn, I need 'Not' in front of Foo... and you swear and hate VB.NET forever.
... ...
...
...
If Not foo Is Bar Then
End If
Which is apparently too hard to remember for these VB.NET programmers. In a way it's awkward of course, you write as a C#/C++ programmer: If Foo
So VB.NET designers thought... what about an IsNot operator? This really shows their inability to think: Colliding the Not to the Is operator makes it only work for Is. So I still have to write (if I would opt for VB.NET)
If Not A = B Then
End If
which compares to values, A and B and I can't say:
If A Not = B Then
End If
So, now they'll have for value compare:
If Not A = B Then
End If
and for reference compare you'll have:
If A IsNot B Then
End If
Not only is IsNot redundant, it also makes the language fragile. In the If A IsNot B Then.. example, if A is a class (reference type) and I make it a struct, the code breaks. This could have been avoided if they would have made '=' as a comparison operator for ref and val types.
Never underestimate the relief of true separation of Religion and State.
Mind you, if they manage to get it patented,
it just shows how much control they have over the USPTO.
If they can demonstrate publicly this kind of power, it will have a chilling effect on all other developers.
I think they are just doing what SCO tried to do.
Make or break. Except that they are in a better position to make than SCO ever was. Their downside is small and the upside is potentially huge.
It's quite simple really,
If IsNot != != && != != IsNot && IsNot IsNot != && != IsNot IsNot && Chewbacca IsNot a Wookie then your head will explode after you finish reading this tripe.
You're welcome.
IsntReally operator: &a != b
IsQuiteOdd operator: &a & 0x01
IsCircleJerk operator: &a == &b == &c (for languages supporting trinary operators)
IsNameOf: !strcmp(a, "#b")
IsNearly: (abs(a - b) LessThan b/10)
IsHardly: (abs(a - b) GreaterThan 10*b)
IsSucky: a == 0
ItAintSo: a != 0 (for languages with "say" as a keyword)
The possibilities are endless!
--Rob
Towards the Singularity.
Comment removed based on user account deletion
Is-not is not not-is.
"But all your emitter and collector are belong to me!"
I think there is already ample prior art for this.
LISP has had two equality operators for a very long time.
One tests if two objects have the same value. The other tests if they are the same object.
This is not a new concept by any stretch of the imagination.
Of course! That's one of the beauties of the American legal system. You can sue anyone, at any time, for anything, for any reason. I stress the word "any" in my sentance ... there really are no limits. Now, the case will get thrown out of court if it's silly (sue you for 20 cheeseburgers because I don't like your shirt color), but you are ALWAYS allowed to sue somebody.
Ain't the U.S. grand?
> If Not (a Is b) Then (Perform Z) End If
> [0014] Such a language construction is
> ungrammatical, requires more typing and
> violates the philosophy on which BASIC rests.
> It would be helpful therefore, if a single more
> intuitive operator could perform the function
> that the combination of the two operators Is
> and Not typically performs.
Note the "ungrammatical" and "more intuitive". The patent itself declares itself obvious.
Unless the government specifically passes legislation allowing you to sue the government, then you can't sue the government. It's a legal concept called sovereign immunity and is derived from the ancient concept of "the divine right of kings."
Ha, ha! Nobody ever says Italy.
Is so!
Is not!
Is so!
Is not!
Is so!
IsNot!
You're sued!
"It's the height of ridiculousness to say for those 9 lines you get hundreds of millions."
I wonder if MS gets this patent, could they argue that any language that contains the != operator is infringing? I mean when comparing two pointers, the != operator returns whether the two variables point to the same location in memory.
It is perfectly reasonable to say that software patents are the law of the land and that therefore one has to use them for one's business as best one can. That is, however, no excuse for applying for a patent on IsNot. The problem with IsNot is not that it is a software patent, it's that it is ridiculous even among software patents.
Microsoft files several thousand patents a year, but they also have a lot of people working for them in R&D. While they may or may not have an unlimited legal budget, they still have to prioritize like any other company because there is only so much time their employees can spend writing patents.
If IsNot made the cut, then both at the corporate level and for Vick's own work, it must be among the best they can do, and that is frankly not much of a recommendation.
been patented. Software is merely the calling up of functionality provided by the hardware.
There should be NO software patents.
MSBPodcast.com The opinions expressed here are my own. If you don't like 'em... Think up your own stuff.
Time to submarine patent the "Is" operation, that'll show em.
Seriously, I'm happy that Europe (where I come from) is in the process of rejecting software patents it's a patently silly idea.
Dear Mr./Mrs. $my_senator_or_representative,
9 <- this is the number nine. Can you tell it's not the number six? Did you license the capability to tell it's not the number six? I write software. According to United States Patent #20040230959 I am not allowed to determine using my computer that a nine is not a six unless I license that capability from the patent holder.
I don't have to pay money to think, sir/madam, and I don't see why my computer should. Please assure me that something is being done to stop such abuse of the patent system.
-- Matthew Townsend
Direct away from face when opening.
If you want to complain about the patent, then complain about the breadth of the claims, not what the abstract says. Abstracts by their very nature are general.
I now give you <dramatic music> the independent claims! </dramatic music> And remember, you have to have all of the elements of an independent claim to beat it. You may now debate intelligently...
1. In conjunction with an operating system configured to limit access privileges in accordance with defined privilege levels, said privilege levels including at least an administrative privilege level under which a plurality of administrative methods can be initiated and a non-administrative privilege level under which at least one of the administrative methods cannot be initiated, a method comprising:
executing an administrative security process under the administrative privilege level;
the administrative security process accepting a request from a user process executing under the non-administrative privilege level to initiate a particular administrative method, the user process calling the administrative security process with parameters comprising (a) an identification of the particular administrative method and (b) arguments to be provided to said particular administrative method; and
the administrative security process calling the identified particular administrative method on behalf of the user process and providing the arguments to said identified particular administrative method.
15. A computer-readable medium comprising computer executable instructions for execution in conjunction with an operating system configured to limit access privileges in accordance with defined privilege levels, said privilege levels including at least an administrative privilege level under which a plurality of administrative methods can be initiated and a non-administrative privilege level under which at least one of the administrative methods cannot be initiated; said instructions, when executed, directing a computing system to perform a method comprising:
executing an administrative security process under the administrative privilege level;
the administrative security process accepting a request from a user process executing under the non-administrative privilege level to initiate a particular administrative method, the user process calling the administrative security process with parameters comprising (a) an identification of the particular administrative method and (b) arguments to be provided to said particular administrative method;
in response to receiving the parameters, the administrative security process referencing a data store to determine whether the user process is allowed by the administrative security process to initiate the identified particular administrative method; and
the administrative security process calling the identified particular administrative method on behalf of the user process and providing the arguments to said identified particular administrative method if the user process is allowed to initiate the identified particular administrative method.
24. A security system, comprising:
an operating system configured to limit access privileges in accordance with defined privilege levels, said privilege levels including at least an administrative privilege level under which a plurality of administrative methods can be initiated and a non-administrative privilege level under which at least one of the administrative methods cannot be initiated;
a user process that executes under the non-administrative privilege level;
an administrative security process that executes under the administrative privilege level;
wherein the user process requests initiation of a particular administrative method by calling the adminis
I'm an old WordPerfect hound from way back.
MSBPodcast.com The opinions expressed here are my own. If you don't like 'em... Think up your own stuff.
You forget the most humerous part.
Microsoft is patenting an operation which basicly is CMP at assembly level. This means that Microsoft is patenting something they are using obvious prior art to acomplish. Now, if this goes trough, Intel and AMD will have to pay Microsoft royalties, for Microsoft to have an OS on the x86 platform!
As far as patent abuse and patent chaos goes, this is without a doubt the best, the most stupid and most tailbiting shit I've seen so far.
So far, because I don't rule out the possibility that even more moronic things may come up in the future. *sigh*
Not Buzzword 2.0 compliant. Please speak english.
Seems that there is already some official complaints on this patent from Real Software. From the article:s p
"Their patent is only for this operation in BASIC languages. We are the biggest threat to Microsoft in the area of BASIC languages, so there's no other way to read this other than as an attempt to restrict our success," Perlman said.
http://www.eweek.com/article2/0,1759,1767520,00.a
I think i'll patent the word WAFFLE. apparantly i can get away with it.
Except, not in the United States. Ever hear of cases called "X vs United States"? The US doesn't always bring those cases... People can sue the government.
In the United States the people grant the government powers. The people hold the powers. If nothing is written down, we have the right. The US government does not "allow" the public to do things... we instrinsically have the right. However, there must be limits, so we allow the government the ability to curtail rights if we feel it is necessary.
In the US the is no such thing as sovereign immunity. A government "of the people, by the people, for the people" is also punishable by the people.
Wasn't this Apple's failed attempt at making facial tissue more user-friendly? I thought the basic idea was good, but the implementation was lacking. When iSnot zoomed on mouse-over in the dock, it made lots of people nauseous. Besdies, it took forever to scrape the crusties off the iMac LCD panel.
What do you think Apple is doing with all of those old, obsolete G4 cube cases?
Yup, that's right -- they're partnering with Kleenex for a new line of high-tech tissue boxes.
So, who wants to bet that Apple already owns "iSnot", and this is really MS's attempt to copy them again?
Interesting point. Does IsNot just compare pointers or does it compare resulting physical addresses? Unfortunately, the patent app never says. It defines IsNot only as the opposite of Is. Maybe the MS programmers didn't think of that either.
Hmmm.... That doesn't look like an IsNot patent to me. Read the whole thing and then re read the last paragraph. Thats a patent for a BASIC IDE. Looks like it attempts to patent software development...
Zero Sum (don't amount to much). [root@localhost]
There's some genius there actually. You see Microsoft can then run a campaign saying
"Linux IsNot reliable"
"Linux IsNot secure"
etc. and not run into any truth in advertising laws, as clearly Linux and reliable are not the same object.
When the FOSS community comes out to point out that by the same logic
"Microsoft IsNot trustworthy"
Microsoft can sue them into the ground for failing to license the IsNot patent.
Jedidiah.
Craft Beer Programming T-shirts
Don't use the IsNot operator. Make one of your own - I suggest the Ain't operator.
Fascism trolls keeping me up every night. When I starts a preachin', he HITS ME WITH HIS REICH!
I find it peculiar how my post (parent) is currently modded:
30% Funny
30% Overrated
20% Redundant
Funny? Possibly.
Overrated? Possibly.
Redundant? No way! Look:
Redundant -- Redundant posts are ones which add no new information, but instead take up space with repeating information either in the Slashdot post, the attached links, or lots of previous comments. For instance, some posters cut and paste otherwise legitimate comments in multiple places in the same discussion; the pasted versions are Redundant.
No, it's not flamebait, or offtopic, or a troll either.
Microsoft has attempted to patent many things. And many of the patent requests have not only been rejected, they had 0% chance of getting accepted in the first place. If you don't believe me, I would (politely) suggest doing some research.
Linux/Open Source/Anti Microsoft News
I link is worth a thousand complaints, ya know:
Best I could find on google was a link to an old slashdot article mentioning the same...
I don't really care if it is patented or not, but I do have to work on some projects in VB. They day I don't have to write
"if not foo is nothing then"
will be a good day.
I think GNU actually has the prior art:
GNU isNot Unix
DarkMantle I been bored, so I started a blog.
interested in. Move along.
...then they shouldn't waste their time on this IsNot operator.
Give us something really useful. Implement the ComeFrom statement!
If you disagree with me on social issues, then it's pretty clear that you are a narrow-minded bigot.
Patenting the power button on a TV remote? Should RCA patent it so that nobody else can turn off their TVs remotely?
VB6:
Dim str1 As String = "Yes"
Dim str2 As String = "No"
Dim ptr1 As Long = VARPTR(str1)
Dim ptr2 As Long = VARPTR(str2)
If ptr1 <> ptr2 Then
PRINT "Patent law broken?"
End If
The spirit of the law should be investigated in relationship to the patent process. Patents were originally conceived to protect branding and fight fraud. Masquerading as an established brand name is big business as anyone who's ever had the laugh of seeing a "Panisonic" VCR will attest to. Patenting a process, be it mechanical, bioengineering, software engineering or electro-magnetic should not be allowed as any complexity in a process almost always necessitates utilising a process someone else came up with.
Refuted Altruism
Process for determining if an information technology patent inspector is incompetent.
Patent Pending.
1) Prepare a patent application for something that is extremely simple, extremely obvious, already in common use, which is in no way innovative or clever, and is known to just about everybody and their brother in the information technology field.
2) Submit patent application prepared in step 1 above to the USPTO.
3a) If the patent application prepared in step 1 above and submitted to the USPTO in step 2 above is approved by the USPTO then it is conclusively proved that the patent inspector who approved the patent application prepared in step 1 above and submitted to the USPTO in step 2 above is completely and utterly incompetent for the purposes of inspecting patent applications in the information technology field for the USPTO.
3b) If the patent application prepared in step 1 above and submitted to the USPTO in step 2 above is not approved by the USPTO then it is tentatively proved that the patent inspector who failed to approve the patent application prepared in step 1 above and submitted to the USPTO in step 2 above is possibly competent for the purposes of inspecting patent applications in the information technology field for the USPTO and should be carefully monitored in the future.
But I already converted to NEITHER!
(From the Google Cache, couldn't find it on onion.com)
Microsoft Patents Zeroes, Ones
Wikipedia indicates a possible Irish origin.
U.S. App. No. 20040230959
Not that we have rules around here, but shouldn't there be a rule that no story about a patent gets posted without a link to the patent?
"We reject as false the choice between our safety and our ideals." --The American President (20.1.2009)
I have what I hope will be a constructive suggestion for all software engineers who work for large companies that try to patent their work, but are opposed to this in principle:
;-)
When you're asked to participate in writing up the patent application for some 'invention', be sure to supply your legal department with ALL the prior art you know or can find (in WRITING), and be sure to preserve copies of all this correspondence. I believe it would be fraudulent for any corporation to file a patent application without reporting ALL the prior art they are aware of. In most cases, patent lawyers are unfamiliar with all the prior art, and have a vested interest in NOT knowing about it! Nevertheless, if it is brought to their attention, they cannot ignore it (I'd imagine a lawyer could be disbarred for this). It would be legally very risky for a patent lawyer to knowingly fail to document all prior art in a patent application -- I believe it is perjury to do so. The corporation would run the risk that engineers would 'blow the whistle' on this sort of fraud.
By taking this approach, you will not only be protecting yourself, and other members of your profession from the worst excesses of the patent system, but you cannot be blamed by your employer -- prior art is prior art, and it cannot be wrong to report it, since it is illegal to file patent applications without disclosing all relevant prior art. You are simply assisting your company with creating a *high-quality* patent, not directly obstructing their efforts to do so
In this particular example, the 'IsNot' patent application could have easily been torpedoed by simply reporting to Microsoft legal that an identical feature already existed in Python, Algol 68, and several other languages. Had you done this, you could have avoided the shame of putting your name as an 'inventor' to this bogus patent application.
If we, as a profession, all make painstaking efforts to document the ways in which our work is UNORIGINAL, we will be better able to protect our right to program freely in the future.
Of course, none of this is meant to distract from the need to achieve a political solution as well -- software patents must be abolished! It's a useful stop-gap measure that we can ALL practice now, though.
Actually, I believe that you _can_ sue the US government, but you need to be given permission. No joke. A Google search will find examples, I'm sure.
I'm going to go out and patent IsToo. Let the childish arguments begin!!
Hey! What're you guys doing to my network connection? HEY! That's MY computer. HEY!! Whaddya mean I have the right to remain silent? I donaaf[paqt4p3890jsdgxbc s.dfg;lserg.....
Connection closed by remote host.
As of today in the European Union there are no software patent laws. But MS and other major corporations are actively lobbying for introduction of software patents in EU. You can help fighting this madness by giving your support to the Foundation for a Free Information Infrastructure http://ffii.org/
Isn't iSnot already patented by Apple?
So, who's going to file for "isToo"?
--- I wish I could hear the soundtrack to my life. That way I'd know when to duck.
It took three people to 'invent' something that everyone already knew about?
See here for a whole discussion from December 2001 and here for a suggestion for an IsNot operator dated January 2001. The patent application was filed in May 2003. Anyway this application is just funny and I hope it'll be granted just to watch the effect.
echo "ThisIsNotRight IsNot ThatIsNotRight" | sed -e 's/IsNot/!=/g'
This!=Right != That!=Right
echo "ThisIsNotRight IsNot ThatIsNotRight" | sed -e 's/\<IsNot\>/!=/g'
ThisIsNotRight != ThatIsNotRight
Note that \< and \> indicate the start and end of a word. On some systems you can also put 's/\bIsNot\b/!=/g'.
Except that your "Is" is nothing more than "IsNot IsNot", which is infringing on Microsoft's innovation. You lose.
My beliefs do not require that you agree with them.
Sounds like a childish argument.
Is not,
Is too,
Are not,
Are too.
Bill, go sit in the corner again! Put this cone cap on your head (says "Dunce" for our younger readers).
Can I? Please!
The primary goal of the IsNot patent seems to be to sow some FUD. Even if IsNot is thrown out of court there's going to be that horrible nagging feeling that if you don't use MS products you're going to expose yourself to problems.
Engineering is the art of compromise.
Comment removed based on user account deletion
Well, AC, I may agree that we should have the right to sue the government - I'd have to think about that some more. The fact of the matter is that we generally don't. I say generally because there are many special cases where people sue the government for breech of rights, etc. In general though, if a local, state or federal government does you wrong, you don't have any rememdy in the courts unless it falls under one of many exceptions.
Ha, ha! Nobody ever says Italy.
Or, in Slashdotese:
"Slashdot has it's priviledges."
What is a priviledge, anyway? Is it an outhouse on a cliff edge?
See my reply to the previous post in this thread. In short, there are many cases where you can sue a local, state or federal government, but they all fall under one of many special cases. In general, you can't sue the government for a wrong against you, even if you could sue another party for that wrong. Search Google for "soverign immunity" to learn more about the legal doctrine.
Ha, ha! Nobody ever says Italy.
Click here for more info on the topic.
Ha, ha! Nobody ever says Italy.
IsSo, IsNot, IsSo, IsNot, ...
And did you exchange a walk on part in the war for a lead role in a cage? - Pink Floyd.
Common Lisp has a number of equality operators (eq, eql, equal, equalp, =) which are subtly different. CL differentiates among objects that are equal in type and value, equal in value regardless of type, are identical, or some combination of these.
Base score: 1.
First mod: Overrated. Total: 0.
Next mod: Overrated. Total: -1.
"Overrated" down to GNAA levels, without ever having been rated up in the first place? What is this, pre-emptive overrating?
Two separate moderators were worried that some future mod might potentially mod it as "funny", or something?
Bleh.
I honestly think Americans needs to fix things in their country. With patent applications like these... Lets just say if I had a Weapon of Mass Destruction, I know where to use it. Fuck man a Turing Machine is a Turing Machine and 90% of the possible uses of one can't be limited by patents, else I'll patent the bloody Turing Machine. Is the USA in the Darwin Award race or what ?
I don't know, I'm more than happy to associate the concepts of Microsoft and IsNot together. Microsoft 'IsNot' my software provider of choice, Microsoft 'IsNot' able to produce reliable, well tested software, Microsoft 'IsNot'...
The article "GOTOs considered harmful" by Dijkstra (1968) was perhaps the first article about programming structure (stick with me here).
There was a bit of discussion.
Anyway someone duly wrote an article on removing GOTOs from a language.
They replaced them completely by using COMEFROMs instead.
So anyway, what's the difference between !IS and ISNOT anyway?
You can see the original article at http://w w w.a c m.o r g/c l a s s i c s/o c t 9 5/ (yes, you'll have to remove all the spaces - so you'll have to be keen)
"Cats like plain crisps"
But unfortunatelly, the US patent system is broken.
Computer science is a spinoff of math. Allowing "method patents" in computer science is not exactly the same as allowing math patents, but the situations are very similar.
The difference seems to be that patenting a math method would either be useless or totalitarian -- because patents revolve around commerce and you can't sell a math method, you can only sell something you make with it.
However, in a very real way, computer software is math that you can sell. Uh oh.
On the bright side, I'm somewhat sure that it's still legal to compile any code you can invent, so long as you don't sell it. And excepting DMCA-infringed areas, you can still publish any code you like on the web if it's not blatantly stolen and blatantly complete (i.e. Windows XP).
So as programming languages evolve, and if many users invent or modify the applications they use, perhaps it will become easier to borrow patented methods without exposing oneself to prosecution.
Or perhaps software patents will go away.
After following one of those Apple patent links, I wanted to see some of the images relating to the patent so I clicked on the images button. My browser told me I needed a plugin... for Apple Quicktime!
I'm from the UK so maybe I don't understand, but I can't see how an organisation such as the USPTO could justify using such proprietary technology for something as simple as displaying images. Or perhaps someone over there can enlighten me: is the USPTO actually owned by Apple, Microsoft and a few other corporations?
Actually, to be fair, the current company called "SCO" is the company that was called "Caldera"; their business model was Linux, and while they ruffled feathers in the Linux community, the Caldera Network Desktop was one of the first attempts to be "Linux for the business user." It was when the principals of Caldera left the company and the new CEO came in that they got their new sue-everyone business model. (I originally wrote "principles of Caldera," but one could argue they left the company then, too...)
The company that actually made SCO Unix went through what you describe and saw the writing on the wall, but their choice was to sell SCO Unix and the name to Caldera, then rename themselves Tarantella and sell an application server. AFAIK, they're still around.
> It seems to me that their business model (sell a mediocre version of Unix on highly specialized machines to retailers) wasn't working well [...]
Um, that was another company entirely. That company (after changing their name to "Tarantella") is reportedly doing fairly well. SCO's original business model (back when they were named "Caldera") was: provide a "business-friendly" version of LINUX for the corporate market. And this business model has been remarkably effective for many companies. Nothing wrong with that business model at all. Its only real problem is that is doesn't provide enough of a get-rich-quick scheme to satisfy certain greedy bastards.
.. great ! MS.isNot(good4u) MS isNot isNot evil Windows.isNot(my->cup(OfTea)) more ideas please , need it for the next t-shirt i buy.
I'll tell you what Microsoft IsNot:
Need I go on?
On vit, on code et puis on meurt.
Lawyers, can't live with them, can't shoot them.
"lock-in" is a business strategy that is not limited to nor compulsory for monopolies.
PtrA != PtrB Another amazing Microsoft Technology, I see. I wonder how I could leverage this in mission critical applications to ensure self-healing scalability.
Sometimes at night I imagine the darkness is filled with horrible things with too many teeth, like Julia Roberts.
Be faithful to your obsessions. Identify them and be faithful to them, let them guide you like a sleepwalker. JG Ballard
this isNot good
it isNot on
i isNot impressed @all
if (it isNot BS) then shivers
i isNot happy
These posts express my own personal views, not those of my employer
Anyone that is affected by a patent on IsNot could rename it "aint".
Organization: alphabetical, sometimes numerical or messy
Well for C this is actualy right - C hasn't got reference types. However there are languages where this is not true. C++ and Ada spring to my mind:
// is false
C++:
int a;
int& b = a;
if (&a != &b)
Ada:
a : aliased Integer;
b : aliased Integer;
for b'Address use a'Address;
if a'Address != b'Address then -- false as well
And I am shure there are other languages which allow similar constructs.
Martin
...and the technique of using short-cut for the equality
also has a terminus technicus in the LISP world (because it's useful, but a no-brainer): it is commonly referred to as syntactic sugar. That's all there is to this, sorry Microsoft.The good things is that everybody can actually use the operator because the patent (if granted) won't be upheld in court.
Having said this, everybody please move on now and get back to your source code windows, folks, so that the debate may not adversely affect productivity of the OS community, because after all that's what scares M$ the most and makes them want to protect such no-brainers in the first place. ;-)
--
Access the Web from anywhere with the Nuggets mobile search engine: www.mynuggets.net
The earliest version of Emacs I can lay my hands on dates from 1992. Searching it for occurrences of "(not (eq" reveals lots of hits. One of them (hanoi.el) is from a file last modified in 1987.
So clause 1 of the patent is not novel, and the idea existed widely in the literature and publicly available information at least 18 years before the patent was filed, and quite possibly as much as 42 years.
Perhaps you really need an *atomic* IsNot in some cases (think of concurrency) and perhaps the IsNot operator is defined to provide that (I haven't checked the patent). I don't think the sequence
Not (a Is b)
absolutely guarantees that by the time the Not has been executed, a and b still have the same value thet had when they were evaluated.
Just a guess.