Modular GPU Programming with Typed Perspectives | AMiner