Oracle Seeks $9.3 Billion For Google's Use Of Java In Android (computerworld.com)
angry tapir quotes a report from Computerworld: Oracle is seeking as much as $9.3 billion in damages in a long-running copyright lawsuit against Google over its use of Java in Android, court filings show. Oracle sued Google six years ago, claiming the search giant needs a license to use parts of the Java platform in Google's market-leading mobile OS.
The two companies first went to trial in 2012, but the jury was split on whether or not Google's use of Java was protected by "fair use." Now they're headed back to the courtroom for a new trial scheduled to begin May 9, where Oracle's Larry Ellison and Google's Eric Schmidt will be present. Currently, the sum Oracle is asking for is about 10 times as much as when the two companies went to trial in 2012.
That's more than they paid for Sun in total. (Sale price was $7.4 billion).
"First they came for the slanderers and i said nothing."
in other news, indonesian, island of java is going to sue both oracle and google.
and are coffee producers entitled to some that loot too? think of all the coffee that is needed to code. but what about tea?
I am fully aware that the law suit is a bit more complex than simply using Java in a product, but I still think that Oracle is sending a weird signals to their existing and potential customers:
"Feel free to use our products for free but if you get successful we will sue you to get a piece of the cake."
I miss Sun!
By all means, Go big.
Happiness in intelligent people is the rarest thing I know.
Ernest Hemingway
Second trial always favors the defendant. They knows the plaintiffs strategy and what influenced the jury.
I'd pay $9.3 Billion to kill Java.
By any reasonable measure the $8.8 billion of damages attributed to Google's profit from Android is beyond obscene and unreasonable. Which means it must have been calculated from the same formula that Oracle uses to rape their database customers with.
It all sounds so familiar. Why would that be? Oh yes. Oracle is a purveyor of databases software. The SCO Group used to be a purveyor of operating system software. However, it eventually upped its claims against IBM to at least $5 billion. Not far short of Oracle's demand for $9.3 billion. Where is SCO now?
http://www.groklaw.net/pdf4/IB... ... It started out as a Chapter 11, became a Chapter 7 going back to 2007. These claims are the last, really the only asset remaining of SCO."
"Today SCO is, as the Court is aware, in a LIQUIDATION process
Oracle is threatening to become the new SCO.
Would you recommend a product from a company that is on a path to Chapter 7?
Keep your money and or give it to the poor. Google has lawyers on retainer for this.
If you want to show support, then by all means, send them a nice letter.
Oracle likes to boast about Java being installed on so many devices. And people use Java to make Android software. You'd think they'd be thanking Google instead of trying to mug them.
God spoke to me
Weird... wasn't Java GPL'd at one point (2006-2007)? Oracle does not have a leg to stand on here even if Google were to take the whole stack and redistribute it. They would merely be required to make the source available - which they have done and it has led to derivatives/forks.
But, as Android is built on a Java _clone_ (Apache Harmony, soon OpenJDK) on top of Linux. Oracle's claim is even weaker.
The Christian Right is Neither (Christian nor right). See: Matthew 23, Matthew 25, Ezekiel 16:48-50
...for FLOSS evangelists to convert people to Firebird and PostgreSQL with an ever greater fervor than ever before. And to non-Java languages, of course.
Ezekiel 23:20
Shareholders:
https://finance.yahoo.com/q/mh...
https://www.youtube.com/watch?...
"They knows the plaintiffs strategy and what influenced the jury."
Doesn't exactly the same apply to the plaintiff - that they know the defendant's strategy and what influenced the jury?
"National Security is the chief cause of national insecurity." - Celine's First Law
Why on earth did they copy the Java APIs? Most of them are not particularly good anyway.
Sure the law on this was a little unclear, which is a good reason to stay right away from it. And so easy to do. Not hard to tweak an Eclipse parser for a similar but different language.
Maybe it is because Google got rid of all there MBAs and used engineering management?
Java is available under a GPL + exceptions license. Google should take this GPL code and use it as a base for a new VM. Make whatever changes are required to make it slot in place of their current VM (something the GPL explicitly allows them to do) and start shipping it. The "classpath exception" in the Java license would allow them to keep other stuff (such as Google Play Services, the Google store and all the Google apps) closed source whilst still being in compliance with the license attached to the open source Java code.
Yes it will cost a chunk of money to do all the rewrites and stuff but it would mean Oracle has no ability to claim they violated the copyright of the various Java APIs (since the code that implements those APIs in the new VM would be a derived work of the GPL Java source code (where the license explicitly gives you all the rights under copyright law you would need regardless of whether APIs are actually copyrightable or not)
Please correct me if I am wrong, but isn't a lot of IBM software based on Java . . . ? Like, anything with the name WebSphere on it . . . ? What is going to happen when Oracle tries to shake down IBM . . . ?
Oracle ain't no SCO . . .
Schroedinger's Brexit: The UK is both in and out of the EU at the same time!
Much as I'd hate to donate to a huge corporation like Google (and that is what they are, even if they're not as bad as some other corps), this case is bigger than even them, at least, speaking as a developer. Given the split jury before, I'm not sure that they have what it will take to overcome Oracle, and Oracle badly needs to lose this. I'd be happy to contribute to Google's legal defense for this (and only this) case, but I doubt there's a way to do that. If anyone knows otherwise, I'd appreciate being set straight.
Oracle just wants your money.
Google wants your money - and then to turn around and sell the details of your life for even more money.
Dunno why you think they're "not as bad as some other corps". They're a fucking ad agency and destroying your privacy their product. Between AT&T, Exxon, and Google, Google is the one with a private jumbo jet for their executives.
You like them because they give you free shinys that are really tools Google uses to mine your entire life? "Oooooh!!!! Free SHINY!!!" Gotta wonder what you'd do if you saw a squirrel....
I haven't purchased from Oracle and I don't plan to. Besides this case, I just don't think the cost/benefit ratio is there.
Some will say that you have to pay big bucks if you have a lot of data or a lot of transactions, but Facebook used MySQL (aka MariaDB) to scale pretty large, and they now use Hadoop and Presto to process more than a terabyte each day.
If open source databases handle Facebook and Google , I think they'll be enough for my needs.
That said, Oracle has $170 billion, based on market valuation. It seems they are quite a way from bankruptcy.
I think it's a fairly low number.
What incredible crap java is, barf.
Microsoft is shaking down Android companies harder than Oracle:
http://arstechnica.com/informa...
C# would have been a far worse idea. Fewer developers, libraries, little open source support. Built by the only company more evil than Oracle.
Mod me down, my New Earth Global Warmingist friends!
Or at least publicly shamed :).
Agreed, but the problem is that there is no alternative statically-typed ("compile-y") language out there that seems ready in terms of being road-tested and not too different from other common production languages.
C# is too MS-tied with a similar legal-greed risk, and C++ is too low-level to replace Java and C#.
Object Pascal? Ada? too complex. Eiffel? too much like Pascal such that you might as well go Pascal.
Python, Ruby, Php, etc. are dynamic languages. They have their place, but for certain classes of applications you need a static/strict typed language.
Object-Fortran? :-) I dunno
Table-ized A.I.
C# would have been a far worse idea. Fewer developers, libraries, little open source support. Built by the only company more evil than Oracle.
Surprise! Now you have Xamarin.
Er, I mean Microsoft Xamarin.
Breakfast served all day!
Couldn't Microsoft also sue anyone that tried to copy its big APIs, such as Win32, and DirectX? Couldn't Nintendo sue the creators of SNES9x?
It works both ways, but the Plaintiff's strategy can't really change, they are locked into the arguments they've already made. In civil trials all the evidence that can be presented and all the base arguments and defenses have to be filed to keep the trial as fair as possible. They can certainly fine tune and try to adjust their prior arguments but the best chance for the Plaintiff is to catch the Defendant off guard with a presentation of the evidence that can't be countered effectively. They would have used their best bullets in the first trial and now Google knows what they are and how best to defend against them because of the feedback they got from Jurors of the previous trial.
It's possible that Oracle could find a new "bullet" to use in this trial that is in line with all their arguments up to the trial but the chances are pretty slim or they would have used it during the first trial. You simply don't hold back on your evidence, you expend all your best attacks. They won't catch Google's lawyers off guard with a refinement of those same arguments.
It's a statistically known fact that a second trial always favors the defendant, this is true in both Criminal and Civil trials. The criminal trials even have a freer hand to make completely different arguments and propose new motives where in the civil trial they can't argue outside the prior boundaries they established in the run-up to the first trial. This also limits Google because they can't make defenses outside the ones they proposed but they can and will find evidence to blunt Oracles best attacks and that could swing the next trial into their favor.
C# is too MS-tied with a similar legal-greed risk
Actually C# had already a freer license by the early 2000s. I distinctly remember pointing this out and people dismissing my concerns with Java since back then Sun was one of the good guys.
C++ is too low-level to replace Java and C#.
Modern, core C++ is about as high level as Java and without the JVM overhead. Read up on it. The C++ core as proposed by Bjarne has a good chance of becoming the Java replacement.
I'd pay 20 Billion to kill that shitty Microsoft and their copycat languages like C# - the windows phone of languages.
in their defense, if they had not bought SUN where would SUN be today? In the Tech trash heap, along with Digital Equipment and others. SUN had a lot of assets - great hardware, intellectual property, etc - but they couldn't sell anything.
Oracle, to their credit, recognized this and bought them up. For what seems now like a bargain price. They realized that they had a great database product but didn't have the enterprise applications to go with it. So they bought PeopleSoft and JD Edwards and some other pieces. With SUN they got the hardware and middleware to round it out. Now they have the whole stack.
Oracle was late to the game in Cloud but their combined assets allowed them to ramp up rather quickly. You better believe that Workday and Salesforce are looking over their collective shoulders. Oracle is gaining fast on them and they have the money to outlast either of them.
Go(lang)
Good points.
"First they came for the slanderers and i said nothing."
The problem with Object-Pascal is poor documentation. Also, it has poor unicode support.
Ada is less complex than C++ (calling it more complex used to be true before the STL). But it's default strings are fixed length, and different lengths of fixed length strings can't be compared. And it's difficult to flex in other ways. I like lots of things about it, but for my purposes it's too rigid in too many places.
Eiffel? That's hardly like Pascal at all. But there's only one version that's still doing much development, the documentation is poor. (They've got it, but access is on-line and slow.) I'm not real familiar with the current releases.
You left out D and Vala. Vala is either too undocumented or too undeveloped, I can't tell which.
OTOH, D would be a good choice. It's a low level as you want, but it's also fairly high level if that's what you want. And it handles unicode well. It's problem is a lack easily used libraries (you need to link them in via their C API, and do various parameter translations).
I think we've pushed this "anyone can grow up to be president" thing too far.
It's not the having pointers, it's not being able to avoid them or detect them. I believe that ALL compiler languages have pointers, but many can isolate them, and detect user access to them.
Pointers are fine, and can allow you to do things that are clumsy without them. Not being able to tell the difference between a pointer and an integer is unacceptable. (Well, more to the point, not being able to write code where all the pointer manipulation is provably done via system routines is what's unacceptable. Which you actually can do in C/C++ if you don't use arrays or output parameters. But that's too limited.)
I think we've pushed this "anyone can grow up to be president" thing too far.
Java is the defacto standard for enterprise applications. The vulnerabilities rarely affect how most Java is actually used, they almost exclusively effect the browser plugin and the security manager. They (or really sun) should have made the browser plugin opt in a decade ago.
Didn't Facebook use Cassandra?
Except that The Neverending Story book eventually ended.
I'm looking forward to when Google finally decides to discontinue supporting Java.
Anons need not reply. Questions end with a question mark.
Facebook uses three database management systems, Hadoop, MySQL, and Cassandra. One thing they use Hadoop for is backups of their MySQL.
Facebook doesn't use Cassandra much anymore:
http://www.wired.com/2014/08/d...
They have three database management systems, Hadoop, MySQL, and Cassandra. One thing they use Hadoop for is backups of their MySQL.
Facebook doesn't use Cassandra much anymore. They their Cassandra DB helped jumpstart the NoSQL craze, Facebook soon realized they were wrong - Codd and Date had it right the first time, with the relational model. Now mostly Facebook uses Apache Presto, an SQL query processor that uses Hadoop as storage (much like MariaDB uses various storage engines). Another thing they use Hadoop for is to store backups of their MySQL/MariaDB databases.
So yeah you said four sentences and two are factually incorrect, making the third and fourth sound rather silly. Facebook uses relational databases AND they are open source.
Apple uses Cassandra a bit, though.
Owning a private jet makes a corporation evil??
Golly.
Android would have died without the write-once run-badly-everywhere aspects of Java. Google could have written its own, but it chose to copy Java's APIs.
It's not like there were a lot of multi-platform options out there. Tk/TCL?
Time to pay up, google. Your technical debt is calling.
It works both ways, but the Plaintiff's strategy can't really change, they are locked into the arguments they've already made. In civil trials all the evidence that can be presented and all the base arguments and defenses have to be filed to keep the trial as fair as possible. They can certainly fine tune and try to adjust their prior arguments but the best chance for the Plaintiff is to catch the Defendant off guard with a presentation of the evidence that can't be countered effectively. They would have used their best bullets in the first trial and now Google knows what they are and how best to defend against them because of the feedback they got from Jurors of the previous trial.
It's possible that Oracle could find a new "bullet" to use in this trial that is in line with all their arguments up to the trial but the chances are pretty slim or they would have used it during the first trial. You simply don't hold back on your evidence, you expend all your best attacks. They won't catch Google's lawyers off guard with a refinement of those same arguments.
It's a statistically known fact that a second trial always favors the defendant, this is true in both Criminal and Civil trials. The criminal trials even have a freer hand to make completely different arguments and propose new motives where in the civil trial they can't argue outside the prior boundaries they established in the run-up to the first trial. This also limits Google because they can't make defenses outside the ones they proposed but they can and will find evidence to blunt Oracles best attacks and that could swing the next trial into their favor.
Or maybe Oracle is just hoping to get a jury that isn't split or actively against them?
blindly antisocialist = antisocial
There are a lot of "interesting" languages, but the industry seems to like Java and C# overall. Whether that's "good" or "rational" perhaps is highly debatable, but it seems they struck the right chord in the industry as a preferred tool. I'm not here to debate the "ideal" language from a purely language design standpoint.
I meant only Ada, not Pascal. Complexity is a common complaint against Ada. If you want to label the complainers as "dumb", that's fine, but again I'm talking about what the industry seems to want, not the ideal way to be.
But they still lack the strong typing. The up-front type and reference verification done by compilers is one of the top selling points of compilers, arguably more than speed.
Table-ized A.I.
Android is open source. There actually are non-google Android phones.
Best Slashdot Co
While you're talking crap about Java being a POS, I will say that for many people their first introduction to Java would have been in the late 1990s as a browser plugin, running a shitty applet, which would go something like:
1. Click on link to page with applet
2. Webpage stops responding
3. JVM rumbles to life in the background for several minutes slowly devouring all RAM
4. Eventually a weird looking applet appears with menus and styling completely different from host OS
5. Applet runs like shit
Obviously, this has little to do with Java as a technology or a language, but for "casual" users the impression probably stuck.
> an SQL query processor that uses Hadoop as storage That does not really make sense.
Would it make more sense to say "an SQL query processor which uses ext3 as storage"? The SQL side needs to get and put bytes. Some ways to get and put bytes include:
ext3
NFS
SMB
S3
Hadoop
DB2
Some other relational database.
MySQL/Maria is a SQL client, a library, a SQL parser, a query optimizer, an a network server. MySQL is NOT a data-storage format. Rather, MySQL stores data in any of many available storage engines. One storage engine you are probably familiar with is DB2, one of the best known key-value stores (which also has it's own relational front-end). MySQL can also use CSV to store it's data, deferate to another relational database, or any number of other storage engines, documented here:
https://dev.mysql.com/doc/refm...
It may seem strange that MySQL would use key-value storage or anything other than some custom-made binary format, but if you think about it even if MySQL had it's own required file format, that format lives on ext3, or ext4, or ReiserFS, or ... MySQL doesn't know how it's actually stored. After the filesystem does whatever it does with the data, it's eventually stored in arbitrary flash cells, or phonograph^H^H^H^H^H^H disk tracks, or somewhere else, and MySQL doesn't know which chunk of data ends up where. MySQL chooses to abstract away storage one level higher than the filesystem - it has no required file format. It calls get() and put(), whatever is doing the storage handles things from there.
Presto (https://prestodb.io/) is similar. Presto handles SQL queries. Presto can get it's data bytes from Hadoop to be stored, and can send bytes to Hadoop, just as you might imagine it sending bytes to a disk file.
By using Hadoop as the underlying storage, Facebook can use multiple front ends. Just as a plain text file can be read and changed by Notepad.exe, vim, or MS Word, a Hadoop data store can be accessed from a SQL front end like Presto, as a file system, via MapReduce, or other methods. They can use the right tool for each specific job, with the same underlying data being accessed.
It is my understanding that Microsoft owns Android, else why is it extorting revenue out of the hardware manufacturers.
Which you actually can do in C/C++ if you don't use arrays or output
C/C++ isn't a language. You can't do output parameters in C without pointers. You can pass by reference in C++ and therefore do output parameters without pointers. Also, C++11 made almost all uses of output parameters unnecessary.
SJW n. One who posts facts.
> and then to turn around and sell the details of your life for even more money.
Not exactly. Google's ad model depends on them knowing a whole lot more about your life than anyone else. They don't sell the details of your life, they sell access to you based on their superior knowledge the details of your life, If they sold the details, their knowledge wouldn't be very superior for very long, would it? That's why it actually behooves Google to keep your details secret from their customers and only sell access.
--- Often in error; never in doubt!
C++ has pointers. Bzzt, Disqualified
You really need to read up on C++ core. It deprecates several constructs and adds several safety mechanisms (owner, not_null) some of which are superior to Java in terms of potential errors.
Did anyone from Sun or current Oracle say "So, we had something like that in our hands and wasted it down to bundling ask.com toolbars." when they see anyone with Android in hand? It isn't like Xerox, they never wanted to sell computers or desktops. This must be way more worse than Xerox since they admit their business arm never wanted to sell computers.
As an end user, I saw the potential in Java when I run Think Free office, in Java 1.1 or 2 ages or IBM doing mp4 decoding in browser applet. How could Sun miss it.
- Platform independent binaries?
Java doesn't have them either.
- Garbage collection?
Yup, if you stick to C++ core and use the owner facility you get better garbage collection than Java.
- Parser unfriendly (to say the least) grammar.
Oh puleeeze. No developer cares about this. You are grasping for straws.
I don't code in C# nor Java but most of the people who use both Java and C# love C# and hate Java.
The only real criticism being that it is essentially Windows-only but it seems to open up a little.
If you want to kill Microsoft, kill it for the MFC, or their EEE variants of the web standards. But I think we should keep C# and Visual Studio.
Those silly guys at the FTC sometimes frown on major purchases that allows them to control major sectors of the market.
If something is so important that you feel the need to post it on the internet... It probably isn't that important.
They could have used the CIL.
Support my political activism on Patreon.
I hope not, the decision to force java ruined what could have been a great platform. I realize it's not that simple, but google could be spinning this as "if you use java, expect a lawsuit when your product is successful"
--
Stay tuned for some shock and awe coming right up after this messages!
No, you're simply ignorant of good language design. Java's design is full of problems that a competent language designer could have avoided even in the 1990's: covariant arrays, type erasure, floating point semantics, lack of value types, slow FFI, string handling, bloated libraries, numerous holes in the type system, badly designed concurrency primitives, multiple failed attempts at creating a UI toolkit, and on and on.
That makes 0 sense.
Once Google bought the start up and saw the "crap" that was the OS.... why would they choose to continue on that path instead of scrapping it for something better? It's not like Android had any traction at that time. There are plenty of smart people at Google, I have to believe that they chose to go forward with the Java route for a good reason.
My eyes reflect the stars and a smile lights up my face.
I'd pay $9.3 Billion to kill Oracle.
FTFY
Unity? Screw that: XFCE. Slashdot Beta? Screw that: SoylentNews. Australis? Screw that: Pale Moon. UX developers DIAF
Java has pointers, too; it just doesn't let you mess around with them as much and calls them something different. It's like saying a language doesn't have GOTO...maybe technically accurate, but once it gets compiled basically all logic is jumps when you go down far enough.
Heck, there's even java.lang.NullPointerException.
Unity? Screw that: XFCE. Slashdot Beta? Screw that: SoylentNews. Australis? Screw that: Pale Moon. UX developers DIAF
There is no evidence of that. C# has been standardized by standards organizations and unlike Sun/Oracle, Microsoft has made public legal commitments not to sue. If Sun/Oracle had done the same thing, Oracle couldn't be suing over Java now. Furthermore, there are several open source implementations of C#, some of which don't even use the .NET runtime. C# also lacks several of the serious technical deficiencies of Java, but it's similar enough so that many popular Java packages get ported over quickly.
No spoilers!
No, they don't. They take their own VM that happens to use the same signatures for non-copyrightable API interface definitions as Java and use it as a vehicle to take control of every aspect of your life via Android. There are no winners in the real world if Oracle wins this lawsuit. Say goodbye to interoperability, web services, and the venerable hyperlink, based on the logic Oracle is using in this suit.
"Murphy was an optimist" - O'Toole's commentary on Murphy's Law
Well, there's sloppy or bad programmers out there whether you want that to be the case or not. Languages can protect them from themselves to some degree at the expense of speed/resources by avoiding pointer or pointer-like constructs. That's often considered the more economical choice for domain-specific and custom applications. You can't reboot the human race.
Table-ized A.I.
Oracle seeks ownership of all ponies
Requiem for the American Dream
Admit it... noone wants Oracle to win - even if Oracle's win would benefit everyone (random sample from the set of pretty unlikely events)
Requiem for the American Dream
Why? Because Larry Ellison is not a greedy and corrupt enough of a pig right now. He is trying to become a greedier pig. I say we all dump Java and kick it to the curb.
Paul E. Bahre
In my printed copy of the Lions Commentary on the kernel for the 6th edition of the UNIX operating system, prominent notices of AT&T copyright are near the title pages. In the PDF online, I see "Circulation of this document is restricted to holders of a license for the UNIX software system from Western Electric."
If an API is subject to copyright, then fork(), wait(), open(), and the rest of the happy family of UNIX system calls is thus owned by Bell Labs -> Lucent -> Alcatel -> Nokia.
Nokia has the power to demand 10x Oracle's judgement if this stands.
Once Google bought the start up and saw the "crap" that was the OS.... why would they choose to continue on that path instead of scrapping it for something better?
Isn't that what Chrome OS was supposed to be?
Nice try, Google shill. I can create a compiler that takes standard C files and generates non-standard .obj/.lib/.dll/.o files that don't inter-operate with any other compiler/linker. My compiler is still a C compiler even though it not compatible with other C compilers/linkers/runtimes.
Google needs to discard the "information wants to be free" mantra. That saying is only suitable for cheap-o pirates, not multi-billion corps.
I actually happen to be taking a Java course right now and this news - well it makes me not really want to take Java seriously as a language from now on nor basically want to use anything associated with Oracle, Inc..
One of my main motivations for taking the course was to be able to study Android programming later. I would like to ask you guys a question: Outside of Java, is there any other route to Android programming? My understanding is that Java and Android are inexorably intertwined. I also use custom ROMs and know that when you hear that a ROM is "deodexed" that it means the Java byte code has not been compiled for the apps. It seems like Java pretty much = Android.
Or is there some other way to do Android without Java?
Except that Oracle won almost everything in the appeal. Their APIs are copyrightable, and Google doesn't have a valid interoperability-type argument. The question sent back to the district court is whether Google's use of the APIs falls under fair use or not. Any other possible success for Google would require an appeal to the Supreme Court.
"When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
Your C compiler IS compatible with other C compilers. If we take a normal C program, and feed it into your compiler and also gcc, both will compile it and come out with incompatible object files. Try taking a normal C++ program and run it through two different C++ compilers and you'll almost certainly get incompatible object files, so there's no difference there.
"When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
What would make more sense is to say: the company uses Hadoop for large scale data processing. And use MySQL on that same data for querying. Which I doubt.
That MySQL can use Hadoop, raises the question: for what?
As a block storage like a file in a file system? Or is there some mapping between 'datatypes' stored in Hadoop to MySQL types?
I assume they use Hadoop only as an infinite block device for MySQL.
But thanx for explaining no brainers ;)
Anyway I will research that next WE as it is an interesting topic.
Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
I'm sort of rusty on C++, and I'd forgotten that reference parameters could be output parameters. But if those reference parameters are arrays, then you still don't know that pointer manipulation isn't going on.
I can accept that C++11 makes explicit use of pointers usually unnecessary. (I don't know it's true, but I can accept it.) But the implementation of arrays is such that you can't prove that implicit manipulation of pointers by the user isn't happening if you have arrays. C++ has many features that could be used to eliminate pointer problems, but it's inheritance from prior versions means that you can't know what's happening.
P.S.: In every case a global analysis could certainly show whether dubious practices were happening, so I'm talking about local analysis, where you can't know whether an input integer is or is not a pointer, and you can't know how an output integer is going to be used. This is a problem of "strict typing" or some such, which many languages allow, and some languages allow in all except a few specially marked routines.
I think we've pushed this "anyone can grow up to be president" thing too far.
That was a reasonable argument in the old days, but these days compiler optimizers are, or should be, better than any except a very few programmers who have made a study of system dependent microcode. And that kind of stuff is better handled in assembler, since it's not portable across CPU versions anyway.
I'm not pretending pointers are bad, I'm stating that pointers are senselessly dangerous, and there are better ways. Of course, if the code you're writing is only a page or two long, this isn't a good argument. If you're writing very much code and you depend on yourself never having a fencepost error, or failing to free memory, then I consider that you're in the wrong job. Everyone makes mistakes, and tools that prevent or catch those mistakes are extremely desirable. C and C++ are notorious for memory leaks, array bounds overruns, and many other classes of error that can be automatically prevented with proper language design.
That said, there are cases where C is the appropriate language. (I'm not certain about C++.) Sometimes a sharp knife is the best tool...but it's still dangerous.
I think we've pushed this "anyone can grow up to be president" thing too far.
The SQL front end used by Facebook that uses Hadoop is Presto.
I brought up MySQL as a comparison to explain it since you'd be more likely to have some familiarity with MySQL storage engines.
> he company uses Hadoop for large scale data processing.
> And use MySQL on that same data for querying. Which I doubt.
I'm not sure where they're currently using MYsql - they used to use it for everything. They use Presto SQL for ad-hoc and lower-concurrency queries over petabytes of data. As an example, suppose they want to know what percentage of users have read, but not posted, in the last 7 days, or the median number of photos posted by people with more than 50 friends. Those types of queries are a good match to be expressed relationally, in SQL. On the other hand, "get the user's profile picture " is a very simple operation run tens of millions of times per day. That's a good candidate to optimize by taking the one-time expense of coding direct access, skipping any flexible query engine.
> That MySQL can use Hadoop, raises the question: for what?
As a block storage like a file in a file system? Or is there some mapping between 'datatypes' stored in Hadoop to MySQL types?
MySQL (and Presto) use it somewhere in between a dumb block device and a the strongly-typed datum that the SQL side uses (which may have triggers, domains, etc attached). Typically, the backend provides primarily a key-value store (storing rows), and often indexing. So the storage engine stores rows, rather than bytes (simple) or complex types like datetime and ip_address . That's the typical primary job of the storage engine - MySQL can use very dumb storage engines and very smart storage engines.
So just because Dalvik converts Java source into register-based bytecode whereas the default Java bytecode is stack-based (FORTH-like), that means Dalvik is something completely different from Java? Sorry, I don't think so because the various concepts of references, packages, GC, interfaces, single-parent inheritance etc. are directly copied from Java. Despite the implementation differences, Dalvik is still a derivative of Sun/Oracle's Java.
But if those reference parameters are arrays, then you still don't know that pointer manipulation isn't going on.
There's little reason to use raw pointers for awways though. Mostly it would be a std::vector passed by reference. There's some pointer manipulaton going on internally, but in user code there isn't any.
But the implementation of arrays is such that you can't prove that implicit manipulation of pointers by the user isn't happening if you have arrays.
Indeed, implicit pointer manipulation is certainly happening. That's how std::vector works internally. However, one can put a lot of effort into engineering the library to be bug-free, so that mitigates it a lot.
C++ has many features that could be used to eliminate pointer problems, but it's inheritance from prior versions means that you can't know what's happening.
Yep. Blessing and a curse, that one is.
where you can't know whether an input integer is or is not a pointer,
How so? Integers and pointers are separate types. It's possible to cast one to the other, but you have to be pretty explicit about it.
SJW n. One who posts facts.
Re: How so? Integers and pointers are separate types. It's possible to cast one to the other, but you have to be pretty explicit about it.
That's true for a global analysis, but in a local analysis you don't know that the integer passed in isn't really a pointer or that the integer passed out won't be used as a pointer.
I think we've pushed this "anyone can grow up to be president" thing too far.
That's probably a fair statement of the general sentiment on this case. As someone who has strong feelings on why APIs *should* be non-copyrightable, I can't imagine how Oracle winning would benefit even Oracle, aside from a very short-term cash infusion.
"Murphy was an optimist" - O'Toole's commentary on Murphy's Law
Google is NOT selling Android;
Casteism
This would help Oracle because...
(1) They are attempting to channel all bad feeling in the universe towards their in-house quantum emotion-to-cash transformer. This increases the input non-negligibly and is therefore a win.
(2)...
Requiem for the American Dream