Simplifying and fixing bug with form '{Name :: type()}'