Como criar um vetor de funções?

Eu gostaria de criar um vetor de funções usando uma função de dois agruments 'func', por exemplo, esta:

func = function(number, coefficient) {  
     return(coefficient*number)  
}

aqui está como eu crio o vetor de funções:

vector_of_functions = NULL  
for (i in 1:4) {  
     vector_of_functions = c(vector_of_functions, 
                             function(number) func(number=number, coefficient=i))  
}

Meu problema é que todas as funções que compõem meu vetor são as mesmas, mesmo que tenham sido criadas usando diferentesi através do loop. Parece que eles são avaliados usando o último valor dei (que é uma variável global aqui).

Alguém tem uma ideia?

questionAnswers(1)

yourAnswerToTheQuestion