Pointeur (programmation)En programmation informatique, un pointeur est un objet qui contient l'adresse mémoire d'une donnée ou d'une fonction. C'est l'outil fondamental de l'adressage dit « indirect ». La notion de pointeur reflète l'utilisation différente que l'on peut faire d'un entier naturel, à savoir indiquer une adresse mémoire. Cette utilisation est très différente d'une utilisation arithmétique, d'où la création de registres de processeurs spécifiques (les registres d'adresse) et d'un type de donnée spécifique dans les langages de programmations.
Memory safetyMemory safety is the state of being protected from various software bugs and security vulnerabilities when dealing with memory access, such as buffer overflows and dangling pointers. For example, Java is said to be memory-safe because its runtime error detection checks array bounds and pointer dereferences. In contrast, C and C++ allow arbitrary pointer arithmetic with pointers implemented as direct memory addresses with no provision for bounds checking, and thus are potentially memory-unsafe.
Liste chaînéeUne liste chaînée ou liste liée (en anglais linked list) désigne en informatique une structure de données représentant une collection ordonnée et de taille arbitraire d'éléments de même type, dont la représentation en mémoire de l'ordinateur est une succession de cellules faites d'un contenu et d'un pointeur vers une autre cellule. De façon imagée, l'ensemble des cellules ressemble à une chaîne dont les maillons seraient les cellules.
Structure de donnéesEn informatique, une structure de données est une manière d'organiser les données pour les traiter plus facilement. Une structure de données est une mise en œuvre concrète d'un type abstrait. Pour prendre un exemple de la vie quotidienne, on peut présenter des numéros de téléphone par département, par nom, par profession (comme les Pages jaunes), par numéro téléphonique (comme les annuaires destinés au télémarketing), par rue et/ou une combinaison quelconque de ces classements.
Linked data structureIn computer science, a linked data structure is a data structure which consists of a set of data records (nodes) linked together and organized by references (links or pointers). The link between data can also be called a connector. In linked data structures, the links are usually treated as special data types that can only be dereferenced or compared for equality. Linked data structures are thus contrasted with arrays and other data structures that require performing arithmetic operations on pointers.
Sûreté du typageLa sûreté du typage est un principe permettant d'améliorer la qualité de la programmation. Dans les langages à typage statique, l'un des objectifs est d'intercepter les erreurs de type de données lors de la compilation. Un type peut être vu comme un ensemble de valeurs et un ensemble d'opérateurs. La programmation objet a introduit les notions d'objets, messages, classes, héritage. Il est tentant de faire coller les classes à des types.
Structure de données persistanteEn informatique, une structure de données persistante est une structure de données qui préserve ses versions antérieures lorsqu'elle est modifiée ; une telle structure est immuable, car ses opérations ne la modifient pas en place (de manière visible) mais renvoient au contraire de nouvelles structures. Une structure est partiellement persistante si seule sa version la plus récente peut être modifiée, les autres n'étant accessibles qu'en lecture. La structure est dite totalement persistante si chacune de ses versions peut être lue ou modifiée.
Gestion de mémoire par régionsEn informatique, la gestion de mémoire par région est un type de gestion de mémoire avec lequel chaque objet alloué est assigné à une région. Une région, alias une zone, une arène, ou un contexte mémoire, est une collection d’objets alloués qui peut être efficacement désallouée en bloc. Comme l’allocation par pile, les régions facilitent l’allocation et la désallocation de la mémoire à faible coût ; mais elles sont plus flexibles, permettant aux objets de vivre plus longtemps que la pile d’activation dans laquelle ils ont été alloués.
Tableau (structure de données)En informatique, un tableau est une structure de données représentant une séquence finie d'éléments auxquels on peut accéder efficacement par leur position, ou indice, dans la séquence. C'est un type de conteneur que l'on retrouve dans un grand nombre de langages de programmation. Dans les langages à typage statique (comme C, Java et OCaml), tous les éléments d’un tableau doivent être du même type. Certains langages à typage dynamique (tels APL et Python) permettent des tableaux hétérogènes.
Manual memory managementIn computer science, manual memory management refers to the usage of manual instructions by the programmer to identify and deallocate unused objects, or garbage. Up until the mid-1990s, the majority of programming languages used in industry supported manual memory management, though garbage collection has existed since 1959, when it was introduced with Lisp. Today, however, languages with garbage collection such as Java are increasingly popular and the languages Objective-C and Swift provide similar functionality through Automatic Reference Counting.
Purely functional data structureIn computer science, a purely functional data structure is a data structure that can be directly implemented in a purely functional language. The main difference between an arbitrary data structure and a purely functional one is that the latter is (strongly) immutable. This restriction ensures the data structure possesses the advantages of immutable objects: (full) persistency, quick copy of objects, and thread safety. Efficient purely functional data structures may require the use of lazy evaluation and memoization.
Implicit data structureIn computer science, an implicit data structure or space-efficient data structure is a data structure that stores very little information other than the main or required data: a data structure that requires low overhead. They are called "implicit" because the position of the elements carries meaning and relationship between elements; this is contrasted with the use of pointers to give an explicit relationship between elements. Definitions of "low overhead" vary, but generally means constant overhead; in big O notation, O(1) overhead.
Pile d'exécutionEn informatique, la pile d’exécution (souvent abrégée en la pile ; en anglais, call stack) est une structure de données de type pile qui sert à enregistrer des informations au sujet des fonctions actives dans un programme informatique. Une pile d'exécution est utilisée pour emmagasiner plusieurs valeurs, mais sa principale utilisation est de garder la trace de l'endroit où chaque fonction active doit retourner à la fin de son exécution (les fonctions actives sont celles qui ont été appelées, mais n’ont pas encore terminé leur exécution).
Aliasing (computing)In computing, aliasing describes a situation in which a data location in memory can be accessed through different symbolic names in the program. Thus, modifying the data through one name implicitly modifies the values associated with all aliased names, which may not be expected by the programmer. As a result, aliasing makes it particularly difficult to understand, analyze and optimize programs. Aliasing analysers intend to make and compute useful information for understanding aliasing in programs.
Ada LovelaceAda Lovelace, de son nom complet Augusta Ada King, comtesse de Lovelace, née Ada Byron le à Londres et morte le à Marylebone dans la même ville, est une pionnière de la science informatique. Elle est principalement connue pour avoir réalisé le premier véritable programme informatique, lors de son travail sur un ancêtre de l'ordinateur : la machine analytique de Charles Babbage. Dans ses notes, on trouve en effet le premier programme publié, destiné à être exécuté par une machine, ce qui fait d'Ada Lovelace la première personne à avoir programmé au monde.
Impulsion électromagnétique nucléairevignette|Un Boeing E-4 (une version du Boeing 747 transformé en poste de commandement pour le Strategic Air Command) subissant une simulation d'impulsion électromagnétique. Une impulsion électromagnétique nucléaire (IEMN), également connue sous le nom NEMP (de l'anglais nuclear electromagnetic pulse) est une émission d'ondes électromagnétiques brève et de très forte amplitude qui peut détruire de nombreux appareils électriques et électroniques (reliés au courant et non protégés) et brouiller les télécommunications.
Swap de taux d'intérêtUn swap de taux d'intérêt (en anglais : Interest Rate Swaps ou IRS) est un produit dérivé financier, dont l'appellation officielle en français est « contrat d'échange de taux d'intérêt ». Voir les articles généraux : swap et produit dérivé. Le marché des swaps standards (plain vanilla en anglais) contre taux IBOR constitue le deuxième plus important marché des taux d'intérêt à moyen et long terme, derrière celui des emprunts d'État et futures sur emprunts d'État.
Swap (finance)Le swap (de l'anglais to swap : échanger) ou contrat d'échange ou l'échange financier est un produit dérivé financier. Il s'agit d'un contrat d'échange de flux financiers entre deux parties, qui sont généralement des banques ou des institutions financières. Les quatre contrats les plus courants sont : le swap de taux d'intérêt standard par taux variables contre taux fixes ou IRS (en anglais : interest rate swap) qui échange les intérêts d'un prêt ou dépôt notionnel à taux variable contre des intérêts à taux fixe ; le swap de devises ou E.
Impulsion électromagnétiquevignette|redresse=1.2|Simulateur d'EMP HAGII-C testé sur un avion Boeing E-4 (1979). Une impulsion électromagnétique (IEM), également connue sous le nom EMP (de l'anglais electromagnetic pulse) est une émission d'ondes électromagnétiques brève et de très forte amplitude qui peut détruire de nombreux appareils électriques et électroniques (reliés au courant et non protégés) et brouiller les télécommunications.
Lord Byronvignette|redresse|Lettre signée adressée à John Hanson. Source BEIC. George Gordon Byron, Byron, généralement appelé Lord Byron , est un poète britannique, né le à Londres et mort le à Missolonghi, en Grèce, alors sous domination ottomane. Il est l'un des plus illustres poètes de l'histoire littéraire de langue anglaise. Bien que classique par le goût, il représente l'une des grandes figures du romantisme de langue anglaise, avec William Blake, William Wordsworth, Samuel Taylor Coleridge, Percy Bysshe Shelley et John Keats.