saying goodbye to dependent types