Indeed. It comes from programming languages not necessarily being machine code. Machines don't understand the names humans want to assign to data, they understand memory locations and operations on those locations. So programming languages effectively become symbol managers, having symbols pointing to different pieces of data and functions, and having those things strung together in the hopes of creating something useful, or at least deterministic. Scoping is a tool for these symbol managers, and can both help and hinder you depending on how you name/misname your variables.

As for Flash cookies, it's the Flash plugin's way of maintaining stateful information over an inherently stateless protocol.

(edited) #2612, posted at 2011-04-20 18:07:45 in Asked and Answered