3,279 Hits in 1.9 sec

Generative metaprogramming

Salvador Trujillo, Maider Azanza, Oscar Diaz
2007 Proceedings of the 6th international conference on Generative programming and component engineering - GPCE '07  
To depart from this situation, this paper addresses generative metaprogramming, i.e. the generation of program-synthesis metaprograms from declarative specifications.  ...  from which the code counterpart is generated.  ...  generate the code of a synthesis metaprogram.  ... 
doi:10.1145/1289971.1289990 dblp:conf/gpce/TrujilloAD07 fatcat:lyex3kpdjbgyhjjhh57627ztem

Metaprogramming for the Generation of Nonparametric Curves [article]

Vincent Boyer
2001 Eurographics State of the Art Reports  
Using metaprogramming and the Jordan's method, our program CAPC automatically generates, for a given function, a new program which computes the discrete points for this function and adds it to our paintbox  ...  We will extend this method to the generation of nonparametric curve with three variables. This extension will allow to generate automatically shading supports for the Bourdin color shading method 5 .  ...  Metaprogramming We have adapted the Jordan's method to generate automatically the algorithms.  ... 
doi:10.2312/egs.20011037 fatcat:a3a4y74dffawfmyyvrj4syd4rm

Dynamic patch generation for null pointer exceptions using metaprogramming

Thomas Durieux, Benoit Cornu, Lionel Seinturier, Martin Monperrus
2017 2017 IEEE 24th International Conference on Software Analysis, Evolution and Reengineering (SANER)  
Our idea is to transform the program under repair with automated code transformation, so as to obtain a metaprogram.  ...  In this paper, we aim at exploring the search space of possible patches for null pointer exceptions with metaprogramming.  ...  NPEfix is composed of three main phases: first, it generates a metaprogram out of the program under repair, second it compiles the metaprogram, third, it runs the failing test case a large number of times  ... 
doi:10.1109/saner.2017.7884635 dblp:conf/wcre/DurieuxCSM17 fatcat:j3vj7jnzjrg5fgfcvl3glbgovy

Meta C++: an extension layer for multi-stage generative metaprogramming

Yannis Lilis, Anthony Savidis
2019 Journal of Object Technology  
Generative metaprogramming is a powerful mechanism for reuse through code manipulation, adaptation and composition.  ...  In this paper, we propose MetaC++, an extension layer supporting multi-stage generative metaprogramming for C++, offering the full-range of language constructs for implementing compile-time metaprograms  ...  Since in the integrated metaprogramming model metaprograms are essentially normal programs, code generation naturally generalizes to multiple stages if the stage code is itself subject to code generation  ... 
doi:10.5381/jot.2019.18.1.a1 fatcat:xnpvksx3frakdhlrtecfjya774

Incremental type-checking for type-reflective metaprograms

Weiyu Miao, Jeremy G. Siek
2010 Proceedings of the ninth international conference on Generative programming and component engineering - GPCE '10  
We show that the incremental type checker can be implemented efficiently and we prove that if a welltyped metaprogram generates a residual program, then the residual program is also well-typed.  ...  Ideally, one would like the type system of the metaprogram to also guarantee that the residual program will type check, as is the case in MetaML.  ...  After meta evaluation, it type-checks the code generated by the metaprogram.  ... 
doi:10.1145/1868294.1868319 dblp:conf/gpce/MiaoS10 fatcat:5b6ymrhgyveg7kn4fsmp3fmj3e

Debugging C++ template metaprograms

Zoltán Porkoláb, József Mihalicza, Ádám Sipos
2006 Proceedings of the 5th international conference on Generative programming and component engineering - GPCE '06  
One reason is the lack of professional software tools supporting the development of template metaprograms. A strong analogue exists between traditional runtime programs and compile-time metaprograms.  ...  Template metaprogramming is an emerging new direction in C++ programming for executing algorithms in compilation time.  ...  In fact, the lack of error messages would denote an error in the prime generator template metaprogram. However, generating other messages than primes would be considered erroneous too.  ... 
doi:10.1145/1173706.1173746 dblp:conf/gpce/PorkolabMS06 fatcat:aqhniey5orfczizqoxap4sebl4

A metaprogramming approach to generating optimized code for algorithms in linear algebra

Najaf A. Shah, Anthony Skjellum
2005 Proceedings of the 43rd annual southeast regional conference on - ACM-SE 43  
This is an extended abstract for a poster that presents a new approach that employs metaprogramming to generate optimized code for algorithms in Linear Algebra.  ...  Our approach uses metaprogramming to write programs in PHP, a programming language that yields itself quite well to our purpose, that in turn generate efficient C code.  ...  A programmer can use the PHP metaprograms to effortlessly generate code for different block sizes and unrolling factors and compare their performances on a particular machine.  ... 
doi:10.1145/1167350.1167399 dblp:conf/ACMse/ShahS05 fatcat:77nu6yrjlvcbdiclf73l6o6lai

Dynamically adaptable software product lines using Ruby metaprogramming

