Wow! If VUPEN's "product" has been leaked, then it's not worth as much to their clients. I wonder if they'll disclose the whole lot and go looking for more 0day?
To do so would be meaningless, since arrays already do that.
Fun fact: Java's ArrayList RangeCheck function has had a brutally stupid misfeature for over a decade (yes, I had posted it as a bug -- ignored) which prevented its add(), set(), and get() methods from being inlined. I kid you not.
To wit: these methods all call RangeCheck, which potentially throws an exception, along these lines (here's get(i) in pseudocode):
RangeCheck(i)
if (i >= maxLength) throw exception about i
get(i)
RangeCheck(i)
return array[i]
Until recently methods which threw exceptions could not be inlined. Thus even if get(i) was inlined, you'd still have to call an uninlinable RangeCheck(i) call every time.
This was trivially fixable:
ThrowException(i)
throw exception about i
get(i)
if (i >= maxLength) ThrowException(i)
return array[i]
This has never been fixed. Recent improvements in HotSpot have rendered it moot though, as HotSpot can now inline the RangeCheck call. But for almost a decade ArrayList has been approximately 1/4 the speed it should have been for most common calls.
Intellectual property is something whose use is protected by law. (In particular, the fact that you have to break the law to obtain the information does not make it intellectual property.) These are just secrets, right?
Most things stolen in industrial espionage are either copyrighted or trade secrets, both of which fit within a formal definition of intellectual property.
- free software
- multiple languages and keyboard layouts
- interpreted language for lessons
There is no mention of teaching methods, kid-friendliness, or any other feature that one would use to compare against Mavis Beacon.