Programming Support Innovations for Emerging Distributed Applications