Programming language design and implementation is awesome and terrifying. I did exactly this for my senior project, a language called [fuga](http://github.com/fmota/fuga) that is based on [Io](http://iolanguage.com/). I learned so much.
But beware. Language design is a bottomless pit from which you must climb if you wish to implement anything.
Allow me to be cynical but, if SOPA passes and breaks the Internet, these software companies would gain a lot. Especially Microsoft. Remember the "good old days" of Microsoft Everything? I hope you're as fond of them as these software companies seem to be.
The paranoid security geek in me says "You know those Microsoft contributions to SAMBA lately? Could they go for a takedown order of the open source project on the allegation of copyright infringement now and make the SAMBA project fight to get their domain back?"
The cynic in me says that Microsoft's contributions are a subtle sabotage. Back in the day, Samba was incredibly easy to configure as a domain controller with full UNIX account sync. The latest Samba now requires the creation and maintenance of an actual Windows registry, a separate account system, etc.
Microsoft contributed the code under "GPLv2 or later", despite samba being under GPLv3.
GPLv2 does not contain the explicit patent grant that are part of why GPLv3 was created. And I very much doubt the courts will consider "or later" to include the patent grant.
The code in question seems very peripheral (something about using Firefox for configuration), and have received zero comments on the developers list. I would be very surprised if Microsoft had any other motivation for the release, than to make the engineer who worked on it happy.
However, it is probably not an accident that they choose the version of the GPL without a patent grant.
It would be interesting to see the implicit patent grant in v2 (remember - you can't grant all the liberties required in the license without granting use - and the right to grant it further down the chain - of any patents embodied in the code) tested in court.
Also, unless I'm very wrong, the terms "GPLv2 or later" means you can use the software under v3 if you prefer to use it that way. The only way to block the explicit patent grant (but stay will the implicit one) would be to license it under plain v2.
Isn't that why we're here? I see no reason why this isn't possible (and as fast and scalable as it might be imagined) given the right serendipity of technology. Now that I think about it, weighting it for a set of countries say on a scale of 0-3 should be fairly easy and would probably fit into the :sort option provided after some tweaking.
It depends on your platform AND on your compiler, so just saying "Windows 64" isn't enough information. Conceivably, there are compilers for "Windows 64" such that sizeof(int) == 8.
Your point (that int isn't a qword on all 64bit architectures) still stands. But your statement is potentially incorrect.
The OS ABI basically defines what the compiler will do. While it's possible to run a compiler in ILP64 mode on Windows 64, you won't get too far if you try to pass a 64-bit integer >4^32 into a Windows system call.
... or pass any 64-bit integer. Windows API calls are mostly "stdcall" and use stack for parameter passing - pushing 8 bytes instead of 4 could be disasterous in many ways - especially considering that the callee cleans the stack in this case.
There is no stdcall/ccall distinction on 64-bit Windows, there is only one ABI convention that sadly uses a different set of registers for parameter passing than Linux. Only the first four parameters uses registers, the rest is passed on the stack.
Fixed that for you.