what's the purpose of compilation here? it seems unnecessary.