Sebastian Günther, Sagar Sunkle
2010 Proceedings of the 2nd International Workshop on Feature-Oriented Software Development - FOSD '10  
The particular contributions are to show how Ruby's metaprogramming capabilities are used to design first-class entities and an explanation of the usage of our approach with a common case study.  ...  This generic model can explain how several concrete adaptation approaches work.  ...  General Frameworks One general framework for runtime adaptation expresses three important concerns: (1 ) explicit architectural model, (2 ) provision of structural and behavior constraints, and (3 ) the  ... 
doi:10.1145/1868688.1868700 dblp:conf/gpce/GuntherS10 fatcat:aftktwrv65b4ndfeqnwk2663jy

Using functional languages to facilitate C++ metaprogramming

Seyed Hossein Haeri, Sibylle Schupp, Jonathan Hüser
2012 Proceedings of the 8th ACM SIGPLAN workshop on Generic programming - WGP '12  
Template and Preprocessor Metaprogramming are both wellknown in the C++ community to have much in common with Functional Programming (FP).  ...  Recently, very few research threads on underpinning these commonalities have emerged to empower cross-development of C++ Metaprogramming (C++MP) and FP.  ...  The other translation direction is in fact not needed to generate the preprocessor portion because a machine programmatically generates all the classes without getting bored.  ... 
doi:10.1145/2364394.2364400 dblp:conf/icfp/HaeriSH12 fatcat:tjt6o4vcxbglxd6t55r7el6l6y

Unstructured Mixed Element Mesh Refinement Using Templates Generated by Metaprogramming

Ralph Noack
2011 20th AIAA Computational Fluid Dynamics Conference   unpublished
The present effort automates the process of generating the transition element templates through the use of metaprogramming: one program will generate the templates and write out software to be compiled  ...  Neighboring child elements that do not share the same parent must be assigned after the generation of all child elements is complete.  ...  The present effort automates the task of generating the transition element templates through the use of metaprogramming: a computer program whose output is software that defines the refinement templates  ... 
doi:10.2514/6.2011-3054 fatcat:z5odccslt5atzo5xwwvecsssoa

Rational Metaprogramming

Diomidis Spinellis
2008 IEEE Software  
Also known as generative programming, metaprogramming leverages a computer language's power.  ...  A general-purpose language supporting metaprogramming should be simpler than today's modern languages.  ... 
doi:10.1109/ms.2008.15 fatcat:7fs72n36wvcnfgsiunqhhru2ty

Metrics for evaluation of metaprogram complexity

Robertas Damasevicius, Vytautas Stuikys
2010 Computer Science and Information Systems  
Complexity management and measurement is especially important in novel programming technologies and paradigms, such as aspect-oriented programming, generative programming, and metaprogramming, where complex  ...  Keating [12] proposed a simple Metrics for Evaluation of Metaprogram Complexity  ...  generic components and software generators.  ... 
doi:10.2298/csis090315004d fatcat:tvhvvrea2zdrrga5gjpiwuvsd4

Visualization of C++ Template Metaprograms

Zoltan Borok-Nagy, Viktor Majer, Jozsef Mihalicza, Norbert Pataki, Zoltan Porkolab
2010 2010 10th IEEE Working Conference on Source Code Analysis and Manipulation  
As metaprograms are executed at compilation time they are even harder to understand.  ...  Using the tool it is possible to visualize the instantiation chain of C++ templates and follow the execution of metaprograms.  ...  We instrument the source code using Templight, our template metaprogram debugger [11] , and generate a trace file containing all the necessary information on the template metaprogram execution.  ... 
doi:10.1109/scam.2010.16 dblp:conf/scam/Borok-NagyMMPP10 fatcat:mhz5shokgbay7lnx5a6s55xely

A Modal Analysis of Metaprogramming, Revisited (Invited Talk)

Brigitte Pientka, Zena M. Ariola
2020 International Conference on Formal Structures for Computation and Deduction  
In this talk, we outline a modal type-theoretic foundation for multi-staged metaprogramming which supports the generation and the analysis of polymorphic code.  ...  to generate and manipulate code.  ...  Summary Metaprogramming provides programmers with the ability to write programs that generate specialized and optimized code.  ... 
doi:10.4230/lipics.fscd.2020.2 dblp:conf/fscd/Pientka20 fatcat:heiyhxjkwrdl3n75l6rvaa4zuu

Testing by C++ template metaprograms [article]

Norbert Pataki
2010 arXiv   pre-print
Our solution is based on C++ template metaprogramming facilities, so it can work with the standard-compliant compilers.  ...  The metaprogramming approach ensures that the overhead of testing is minimal at runtime. This approach also supports that the specification language can be customized among other advantages.  ...  This metaprogram can be generated by the compiler from a specification that can be defined in EClean [18, 17] , Haskell, or other domain-specific language [15] .  ... 
arXiv:1012.0038v1 fatcat:tp3aecdalzb27jcz4mlbilr5be
« Previous Showing results 1 — 15 out of 3,279 results