En informatique, une fonction est dite à effet de bord (traduction mot à mot de l'anglais side effect, dont le sens est plus proche deffet secondaire) si elle modifie un état en dehors de son environnement local, c'est-à-dire a une interaction observable avec le monde extérieur autre que retourner une valeur. Par exemple, les fonctions qui modifient une variable locale statique, une variable non locale ou un argument mutable passé par référence, les fonctions qui effectuent des opérations d'entrées-sorties ou les fonctions appelant d'autres fonctions à effet de bord.
En informatique, la continuation d'un système est son futur, c'est-à-dire la suite des instructions qu'il lui reste à exécuter à un moment précis. C'est un point de vue pour décrire l'état de la machine. Dans certains langages de programmation, les continuations peuvent être manipulées explicitement en tant qu'objets du langage à part entière : on peut stocker la continuation courante dans une variable que l'on peut donc manipuler en tant que telle ; puis plus loin, on peut restaurer la continuation, ce qui a pour effet de dérouter l'exécution du programme actuel vers le futur que l'on avait enregistré.
In computer science, function composition is an act or mechanism to combine simple functions to build more complicated ones. Like the usual composition of functions in mathematics, the result of each function is passed as the argument of the next, and the result of the last one is the result of the whole. Programmers frequently apply functions to results of other functions, and almost all programming languages allow it. In some cases, the composition of functions is interesting as a function in its own right, to be used later.
En programmation informatique, la syntaxe de certains langages de programmation permet de définir des listes en compréhension, c'est-à-dire des listes dont le contenu est défini par filtrage du contenu d'une autre liste selon un principe analogue à celui de la définition en compréhension de la théorie des ensembles. Cette construction syntaxique se distingue de la construction la plus courante dans les langages de programmation qui est de définir les listes par énumération de ses éléments.
Un langage de programmation utilise une stratégie d'évaluation pour déterminer « quand » évaluer les arguments à l'appel d'une fonction (ou encore, opération, méthode) et « comment » passer les arguments à la fonction. Par exemple, dans l'appel par valeur, les arguments doivent être évalués avant d'être passés à la fonction. La stratégie d'évaluation d'un langage de programmation est spécifiée par la définition du langage même. En pratique, la plupart des langages de programmation (Java, C...
vignette|La lettre grecque minuscule λ (lambda) est un symbole non officiel de la théorie des langages de programmation. Cet usage dérive du lambda-calcul, un modèle de calcul introduit par Alonzo Church dans les années 1930 et largement utilisé par les chercheurs en langage de programmation. Il orne la couverture du texte classique Structure et interprétation des programmes informatiques, et apparaît dans le titre des fameux Lambda Papers de 1975 à 1980, écrits par Gerald Jay Sussman et Guy Steele, les développeurs du langage de programmation Scheme.
En programmation informatique, un opérateur est une fonction spéciale dont l'identificateur s'écrit généralement avec des caractères non autorisés pour l'identificateur des fonctions ordinaires. Il s'agit souvent des équivalents aux opérateurs mathématiques pour un langage de programmation. Les opérateurs peuvent effectuer des opérations arithmétiques, booléennes ou agir sur des chaînes de caractères. Contrairement aux fonctions, les opérateurs fournissent souvent les opérations primitives du langage.
In the Scheme computer programming language, the procedure call-with-current-continuation, abbreviated call/cc, is used as a control flow operator. It has been adopted by several other programming languages. Taking a function f as its only argument, (call/cc f) within an expression is applied to the current continuation of the expression. For example ((call/cc f) e2) is equivalent to applying f to the current continuation of the expression.
xmonad is a dynamic window manager (tiling) for the X Window System, noted for being written in the functional programming language Haskell. Begun in March 2007, version 0.1 was announced in April 2007 as 500 lines of Haskell. xmonad is a tiling window manager—akin to dwm, larswm, and StumpWM. It arranges windows in a non-overlapping pattern, and enables managing windows without using the mouse. xmonad is packaged and distributed on a wide range of Unix-like operating systems, such as a large number of Linux distributions, and Berkeley Software Distribution (BSD) systems.
Language Integrated Query ( « requête intégrée au langage », aussi connu sous le nom de LINQ) est un composant du framework .NET de Microsoft qui ajoute des capacités d'interrogation sur des données aux langages .NET en utilisant une syntaxe proche de celle de SQL. La plupart des concepts mis en place par LINQ ont été initialement testés dans un projet de recherche Microsoft nommé « Cω ». LINQ a été mis en production dans le cadre du framework , le .