Conversion de typeEn informatique la conversion de type, le transtypage ou la coercition (cast en anglais) est le fait de convertir une valeur d'un type (source) dans un autre (cible). On distingue trois formes de conversion (dont un seul mérite vraiment le nom de conversion) suivant la relation de sous-typage existant entre les types source et cible : la conversion entre types incomparables ; la coercition ascendante (transtypage vers le haut) ; la coercition descendante (transtypage vers le bas). C'est la coercition la plus ancienne historiquement.
ML (langage)ML (contraction de Meta Language) est un langage de programmation généraliste fonctionnel. ML fut initialement développé par Robin Milner et d'autres personnes dans les années 1970 à l'université d'Édimbourg, pour le système de preuves formelles (LCF). R. Milner rencontrait des difficultés avec le système de typage de Lisp qui permettait de « prouver » des assertions fausses. ML est un langage fonctionnel impur : il est possible de programmer en impératif et, en conséquence, les fonctions peuvent être sujettes à des effets secondaires non désirés (dits « de bord »), contrairement à des langages purement fonctionnels comme Haskell.
Type abstraitEn informatique, un type de donnée abstrait (en anglais, abstract data type ou ADT) est une spécification mathématique d'un ensemble de données et de l'ensemble des opérations qu'on peut effectuer sur elles. On qualifie d'abstrait ce type de donnée car il ne spécifie pas comment les données sont représentées ni comment les opérations sont implémentées. Les types abstraits les plus utilisés sont : arbre binaire conteneur dictionnaire ou tableau associatif ensemble Graphe liste multiensemble pile Union-find Un type abstrait est composé de cinq champs : Type abstrait ; Utilise ; Opérations ; Pré-conditions ; Axiomes.
Late bindingIn computing, late binding or dynamic linkage—though not an identical process to dynamically linking imported code libraries—is a computer programming mechanism in which the method being called upon an object, or the function being called with arguments, is looked up by name at runtime. In other words, a name is associated with a particular operation or object at runtime, rather than during compilation. The name dynamic binding is sometimes used, but is more commonly used to refer to dynamic scope.
Définition d'opérateurLa définition d'opérateur est une fonctionnalité offerte par certains langages de programmation qui permet d'utiliser des opérateurs (comme +, = ou ==) comme des fonctions ou des méthodes en les définissant pour de nouveaux types de données. Les opérateurs ne sont pas nécessairement des symboles. Parfois, la définition de nouveaux opérateurs est autorisée. Il s'agit généralement de sucre syntaxique, et peut facilement être émulé par des appels de fonction ou de méthode : avec définition d'opérateurs : a + b * c ; sans définition d'opérateurs : somme (a, produit (b, c)).
SimulaSimula (Simple universal language) a été créé en 1962 sous la dénomination Simula I par Ole-Johan Dahl et Kristen Nygaard à partir d'Algol 60. Le langage évolua en 1967 sous le nom de Simula 67 en implantant le premier le modèle de classe de Hoare (Record Class, Hoare 1965). Il est donc le premier langage à classes et donc le père de tous les langages à classes tels que Smalltalk, C++, Java, ou encore Eiffel. Il inspira Dan Ingalls dans la conception de Smalltalk qui introduisit la programmation orientée objet.
Objet (informatique)En informatique, un objet est un conteneur symbolique et autonome qui contient des informations et des mécanismes concernant un sujet, manipulés dans un programme. Le sujet est souvent quelque chose de tangible appartenant au monde réel. C'est le concept central de la programmation orientée objet (POO). En programmation orientée objet, un objet est créé à partir d'un modèle appelé classe ou prototype, dont il hérite les comportements et les caractéristiques.
Méthode (informatique)En programmation orientée objet (POO), une méthode est une routine membre d'une classe. Une méthode peut être: une méthode d'instance, n'agissant que sur un seul objet (instance de la classe) à la fois; une méthode statique ou méthode de classe, indépendante de toute instance de la classe (objet). En programmation orientée objet, on utilise parfois le terme spécifique d'invocation de méthode pour désigner l'appel d'une telle fonction d'une classe.
C++C++ est un langage de programmation compilé permettant la programmation sous de multiples paradigmes, dont la programmation procédurale, la programmation orientée objet et la programmation générique. Ses bonnes performances, et sa compatibilité avec le C en font un des langages de programmation les plus utilisés dans les applications où la performance est critique. Créé initialement par Bjarne Stroustrup dans les années 1980, le langage C++ est aujourd'hui normalisé par l'ISO.
Variable (informatique)En informatique, les variables sont des symboles qui associent un nom (l'identifiant) à une valeur. Dans la plupart des langages et notamment les plus courants, les variables peuvent changer de valeur au cours du temps (dynamique). Dans les langages de certains paradigmes, notamment la programmation fonctionnelle, leur valeur est au contraire figée dans le temps (statique). Contrairement à une variable, une constante est un identificateur associé à une valeur fixe. Syntaxiquement, cet identificateur a tous les aspects d'une variable.