Currently it seems that you can only annotate the `this` magic reference by putting the function as a method in a class declaration. However, in the light of the [new bind syntax proposal](https://github.com/zenparsing/es-function-bind), it would make sense to be able to annotate functions that take in `this` as data, e.g. ``` javascript function head (count) { return this.slice(0, count); } [1,2,3]::head(2) // [1,2] ``` could be annotated something like: ``` javascript function head <T> Array<T> -> (count : number) : Array<T> { ... } ```