I started on this article in June 2005, after being surprised by AppleScript's behavior in several situations. I wrote a few handlers to understand what was going on, discovered some concepts, and just kept going with the article, until it became a the cover article for MachTech's March 2006 issue.
Learning how different types of variables work is an important step for any AppleScripter. Sometimes AppleScript behaves in ways that are unintuitive and often frustrating to those who don't understand what's going on. This article covers AppleScript's data structures and how to use the language more efficiently. Topics covered include: the different types of variables in AppleScript, different ways to append an item to a list, discussions on AppleScript's builtin reference type, and detailed analysis of the different types of copy mechanisms AppleScript provides.
The AppleScript Variables Types article series heavily cites a test script, available on this website. You can download the test script and run the experiments for yourself!