Programmation fonctionnelleLa programmation fonctionnelle est un paradigme de programmation de type déclaratif qui considère le calcul en tant qu'évaluation de fonctions mathématiques. Comme le changement d'état et la mutation des données ne peuvent pas être représentés par des évaluations de fonctions la programmation fonctionnelle ne les admet pas, au contraire elle met en avant l'application des fonctions, contrairement au modèle de programmation impérative qui met en avant les changements d'état.
Bug (informatique)vignette|upright=1|Le Mac triste : écran indiquant un code erreur sur les premières versions du MacIntosh d'Apple. En informatique, un bug (prononcé en français : ) ou bogue est un défaut de conception d'un programme informatique à l'origine d'un dysfonctionnement. La gravité du dysfonctionnement peut aller de bénigne, causant par exemple des défauts d'affichage mineurs à majeure, tels un plantage du système pouvant entraîner de graves accidents, par exemple la destruction en vol de la première fusée Ariane 5, en 1996.
P-code machineIn computer programming, a p-code machine (portable code machine) is a virtual machine designed to execute p-code (the assembly language or machine code of a hypothetical central processing unit (CPU)). This term is applied both generically to all such machines (such as the Java virtual machine (JVM) and MATLAB precompiled code), and to specific implementations, the most famous being the p-Machine of the Pascal-P system, particularly the UCSD Pascal implementation, among whose developers, the p in p-code was construed to mean pseudo more often than portable, thus pseudo-code meaning instructions for a pseudo-machine.
Software sizingSoftware sizing or software size estimation is an activity in software engineering that is used to determine or estimate the size of a software application or component in order to be able to implement other software project management activities (such as estimating or tracking). Size is an inherent characteristic of a piece of software just like weight is an inherent characteristic of a tangible material. Software sizing is different from software effort estimation.
Série formelleEn algèbre, les séries formelles sont une généralisation des polynômes autorisant des sommes infinies, de la même façon qu'en analyse, les séries entières généralisent les fonctions polynomiales, à ceci près que dans le cadre algébrique, les problèmes de convergence sont évités par des définitions ad hoc. Ces objets sont utiles pour décrire de façon concise des suites et pour trouver des formules pour des suites définies par récurrence via ce que l'on appelle les séries génératrices. Soit R un anneau commutatif (unifère).
PréconditionUne précondition est une condition appliquée au début d'un calcul ou d'une fonction informatique, et permettant d'en valider le résultat. Si P est un prédicat et S une substitution, P | S, qui se lit : le prédicat P préconditionne la substitution S, est défini par : [P | S] I ⟺ P & [S] I qui se lit : La substitution conditionnée [P | S] établit I si et seulement si P et ("et" logique) la substitution S établit que I est vrai. Du fait du &, si la précondition P est fausse, P & [S] I est faux. P | S a une fo
Tagged unionIn computer science, a tagged union, also called a variant, variant record, choice type, discriminated union, disjoint union, sum type or coproduct, is a data structure used to hold a value that could take on several different, but fixed, types. Only one of the types can be in use at any one time, and a tag field explicitly indicates which one is in use. It can be thought of as a type that has several "cases", each of which should be handled correctly when that type is manipulated.
Translator (computing)A translator or programming language processor is a generic term that can refer to a compiler, assembler, or interpreter—anything that converts code from one computer language into another. These include translations between high-level and human-readable computer languages such as C++ and Java, intermediate-level languages such as Java bytecode, low-level languages such as the assembly language and machine code, and between similar levels of language on different computing platforms, as well as from any of these to any other of these.
Développeur de jeux vidéoUn développeur de jeux vidéo est une personne ou une entreprise qui crée des jeux vidéo en rassemblant plusieurs domaines de compétences comme le game design, la scénarisation, la programmation, l'infographie, la musique assistée par ordinateur, etc. Il peut travailler au sein d'une entreprise, d'un collectif ou être indépendant. Le développement d'un jeu vidéo utilise plusieurs langages de programmations. Les premiers jeux étaient développés en langage assembleur, version humaine du langage machine, puis, permettant un développement plus rapide, vers des langages plus structuré lors de leurs apparitions.
Traducteur universelLe traducteur universel est un appareil que l’on trouve fréquemment dans les œuvres de science-fiction. Décrit pour la première fois dans la nouvelle Premier contact (First Contact, 1945) de Murray Leinster, le but d’un tel objet est d’offrir une traduction immédiate de toute langue dans la langue de son choix. Les sociétés de technologie cherchent à mettre au point un tel traducteur universel pour un usage courant (voir Traducteurs non-fictifs ci-dessous).