Skip to content

MOOC NSI - fondamentaux.

Transcription de la vidéo

2.2.6.5 : Autres paradigmes de programmation

Il existe de nombreux autres langages qui n’entrent pas parfaitement dans l’une des catégories « impératif », « orienté-objet » ou « déclaratif ».

L'entrée Paradigme de programmation, section Autres_types de wikipedia donne des dizaines de paradigmes différents.

Citons en particulier

  • la programmation événementielle où un programme sera principalement défini par ses réactions aux différents événements qui peuvent se produire (Par exemple, TcL/Tk gère un tel paradigme)

  • la programmation concurrente où plusieurs processus (appellés threads, ou tâches) s'éxécutent en concurrence, donnant lieu à de nombreux problèmes informatiques complexes dont les célèbres problèmes d'interblocage et de famines

De nombreux langages dédiés (domain-specific languages en anglais) sont conçus pour répondre aux contraintes d’un domaine d'application précis.

On peut citer, comme simple exemple parmi beaucoup d’autres :

  • Les langages de requêtes comme SQL

  • Les langages de script comme Perl, Raku, Ruby, Lua, Tcl/Tk

  • Les langages d’analyse statistique comme R

  • Les langages de calcul numérique comme MATLAB ou Mathematica

  • Les langages de calcul formel comme Maple, Maxima, Reduce, Derive

  • etcetara

Notons enfin que souvent les langages sont multi-paradigmes:

ainsi Python est un langage impératif, orienté-objet et permet une certaine programmation fonctionnelle.

Si l'on regarde l'ébauche d'article : Comparaison_des_langages_de_programmation_multi-paradigmes sur wikipedia,

10 paradigmes sont cités pour Python

Le langage Julia en a plus de 17 !