Toward using higher-level abstractions to teach Parallel Computing Academic Article uri icon