Les systèmes de programmation subissent actuellement deux changements profonds que je propose d'appeler la convergence et l’apprentissage. A la différence des améliorations incrémentales que l'on peut observer dans les différents langages de programmation (langages multi-agents, programmation réactive, langages fonctionnels...), ces changements constituent des véritables révolutions qui permettront aux langages du futur d'exprimer facilement des algorithmes beaucoup plus complexes pouvant s’exécuter sur des infrastructures matérielles ayant à leur tour une plus grande complexité.