Uma coisa a se ter em mente ao usar obj.func ...
no LiveScript é que sua semântica é pegar o objetoobj.func
e chamá-lo usando o mesmo contexto e argumentos da função atual.
Pode ser tentador vê-lo como algum tipo de macro que passa por argumentos, mas na verdade é compilado obj.func.apply(this, arguments)
.
Portanto, se você deseja chamar a função como um método no objeto obj
, é necessário usar a sintaxe de ligação obj~func
.