Импорт классов и функций

Часть 2

Конечно же, хотелось бы наличия операторов, вроде using, use, import, но увы - реализовать подобные можно лишь на уровне самого препроцессора, но никак не на уровне языка. Но в случае CoffeeScript, оказывается, есть некоторые свойства самого языка, позволяющие реализовать импорт почти что красиво:

P.S. На всякий случай хочу напомнить, что эта статья 2014го года и на момент дополнительной редактуры прошло более двух лет. Просто используйте CommonJS + ES6, там есть import.

{Any} = MyApplication.Some # Импортировать MyApplication.Some.Any под именем Any
{Any: Test} = MyApplication.Some # Импортировать MyApplication.Some.Any под именем Test

эти операции аналогичны, допустим use в php:

use MyApplication\Some\Any;
use MyApplication\Some\Any as Test;

Подобное поведение конечно же задокументированно (пункт: "Destructuring Assignment" пример №3 в оф. документации), но, если честно, я очень сильно удивился, когда заметил подобную конструкцию в чьём-то коде. Когда читал документацию - просто не заметил этого.