Modular CReportar como inadecuado




Modular C - Descarga este documento en PDF. Documentación en PDF para descargar gratis. Disponible también para leer online.

1 CAMUS - Compilation pour les Architectures MUlti-coeurS Inria Nancy - Grand Est, ICube - Laboratoire des sciences de l-ingénieur, de l-informatique et de l-imagerie

Abstract : We propose an extension to the C standard called Modular C. It consists in theaddition of a handful of directives and a naming scheme transforming traditional translation units into modules. The change to the C language is minimal since we only add onefeature, composed identifiers, to the core language. Our modules can import other modulesas long as the import relation remains acyclic and a module can refer to its own identifiersand those of the imported modules through freely chosen abbreviations. Other than traditional C include, our import directive ensures complete encapsulation between modules. Theabbreviation scheme allows to seamlessly replace an imported module by another one withequivalent interface. In addition to the export of symbols, we provide parameterized code injection through the import of -snippets-. This implements a mechanism that allows for codereuse, similar to X macros or templates. Additional features of our proposal are a simple dynamic module initialization scheme, a structured approach to the C library and a migrationpath for existing software projects.

Résumé : Nous proposons une extension au langage de programmation C, nomméC modulaire. Elle consiste en ajoutant une poignée de directives et d’un schéma denommage à transformer des unités de traduction traditionnelles en module. La mod-ification au language-même est minimale, car nous y ajoutons une seul nouvelle caractéristique, les identifiants composés. Nos modules peuvent importer autre modulestant que la relation d’import reste acyclique et un module peut référer à ses propres identifiants et ceux des modules importés à l’aide d’abréviations librement choisis. Autre que l’include traditionel, notre directive d’import assure l’encapsulationcomplète entre modules. Le schema d’abréviation permet de facilement remplacer unmodule importé par un autre qui réalise le même interface. En plus à l’export desymboles nous fournissons l’injection de code paramétré par l’importation de snippets. Ceci implante un mécanisme de réutilisation de code, similaire au X-macro outemplate. Des outils supplémentaires que propose notre approche sont un schémad’initialisation, un approche structuré à la bibliothèque standard de C et un cheminde migration pour des projets de logiciel existants.

en fr

Keywords : modularity

Mots-clés : C modularité encapsulation





Autor: Jens Gustedt -

Fuente: https://hal.archives-ouvertes.fr/



DESCARGAR PDF




Documentos relacionados