This T-shirt claims that “Under extreme stress, an octopus will eat its own arms.” According to Wikipedia, this is a “common belief”, though I'd never heard of it. I'm suspicious.
The Internet, incidentally, is all about self-actualization. Depending on my mood, this strikes me as either dumb or moderately profound.
Good Lisp compilers, I'm told, do fancy escape analysis on closures, so they can detect when the upward funarg problem doesn't occur and in those cases stack-allocate the captured variables. Nice one. In Python, by contrast, all captured variables become heap-allocated “cells”. I hear SpiderMonkey still keeps the whole activation record alive. I had thought that practice was long dead; I know I've seen it characterized on Lambda the Ultimate as “stupid”.
I knew this was there somewhere. In
commandscommand lets you specify debugger commands that run when a breakpoint hits. For example, you can have
gdbprint some variables and continue. Useful.
set scheduler-locking onprevents other threads from running while you're stepping in a thread. Not available on all platforms, apparently; but this is the only sane way to debug a multithreaded program.
thread apply allruns a debugger command on every thread in the process you're debugging. I have yet to use it without crashing
Even in a very simple 3D model, physics is very hard to get right. I think faking it using an easing function would get better results. Kind of sad.
...and more about static single assignment form, but I have much more to read there.