O que são definições de tarefas gradle em linguagem groovy?

Sou completamente novo no gradle e no groovy e estou tendo problemas para encontrar informações sobre o que realmente está abaixo no idioma do groovy

task myTask(dependsOn: 'compile') << {
   println 'I am not affected'
}

AFAIK the{...} parte é um fechamento que parece ser passado para o que for definido antes<<.

Étask myTask() uma chamada para um construtor?

E qual é a coisa com dois pontos que parece um parâmetro?

O que<< Faz? É um operador que foi sobrecarregado pela gradle ou é groovy padrão?

questionAnswers(1)

yourAnswerToTheQuestion