<i>It's not entirely our fault, the language was designed to work like one thing (scheme-like), but look like another (c-like).</i><p>The baseless assertion rears its head again. People keep repeating this, and it's not true. JavaScript is not Scheme. It's not any more Scheme-like than Java, C++, Python, Perl, or many other languages. Lua and Ruby are far more Scheme-like than JavaScript.<p>I've commented before on people repeating this statement without ever examining it. I don't want to dredge up the arguments against it again ( <a href="http://news.ycombinator.com/item?id=1171202" rel="nofollow">http://news.ycombinator.com/item?id=1171202</a> ), mostly I just want to whine at it because it's so annoying. Why do you have to make JavaScript seem like something it's not? Are you trying to seem cooler by equating the language you work in to Scheme? What's wrong with JavaScript just being what it is?