Génération de code natifLa génération de code natif est l'étape du processus de compilation transformant l'arbre syntaxique abstrait enrichi d'informations sémantiques en code machine ou en bytecode spécialisé pour la plateforme cible. C'est l'avant-dernière étape du processus de compilation qui se situe avant l'édition des liens. La phase de génération de code natif inclut généralement : Le choix des instructions à émettre ; L'ordonnancement des instructions : dans quel ordre émettre les instructions.
Rust (langage)Rust est un langage de programmation compilé multi-paradigme conçu et développé par Mozilla Research depuis 2010. Il a été conçu pour être « un langage fiable, concurrent, pratique », supportant les styles de programmation purement fonctionnel, modèle d'acteur, procédural, ainsi qu'orienté objet sous certains aspects. En 2020, ses domaines de prédilection sont la programmation système, les applications en ligne de commande, les applications Web via WebAssembly, les services réseaux et les systèmes embarqués.
Optimizing compilerIn computing, an optimizing compiler is a compiler that tries to minimize or maximize some attributes of an executable computer program. Common requirements are to minimize a program's execution time, memory footprint, storage size, and power consumption (the last three being popular for portable computers). Compiler optimization is generally implemented using a sequence of optimizing transformations, algorithms which take a program and transform it to produce a semantically equivalent output program that uses fewer resources or executes faster.
GCJGCJ (GNU Compiler for Java) était le compilateur Java du projet GNU, sous licence libre. Il a été un des composants de GCC de la version 3 jusqu'à la version 6, avant d'en être retiré à partir de la version 7. Contrairement au compilateur du SDK Java de Sun Microsystems produisant exclusivement du bytecode Java, gcj opte pour une approche traditionnelle en produisant du code natif pour l'architecture matérielle. De plus GCJ est également capable de fonctionner comme un compilateur Java classique en produisant du bytecode, et permet également de transformer du bytecode vers du code natif.
Fonction anonymeEn programmation informatique, une fonction anonyme, aussi appelée lambda expression ou fonction lambda est une fonction n'ayant pas de nom. Les fonctions anonymes existent dans certains langages de programmation comme Python, JavaScript, OCaml ou C++. Certains langages, comme le C et Pascal (tout au moins les versions standards de ces langages), ne permettent pas d'écrire des fonctions anonymes. Parce que ces fonctions n'ont pas de nom, à l'endroit où l'on voudrait mettre leur nom, on trouve directement les instructions définissant la fonction introduites par une syntaxe particulière.
XcodeXcode est un environnement de développement pour macOS, ainsi que pour iOS, watchOS, tvOS et visionOS. L'API Cocoa permet de programmer avec les langages suivants : Objective-C Ruby Swift (nouveau langage de programmation d'Apple présenté à la WWDC 2014). Fourni avec toute une suite logicielle (graphiques, audio, etc.) pour développeurs et programmeurs, il permet de créer des logiciels utilisant toutes les fonctionnalités de macOS et d'UNIX. Cet environnement peut être obtenu gratuitement sur le Mac App Store.
Swift (langage d'Apple)Swift est un langage de programmation objet compilé, multi-paradigmes, qui se veut simple, performant et sûr. Il est développé en open source. Le projet de développement de Swift est géré par Apple, qui en est également le principal contributeur ; mais de nombreux membres de la communauté Swift, ainsi que d'autres acteurs, tels que Google et IBM, participent également à son développement. Swift est officiellement supporté sur les systèmes d'exploitation Ubuntu, iOS, macOS, watchOS et tvOS.
LinuxLinux ou GNU/Linux est une famille de systèmes d'exploitation open source de type Unix fondés sur le noyau Linux créé en 1991 par Linus Torvalds. De nombreuses distributions Linux ont depuis vu le jour et constituent un important vecteur de popularisation du mouvement du logiciel libre. Si, à l'origine, Linux a été développé pour les ordinateurs compatibles PC, il n'a jamais équipé qu'une très faible part des ordinateurs personnels.
Compilation à la voléeLa compilation à la volée (aussi connue sous les noms de traduction dynamique, compilation juste-à-temps ou compilation JAT ; en anglais, just-in-time compilation ou JIT compilation), en programmation informatique, est une technique visant à améliorer la performance de systèmes bytecode-compilés par la traduction de bytecode en code machine natif au moment de l'exécution. La compilation à la volée se fonde sur deux anciennes idées : la compilation de bytecode et la compilation dynamique.
Go (langage)Go est un langage de programmation compilé et concurrent inspiré de C et Pascal. Il a été développé par Google à partir d’un concept initial de , Rob Pike et Ken Thompson. vignette|alt=Logo de Google Go|droite|Mascotte de Google Go Go veut faciliter et accélérer la programmation à grande échelle : en raison de sa simplicité, il est donc concevable de l’utiliser aussi bien pour écrire des applications, des scripts ou de grands systèmes. Cette simplicité est nécessaire aussi pour assurer la maintenance et l’évolution des programmes sur plusieurs générations de développeurs.