compile applied union and intersection types ceylon/ceylon-js#355