Recent submissions

Comment · 10 years ago
"In reality" means that the working set of memory and time complexity on solving Chess (let alone Go) is vastly too large for computers now and in the future. I don't get why you tacked on computers beating grandmasters/9-dans, since that has nothing to do with solving the game.

Oh you added something on the end. Well, augmenting a human brain doesn't change the search space of solving Chess and Go (especially Go). You may be underestimating how large those problems are.

Comment · 12 years ago
They're calling the Int 3 debugger instruction, I believe:

http://en.wikipedia.org/wiki/INT_%28x86_instruction%29

I'd prefer to see this either with inline assembly, or using __debugbreak() (and variants for other compilers). I'd say it's a deref because many compilers don't generate inline-asm for 64-bit skus. This makes the instruction always emitted, and then 64-bit platforms ignore it. But not always (recent claims say it works: http://stackoverflow.com/questions/3634124/where-did-int-3-g...).

Comment · 14 years ago
I don't get your reasoning (mainly because all you've provided none). I wrote games, we used Boost heavily, on the PC, Xbox360, DS, Wii and PSP. I mean really heavily. Boost.Thread, Boost.SmartPtr, Boost.Bind, Boost.Function, Boost.MultiSet, Boost.Array, Boost.PreProcessor, Boost.LexicalCast... (more)...

We turned off exceptions (BOOST_NO_EXCEPTION) because the Wii and the DS didn't support exceptions. That was it. We never had a problem with spurious assertions, nor with unexpected behaviour from a lack of assertions. Compile times were about 5 to 7 minutes for partial builds. A full build was longer (I forget), something like 15. This is a huge code base, remember.

I honestly have no idea what you're talking about. It's certainly not a "general rule of thumb".

Comment · 15 years ago
That is a different and far easier question. Try and work out the stated question, "heavier or lighter".
Comment · 15 years ago
Well you've clearly never had to worry about memory paging and the cost of indirection, like I have (actually from memory I think you must have at some point?). The difference is real and significant. Try writing a particle system using a linked-list over a vector, the speed difference will be crippling. I really feel that most of the hatred for C++ stems from people not understanding why such complexity exists in the language.
Comment · 15 years ago
It also means running out of breath from doing too much.

Curiously, in my karate dojo, we are taught to learn to fight whilst being winded - as in, having the wind knocked out of you.

Comment · 16 years ago
It depends on which dojo you train at. In our (Shotokan) dojo, every couple of lessons or so, someone will ask "but that's illegal in a tournament, right?", to which our sensei laughs and says in a real fight there's no such rules. We are taught to end any fight in one strike. We are taught to destroy the three weak areas of the human body (can't fight if you can't see, can't fight if you can't breathe, can't fight if you can't walk). We're also taught judo, because most fights end up on the ground. We're taught a wide variety of self-defence moves, most of which end with us taking a joint or two or theirs.

I'm sure there's plenty of Shotokan dojos that don't have such a good sensei though. YMMV.

Comment · 16 years ago
Also, the Greens are gaining like crazy right now. Probably for two reasons: One, before about 4 years ago, there was 13 years of Liberal government (once again, they are capital-L Liberals, not lowercase-l liberals). And then the "left" party came into government, and it turns out that hey, they're actually centre-right. I mean they're actually centre-right. They're not left at all, not on the economy (which I'm okay with), and not on moral issues (which I'm less okay with). So the greens are picking up voters that wanted a more progressive government, and whom voted Labor, and whom were then disappointed. The Greens picked up a seat in the Senate, are polling about 15% in Victoria for the State elections. So they're becoming influential at the expense of Labor.
Comment · 16 years ago
Yes, that's fair for the PC (I was aware of this for the PC, which is why I said exceptions don't really matter on the PC). But (from memory) I don't believe the Xbox allows for this, even though it uses a very similar variant of the same compiler. It's a moot point, though, for all the other reasons I mentioned. When you've got a cross-platform codebase - and there are precious few platform-exclusive codebases these days - it is far easier to turn exceptions off across the board than deal with individual platform's quirks.
Comment · 16 years ago
You're making two mistakes: One about how exceptions work, and another by not considering our constraints.

Exceptions don't just add an overhead when they're thrown, they add overhead for every function call. How else would the exception-handling runtime know to unwind the stack to the correct addresses? It is this performance degradation that we avoid. Why? For the PC, it doesn't really matter. The XBox360 doesn't handle the performance hit very well. The compilers for the Nintendo DS (edit: and the Wii) don't even support exceptions, and the PSP is so crazily architectured that things like floating point numbers or exceptions can cause a framerate to drop from 300 to 12. I've not worked on the PS3. You must understand that these consoles and handhelds are designed very differently from PCs, and are never as powerful.

We do check for errors, we just stay away from exceptions. And dynamic casting, when we can (the DS does a freaking string compare against the vtable!).

Comment · 16 years ago
But then you'd have some of the population calling themselves a collection of humyn.

Back on topic: I still find both 'nerd' and 'geek' to be offensive. Although I don't find "geek chic" to be offensive... probably because it has never been associated negatively - it has always been a label for a particular style, which in itself carries no meaning.

Comment · 16 years ago
Comment · 16 years ago
My first, my very first C++ project, started in Year 9 - coming from VB6 - was a 3D graphics engine. Yeah, that failed. It failed 5 times (fun fact - the fourth rewrite occurred moments after exclaiming "oh those are references!"). But the 6th one was pretty neat! I'd written a file-loader for 3D Studio Max, an event system, input, etc. The seventh rewrite would have gotten rid of the hardware T&L and used shaders instead. I was in Year 12 by then. Then I went to uni, studying CS, and afterwards got a job at a video games company, implementing a 3D graphics engine.

Honestly, sometimes you just have to do it, even without any training. Maybe do it six times.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton