title: Reasoning for Language-Required Variable Name Prefixes
body: <p>The browser-based software <a href="http://www.sciencetrax.com/studytrax" rel="nofollow">StudyTRAX</a> ( <a href="http://wiki.studytrax.com" rel="nofollow">http://wiki.studytrax.com</a> ), used for research data management, allows for custom form and form variable management via JavaScript. However, a StudyTRAX "variable" (essentially, a representation of both an element of a form [HTML properties included] and its corresponding parameter, with some data typing/etc.) must be referred to with <code>#&lt;varname&gt;</code>, while regular JavaScript variables will just be <code>&lt;varname&gt;</code>.</p>
  
  <p>Is this sort of thing done to make parsing easier, or is it just to distinguish between the two so that researchers who aren't so technologically-inclined won't have as much trouble figuring out what they're doing? Given the nature of JavaScript, I would think the StudyTRAX "variables" are just regular JavaScript objects defined in such a way to make form design and customization simpler, and thus the latter would make more sense, but am I wrong?</p>
  
  <p>Also, I know that there are other programming languages that do require specific variable prefixes (though I can't think of some off the top of my head at the moment); what is/was the usual reasoning for that choice in language design?</p>