Skeleton based parallel programming: functional and parallel semantic in a single shot