Type (informatique)vignette|Présentation des principaux types de données. En programmation informatique, un type de donnée, ou simplement un type, définit la nature des valeurs que peut prendre une donnée, ainsi que les opérateurs qui peuvent lui être appliqués. La plupart des langages de programmation de haut niveau offrent des types de base correspondant aux données qui peuvent être traitées directement — à savoir : sans conversion ou formatage préalable — par le processeur.
Python (langage)Python (prononcé ) est un langage de programmation interprété, multiparadigme et multiplateformes. Il favorise la programmation impérative structurée, fonctionnelle et orientée objet. Il est doté d'un typage dynamique fort, d'une gestion automatique de la mémoire par ramasse-miettes et d'un système de gestion d'exceptions ; il est ainsi similaire à Perl, Ruby, Scheme, Smalltalk et Tcl.
Primitive data typeIn computer science, primitive data types are a set of basic data types from which all other data types are constructed. Specifically it often refers to the limited set of data representations in use by a particular processor, which all compiled programs must use. Most processors support a similar set of primitive data types, although the specific representations vary. More generally, "primitive data types" may refer to the standard data types built into a programming language (built-in types).
Type algébrique de donnéesUn type algébrique est une forme de type de données composite, qui combine les fonctionnalités des types produits (n‐uplets ou enregistrements) et des types sommes (union disjointe). Combinée à la récursivité, elle permet d’exprimer les données structurées telles que les listes et les arbres. Le type produit de deux types A et B est l’analogue en théorie des types du produit cartésien ensembliste et est noté A × B. C’est le type des couples dont la première composante est de type A et la seconde de type B.
Type récursifEn programmation informatique et théorie des types, un type récursif est un type de données dont la définition fait appel au type lui‐même, de façon récursive. Cela permet entre autres des structures de données qui contiennent des sous‐structures du même type. Cette notion s'applique naturellement dans l'étude des listes et des arbres. Type algébrique de données Les types algébriques sont de loin la forme la plus courante de types récursifs. Un exemple classique est le type liste.
Array (data type)In computer science, array is a data type that represents a collection of elements (values or variables), each selected by one or more indices (identifying keys) that can be computed at run time during program execution. Such a collection is usually called an array variable or array value. By analogy with the mathematical concepts vector and matrix, array types with one and two indices are often called vector type and matrix type, respectively. More generally, a multidimensional array type can be called a tensor type, by analogy with the physical concept, tensor.
Composite data typeIn computer science, a composite data type or compound data type is any data type which can be constructed in a program using the programming language's primitive data types and other composite types. It is sometimes called a structure or aggregate type, although the latter term may also refer to arrays, lists, etc. The act of constructing a composite type is known as composition. Composite data types are often contrasted with scalar variables. A struct is C's and C++'s notion of a composite type, a datatype that composes a fixed set of labeled fields or members.
Booléenvignette|George Boole (1864-1865) L'homme ayant mis en place la première structure algébrique utilisée en logique mathématique, en informatique et en électronique. En programmation informatique, un booléen est un type de variable à deux états (généralement notés vrai et faux), destiné à représenter les valeurs de vérité de la logique et l'algèbre booléenne. Il est nommé ainsi d'après George Boole, fondateur dans le milieu du de l'algèbre portant son nom. Le type de données booléen est principalement associé à des états conditionnels.
Module sur un anneauEn mathématiques, et plus précisément en algèbre générale, au sein des structures algébriques, : pour un espace vectoriel, l'ensemble des scalaires forme un corps tandis que pour un module, cet ensemble est seulement muni d'une structure d'anneau (unitaire, mais non nécessairement commutatif). Une partie des travaux en théorie des modules consiste à retrouver les résultats de la théorie des espaces vectoriels, quitte pour cela à travailler avec des anneaux plus maniables, comme les anneaux principaux.
Python syntax and semanticsThe syntax of the Python programming language is the set of rules that defines how a Python program will be written and interpreted (by both the runtime system and by human readers). The Python language has many similarities to Perl, C, and Java. However, there are some definite differences between the languages. It supports multiple programming paradigms, including structured, object-oriented programming, and functional programming, and boasts a dynamic type system and automatic memory management.
Faisceau (de modules)En mathématique, un faisceau de modules est un faisceau sur un espace localement annelé qui possède une structure de module sur le faisceau structural . Sur un espace localement annelé , un faisceau de -modules (ou un -Module) est un faisceau sur tel que soit un -module pour tout ouvert , et que pour tout ouvert contenu dans , l'application restriction soit compatible avec les structures de modules: pour tous , on a Les notions de sous--modules et de morphismes de -modules sont claires.
Structure de contrôleEn programmation informatique, une structure de contrôle est une instruction particulière d'un langage de programmation impératif pouvant dévier le flot de contrôle du programme la contenant lorsqu'elle est exécutée. Si, au plus bas niveau, l'éventail se limite généralement aux branchements et aux appels de sous-programme, les langages structurés offrent des constructions plus élaborées comme les alternatives (if, if–else, switch...), les boucles (while, do–while, for...) ou encore les appels de fonction.
Generalized algebraic data typeIn functional programming, a generalized algebraic data type (GADT, also first-class phantom type, guarded recursive datatype, or equality-qualified type) is a generalization of parametric algebraic data types. In a GADT, the product constructors (called data constructors in Haskell) can provide an explicit instantiation of the ADT as the type instantiation of their return value. This allows defining functions with a more advanced type behaviour.
Catégorie des modulesEn mathématiques, la catégorie des modules sur un monoïde R est une construction qui rend compte abstraitement des propriétés observées dans l'étude des modules sur un anneau, en les généralisant. L'étude de catégories de modules apparaît naturellement en théorie des représentations et en géométrie algébrique. Puisqu'un R-module est un espace vectoriel lorsque R est un corps commutatif, on peut dans un tel cas identifier la catégorie des modules sur R à la sur le corps R.
Module projectifEn mathématiques, un module projectif est un module P (à gauche par exemple) sur un anneau A tel que pour tout morphisme surjectif f : N → M entre deux A-modules (à gauche) et pour tout morphisme g : P → M, il existe un morphisme h : P → N tel que g = fh, c'est-à-dire tel que le diagramme suivant commute : center Autrement dit : P est projectif si pour tout module N, tout morphisme de P vers un quotient de N se factorise par N.
Système de gestion d'exceptionsDans le contexte des langages de programmation fonctionnels et impératifs, un système de gestion d'exceptions ou SGE permet de gérer les conditions exceptionnelles pendant l'exécution du programme. Lorsqu'une exception se produit, l'exécution normale du programme est interrompue et l'exception est traitée. Les erreurs/exceptions les plus courantes sont probablement l'accès non autorisé à une zone mémoire (erreur de manipulation de pointeur) et la division par zéro (on ne prévoit pas le cas où le diviseur est nul).
Module libreEn algèbre, un module libre est un module M qui possède une base B, c'est-à-dire un sous-ensemble de M tel que tout élément de M s'écrive de façon unique comme combinaison linéaire (finie) d'éléments de B. Une base de M est une partie B de M qui est à la fois : génératrice pour M, c'est-à-dire que tout élément de M est combinaison linéaire d'éléments de B ; libre, c'est-à-dire que pour toutes familles finies (ei)1≤i≤n d'éléments de B deux à deux distincts et (ai)1≤i≤n d'éléments de l'anneau sous-jacent telles que a1e1 + .
DebuggingIn computer programming and software development, debugging is the process of finding and resolving bugs (defects or problems that prevent correct operation) within computer programs, software, or systems. Debugging tactics can involve interactive debugging, control flow analysis, unit testing, integration testing, , monitoring at the application or system level, memory dumps, and profiling. Many programming languages and software development tools also offer programs to aid in debugging, known as debuggers.
Coloration syntaxiquedroite|vignette|300px|Coloration syntaxique sur un programme en langage C sous GNU Emacs. La coloration syntaxique est une fonctionnalité informatique proposée par certains éditeurs de texte, qui consiste à formater automatiquement chacun des éléments du texte affiché en utilisant une couleur et une fonte caractéristiques de son type. Le but est d’améliorer la lisibilité d'un code source en mettant en évidence les structures syntaxiques de son langage de programmation ou de description.
History of PythonPython (programming language) The programming language Python was conceived in the late 1980s, and its implementation was started in December 1989 by Guido van Rossum at CWI in the Netherlands as a successor to ABC capable of exception handling and interfacing with the Amoeba operating system. Van Rossum is Python's principal author, and his continuing central role in deciding the direction of Python is reflected in the title given to him by the Python community, Benevolent Dictator for Life (BDFL).