¿Cuál es la diferencia entre una subrutina y una función? [duplicar]
Posible duplicado:
¿Cuál es la diferencia entre una "función" y un "procedimiento"?
Busqué en línea una respuesta a esta pregunta, y la respuesta que obtuve fue que una función puede devolver un valor, modificar un valor, etc., pero una subrutina no puede. Pero no estoy satisfecho con esta explicación y me parece que la diferencia debería ser algo más que una cuestión de terminología.
Así que estoy buscando una respuesta más conceptual a la pregunta.