It probably does, it's just an unintuitive interface. Read the explanation on the page by clicking the question mark (or read my explanation here on HN in response to the now deleted comment).
I know, I had trouble with that as well, but then I read the explanations you get if you click the question mark in the upper right corner. I will try my own explanation here.
Type your answer in the box, if you type 2 or more characters, there will be an auto complete list of matches.
If nothing happens when you choose an answer, then it's wrong.
When you choose the right answer, it will immediately switch to the next question.
If you don't know the answer you can click Forfeit or press Esc. To get rid of the correct answer that pops up when you do so and go to the next question, you have to press Esc (I didn't find a way to go to the next answer just by clicking with the mouse).
If you hover that button with your mouse pointer you can read the following explanation:
Send three "heap-minimize" notifications in a row. Each notification triggers a global garbage collection followed by a cycle collection, and causes the process to reduce memory usage in other ways, e.g. by flushing various caches.
That was supposed to be switched on by default in Firefox 22, but Mozilla noticed some issue with it. The feature is there in FF22, but you have to switch it on yourself. If you you want to know more about the issues, you can read what Brendan Eich had to say:
I know that the release notes still says Firefox Beta when I submit this, but my browser just updated itself to version 23. The beta release notes usually are pretty accurate when it comes which features will be in the next stable version.
I believe the new baseline compiler is included in this release as described here:
Well, what kind of book has a collection of recipes? A cookbook, right? :-)
I haven't used any edition of the Python cookbook, but I've used the Perl cookbook and it's just like you described. I have also heard and read that the O'Reilly cookbooks are known (famous even?) for being the kind of books that you described.
I don't think it's regional. I'm in Sweden and if I visit the Flash install page with IE I get Chrome as pre-selected and if I visit with Firefox I get the McAfee add-on. (And when I'm using Linux, as usual, there are no extra applications installed.)
I don't think you should have to do neither convincing the IT department nor refunding them. One part of their organization chose to order the Java applet solution from you and another part of their organization chose to uninstall Java. The fact that they ordered a solution that they can't use isn't your fault. If they want you to use your time to work out a solution with the IT department how the applet can be used securely I think they need to pay you for that time (charge per hour for that, if the IT department is stubborn they have to pay more).
I noticed I got the Swedish URL. I tried to find an international or English URL, but I couldn't find it, I hope you get English text anyway.
When I just visit that page it suggests that I download version 10.3.183.10, but if I choose to download for another OS or browser version 11 is available for Windows, Mac OS X and Linux. 64 bit version for Linux is finally stable.
In the section "Be precise and informative about your problem" of the article there is a link to Simon Tatham's (PuTTY author) "How to Report Bugs Effectively": http://www.chiark.greenend.org.uk/~sgtatham/bugs.html
I've seen several open source projects link to that document as well, so it might be what you are looking for.
> The note is really about the best way to specify a range/sequence of integers, not why we start from 0 as an index.
Dijkstra deals with what index start with as well, but it comes out as a consequence of which bounds to choose for a range, so it's rather short.
From the article:
When dealing with a sequence of length N, the elements of which we wish to distinguish by subscript, the next vexing question is what subscript value to assign to its starting element. Adhering to convention a) yields, when starting with subscript 1, the subscript range 1 ≤ i < N+1; starting with 0, however, gives the nicer range 0 ≤ i < N.
Ok, the PyPy FAQ says: "Yes, PyPy has a GIL. Removing the GIL is very hard. The first problem is that our garbage collectors are not re-entrant."
Is it really necessary for the GC to be re-entrant to run the interpreter in parallel? Couldn't you have the interpreter running in parallel and then when there is a need to run the GC you have a global GC lock that prevents all threads from running - a stop the world GC. The application runs for a longer time than the GC, right? So it would be a win and a step in the right direction? I believe the early Java mark and sweep GC was like that, and then later Sun developed several different kinds of concurrent and parallel GCs.
> Official PyPy Status Blog
Oh I read that every time they write something. :) But I started reading it in late 2010 and I haven't gone back to the archives, I guess it's time to do that. Thanks for the links.
Yes, you are right that the OS can schedule two Python threads to run at the same time, it's just that one of them will only run a few instructions and then block, just not any Python instructions. I hadn't really thought that through thoroughly, thanks for pointing it out.
Ah, I see now what you meant with constant locking. I interpreted your words as "constant" as in happening all the time as would be the case with fine grained locks instead of one long-lasting, global lock.
He's not saying that. He's saying that the GIL isn't a limitation to certain kinds of application, the kinds that Python usually is used for. The kinds of applications where the GIL would be a limitation, Python also has another limitation: slow performance, and performance is usually the reason to run things in parallel.
With PyPy the performance will get better, and they also have a GC, so that hinder is removed. I don't really know if PyPy has a GIL, I would guess that they don't.