Ответ 1
От Expressions в разделе "Язык быстрого программирования" (выделено мной):
Выдержка для закрытия...
Выражение замыкания может явно указывать значения, которые оно захватывает из окружающего пространства, используя список захвата. Захват список написан как список, разделенный запятыми, окруженный квадратом скобки, перед списком параметров. Если вы используете список захвата, вы также должны использовать ключевое словоin
, даже если вы опустите параметр имена, типы параметров и тип возвращаемого значения.
Пример:
{
[weak arg1, weak arg2] in
// ...
}