Вы можете проверить документацию для любой функции Julia, нажав ?
, чтобы перейти в режим справки, см. Вывод ниже:
help?> @.
@. expr
Convert every function call or operator in expr into a "dot call" (e.g. convert f(x) to f.(x)), and convert
every assignment in expr to a "dot assignment" (e.g. convert += to .+=).
If you want to avoid adding dots for selected function calls in expr, splice those function calls in with $.
For example, @. sqrt(abs($sort(x))) is equivalent to sqrt.(abs.(sort(x))) (no dot for sort).
Описывая вышеприведенную документацию другими словами, @.
позволяет векторизовать все вызовы функций в выражении, следующем за макросом.
Если вы не уверены, как работает какой-либо макрос Julia, я рекомендую использовать макрос @macroexpand
, например:
julia> @macroexpand @. [1, 2, 3] + [4, 5, 6]
:((+).([1, 2, 3], [4, 5, 6]))