AngularJS: Como faço para criar controladores em vários arquivos

Eu estou tentando dividir meus controladores em vários arquivos, mas quando eu tento registrá-los no meu módulo estou recebendo um erro:

groupcontroller.coffee

app = angular.module('WebChat', []);
app.controller 'GroupController', ($scope) -> 

usercontroller.coffee

app = angular.module('WebChat', []);
app.controller 'UserController', ($scope) -> 

Erro

Erro: Argumento 'GroupController' não é uma função, foi indefinido

Da documentação eu realmente não entendo o que o método do módulo faz de qualquer maneira. Armazena meu controlador com a chave 'Webchat'?

Editar: Também parece que passing [] cria um novo módulo e sobrescreve o anterior

app = angular.module('WebChat', []);

Para evitar isso, você tem que deixar de fora o [] como

app = angular.module('WebChat');

questionAnswers(4)

yourAnswerToTheQuestion