O form é uma parâmetro criado dentro da função mas, só é do escopo da função ou foi "pego" pelo var form que pega o seletor do formulário que tem os campos para digitar os dados no HTML ?
// Formulário para adicionar pacientes
var form = document.querySelector("#form-adiciona");
function obtemPacienteDoFormulario(form) {
var paciente = {
nome: form.nome.value,
peso: form.peso.value,
altura: form.altura.value,
gordura: form.gordura.value,
// calcula a entrada de dados
// função que veio do calcula-imc.js
imc: calculaImc(form.peso.value, form.altura.value)
}
return paciente;
}