diff --git a/src/littleparsers.js b/src/littleparsers.js
index <HASH>..<HASH> 100644
--- a/src/littleparsers.js
+++ b/src/littleparsers.js
@@ -173,8 +173,9 @@
     LittleParsers.prototype.variable = function () {
       var _this = this;
       return this.cacheDo("variable", function () {
-        var v = _this.regex(/^[a-zA-Z_$][a-zA-Z0-9_$]*/);
+        var v = _this.regex(/^[a-zA-Z_$@][a-zA-Z0-9_$]*/);
         if (v === 'self') return 'this';
+        if (v[0] === '@') return 'this.'+v.substring(1); //@foo -> this.foo
         return v;
       });
     };
"@foo" compiles into "this.foo"