The way I understand scope as of now, from narrow to large.
var is a local variable, within method,
@var is a instance variable, within class, changed locally
@@var is a class variable, within class, changed globally
attr_accessor, attr_reader :, within module (inter classes)
$var is a global variable, within entire program (do not use).
Would have been nice that
attr_ be @@@,