Qu'est-ce qu'un langage de programmation Scheme?

Scheme est un langage de programmation qui est une variante de Lisp. Il a été créé en 1975 par Guy Steele et Gerry Sussman au laboratoire d'Intelligence Artificielle du MIT. C'était le premier dialecte de Lisp qui nécessitait que ses implémentations fassent appel à l'optimisation des appels en queue, en insistant particulièrement sur la programmation fonctionnelle et les algorithmes récursifs.

Le langage de programmation Scheme utilise une philosophie de conception du minimalisme, spécifiant un petit noyau standard et fournissant des outils puissants pour étendre le langage. Il est largement utilisé dans les organisations éducatives et scientifiques, en particulier dans le domaine de l'IA. Les programmeurs qui écrivent dans Scheme sont appelés "Schemers".

La syntaxe du schéma est très similaire à celle de Lisp. Il est basé sur les expressions s: des listes entre parenthèses dans lesquelles l'opérateur vient en premier et les opérandes suivent. Par exemple, l'expression "3 plus 4 fois 5" est écrite sous forme de schéma sous la forme (+ 3 (* 4 5)).

Comme Lisp, Scheme utilise le mot-clé lambda pour représenter des fonctions anonymes. Par exemple, l'instruction (lambda (xy) (+ xy)) représente une fonction anonyme qui ajoute deux nombres.

Autres caractéristiques notables

  • Portée lexicale - les liaisons de toutes les variables dans Scheme sont déterminées par l'unité de code dans laquelle la variable apparaît.
  • Un espace de noms partagé pour les variables et les procédures - les mêmes primitives utilisées pour les variables peuvent également être utilisées pour les procédures et les fonctions.
  • Un ensemble complet de types de données numériques.
  • Évaluation différée, qui permet la mise en œuvre de techniques de programmation asynchrones telles que les promesses et les contrats à terme.
  • Macros hygiéniques - un système de macros qui permet au programmeur d'étendre les fonctionnalités du langage sans interférer avec la syntaxe native du langage.
  • La possibilité d'évaluer nativement son propre code.
  • La possibilité de redéfinir les procédures et les fonctions standard.

Bonjour le monde! dans Scheme

 (affichez "Hello, World!") 

  • Comment créer un programme informatique?
  • Histoire du langage de programmation.

Lisp, MIT, Langage de programmation, Termes de programmation