Type dépendantEn Informatique et en Logique, un type dépendant est un type qui peut dépendre d'une valeur définie dans le langage typé. Les langages Agda et Gallina (de l'assistant de preuve Coq) sont des exemples de langages à type dépendant. Les types dépendants permettent par exemple de définir le type des listes à n éléments. Voici un exemple en Coq. Inductive Vect (A: Type): nat -> Type := | nil: Vect A 0 | cons (n: nat) (x: A) (t: Vect A n): Vect A (S n).
Théorie des typesEn mathématiques, logique et informatique, une théorie des types est une classe de systèmes formels, dont certains peuvent servir d'alternatives à la théorie des ensembles comme fondation des mathématiques. Ils ont été historiquement introduits pour résoudre le paradoxe d'un axiome de compréhension non restreint. En théorie des types, il existe des types de base et des constructeurs (comme celui des fonctions ou encore celui du produit cartésien) qui permettent de créer de nouveaux types à partir de types préexistant.
Inductive typeIn type theory, a system has inductive types if it has facilities for creating a new type from constants and functions that create terms of that type. The feature serves a role similar to data structures in a programming language and allows a type theory to add concepts like numbers, relations, and trees. As the name suggests, inductive types can be self-referential, but usually only in a way that permits structural recursion. The standard example is encoding the natural numbers using Peano's encoding.
EmacsEmacs est une famille d'éditeurs de texte disposant d'un ensemble extensible de fonctionnalités. Il est populaire parmi les programmeurs et plus généralement les personnes ayant des compétences techniques sur les ordinateurs. L'EMACS originel, signifiant Editing MACroS running on TECO, c'est-à-dire « macros d'édition pour TECO », a été écrit en 1976 par Richard Stallman, initialement avec Guy Steele. Il a été inspiré par les idées développées dans TECMAC et TMACS, deux jeux de macros d'édition pour TECO, notamment écrits par Guy Steele, David Moon, Richard Greenblatt et Charles Frankston.
Assistant de preuveEn informatique (ou en mathématiques assistées par informatique), un assistant de preuve est un logiciel permettant la vérification de preuves mathématiques, soit sur des théorèmes au sens usuel des mathématiques, soit sur des assertions relatives à l'exécution de programmes informatiques. Beaucoup de projets ont été lancés pour formaliser les mathématiques, en 1966, Nicolaas de Bruijn lance le projet Automath, suivi par d'autres projets.
GNU EmacsGNU Emacs est l’une des deux versions les plus populaires de l’éditeur de texte Emacs (l’autre version est XEmacs). Ces deux versions sont majoritairement compatibles et ont de très nombreux points communs, décrits dans l’article Emacs. Dans le manuel, on peut lire qu'il est l’. GNU Emacs, développé par Richard Stallman depuis 1984 dans le cadre du projet GNU, s’appuie sur le langage Emacs Lisp. GNU Emacs fait partie du projet GNU. En 1984, Stallman commence le projet sur les systèmes Unix.
Emacs Lispvignette|Logo de GNU Emacs Emacs Lisp est un dialecte du langage de programmation Lisp, utilisé entre autres par les éditeurs de texte GNU Emacs et XEmacs (qui auront la dénomination commune d'Emacs dans cet article). Il est utilisé pour l'implémentation de la plupart des fonctionnalités d'édition standard d'Emacs, le reste étant écrit en C. Les utilisateurs d'Emacs écrivent habituellement du code en Emacs Lisp afin de personnaliser et rajouter des fonctionnalités à Emacs.
MicroEMACSMicroEMACS est un éditeur de texte de la famille Emacs. MicroEMACS a été conçu fin 1985, début 1986 par Dave Conroy pour son usage privé. De nombreuses personnes lui ont alors demandé une copie du programme, et le code source fut distribué sans se soucier du droit d'auteur comme il était encore d'usage à cette époque dans le milieu hacker. Daniel M. Lawrence obtint alors une copie du programme, et le transforma en logiciel très populaire. C'est son travail qui le rendit très populaire.
XEmacsXEmacs is a graphical- and console-based text editor which runs on almost any Unix-like operating system as well as Microsoft Windows. XEmacs is a fork, based on a version of GNU Emacs from the late 1980s. Any user can download, use, and modify XEmacs as free software available under the GNU General Public License version 2 or any later version. Between 1987 and 1993 significant delays occurred in bringing out a new version of GNU Emacs (presumed to be version 19). In the late 1980s, Richard P. Gabriel's Lucid Inc.
HD DVDLe HD DVD est un support de vidéo numérique créé par Toshiba en 2003 et abandonné en , acronyme anglais de High Density Digital Versatile Disc, traduisible en français par « disque numérique polyvalent de haute densité ». Dans ce support, tout comme pour le CD et le DVD, les données sont enregistrées sous forme numérique, sur un disque de de diamètre. Le terme « HD » renvoie à la haute définition car les vidéogrammes sauvegardés sur ces disques peuvent être conformes à la résolution d'image améliorée.
SurjectionEn mathématiques, une surjection ou application surjective est une application pour laquelle tout élément de l'ensemble d'arrivée a au moins un antécédent, c'est-à-dire est d'au moins un élément de l'ensemble de départ. Il est équivalent de dire que l' est égal à l'ensemble d'arrivée. Il est possible d'appliquer l'adjectif « surjectif » à une fonction (voire à une correspondance) dont le domaine de définition n'est pas tout l'ensemble de départ, mais en général le terme « surjection » est réservé aux applications (qui sont définies sur tout leur ensemble de départ), auxquelles nous nous limiterons dans cet article (pour plus de détails, voir le paragraphe « Fonction et application » de l'article « Application »).
Injection (mathématiques)Une application f est dite injective ou est une injection si tout élément de son ensemble d'arrivée a au plus un antécédent par f, ce qui revient à dire que deux éléments distincts de son ensemble de départ ne peuvent pas avoir la même par f. Lorsque les ensembles de départ et d'arrivée de f sont tous les deux égaux à la droite réelle R, f est injective si et seulement si son graphe intersecte toute droite horizontale en au plus un point. Si une application injective est aussi surjective, elle est dite bijective.
Coq (logiciel)Coq est un assistant de preuve utilisant le langage Gallina, développé par l'équipe PI.R2 de l’Inria au sein du laboratoire PPS du CNRS et en partenariat avec l'École polytechnique, le CNAM, l'Université Paris Diderot et l'Université Paris-Sud (et antérieurement l'École normale supérieure de Lyon). Le nom du logiciel (initialement CoC) est particulièrement adéquat car : il est français ; il est fondé sur le calcul des constructions (CoC abrégé en anglais) introduit par Thierry Coquand.
High-definition optical disc format warThe high-definition optical disc format war was a market competition between the Blu-ray and HD DVD optical disc standards for storing high-definition video and audio; it took place between 2006 and 2008 and was won by Blu-ray Disc. The two formats emerged between 2000 and 2005 and attracted both the mutual and exclusive support of major consumer electronics manufacturers, personal computer manufacturers, television and movie producers and distributors, and software developers.
High-definition videoHigh-definition video (HD video) is video of higher resolution and quality than standard-definition. While there is no standardized meaning for high-definition, generally any video image with considerably more than 480 vertical scan lines (North America) or 576 vertical lines (Europe) is considered high-definition. 480 scan lines is generally the minimum even though the majority of systems greatly exceed that. Images of standard resolution captured at rates faster than normal (60 frames/second North America, 50 fps Europe), by a high-speed camera may be considered high-definition in some contexts.
Type systemIn computer programming, a type system is a logical system comprising a set of rules that assigns a property called a type (for example, integer, floating point, string) to every "term" (a word, phrase, or other set of symbols). Usually the terms are various constructs of a computer program, such as variables, expressions, functions, or modules. A type system dictates the operations that can be performed on a term. For variables, the type system determines the allowed values of that term.
Haute définitionLa haute définition (HD) désigne une classification d'équipements de télédiffusion et de vidéo numérique ayant une définition d'au moins 1280 par (720p), puis 1920 par 1080 pixels (1080i et 1080p) et par la suite, 2560 par 1440 pixels (1440p). Elle est l'évolution du SDTV. Le terme HD s'étend à l'ensemble des techniques audiovisuelles numériques telles que le HDV (grand public), le HDCam, la télévision (DVB-T, DVB-S, DVB-C), les supports disque Blu-ray, HD DVD, l'enregistrement multimédia sur disque dur, ainsi qu'au stockage de données informatiques.
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.
Télévision à ultra-haute définitionthumb|300x300px|Logo digitaleurope (norme europe) La télévision à ultra-haute définition (TVUHD selon l'UIT, UHDTV en anglais) est un format numérique de vidéo dont la caractéristique principale est une comportant quatre fois, voire seize fois plus de pixels que la télévision à haute définition (HDTV). Aujourd'hui, ce format tend à se généraliser dans sa version TVUHD1. La variante TVUHD2 est quant à elle encore à l'état de développement, et devrait se démocratiser à l'horizon 2020.
Guerre d'éditeursIl existe une tradition datant du début des années 1970 (et donc dès les débuts du travail courant sur écran d'ordinateur) chez les programmeurs, qui consiste à défendre son logiciel éditeur de texte favori avec une passion qui n'est pas sans rappeler à certains celle du fanatisme religieux. De nombreuses flamewars se sont déroulées entre des groupes qui s'insultaient les uns les autres en soutenant que l'éditeur de texte de leur choix était l'outil parfait pour l'édition.