Code Generation on Steroids: Enhancing COTS Code Generators via Generative Aspects

Author(s):  
Cody Henthorne ◽  
Eli Tilevich
2020 ◽  
Author(s):  
Anil Kumar Bheemaiah

The Wiki Story an essential documentation as javadoc is added to GS collections as a mutable data structure, added to collections like the Bag, leading to self modifiable programs with attribute oriented programming inspired by work in LISP and AIML, and the Self language of BotLibre. In this paper we integrate Open FaaS to Java 8 and RxJava, for Green Coding and the generalization to reusable components in remote functions on the edge or the cloud.Keywords: GS collections, Eclipse collections, XDoclet, Code Generators, Open FaaS, Bayou Framework.What:The GS Collections has a new data structure candidate, the Wiki Story WS, WS inherits from the User Stories of the Agile process, with documentation embedded in it as comments, amenable directly to OOPS programming. A WS data structure is defined by the this property and reflects a uniform xml, JSON and html5 DOM structure. X Doclet is introduced as attribute oriented programming with a set of attributes , both for Beans, Streams, and Rx Operators and data structures. How:Attributes define Rx and Rx ++ programming with code generators from XDoclet 2 library.Custom objects allow for the integration of Rx Stream objects, both sensor streams, event streams, kinesis streams and dynamoDB streams and many more streams. OpenFaaS is also integrated by a query based function integration as remote method or cloud based method integration with attributes, called green coding similar to the method, queryCodeGenerator()(Bheemaiah, n.d.)Bayou but extended to FaaS, services as attributes.(“How to Use Bayou – Bayou: Program Synthesis Powered by Bayesian Machine Learning” n.d.)Why:We have added wiki’s to the user stories provided as agile, attributes are added allowing for a query based tool for FaaS and XDoclet based code generation analogous to the neural sketch learning of Bayou. Code generation as amplification is now so fashionable that gangster like coders can also contribute really well generated code, an evolution of compiler backend code.Applications:Uniform high quality code, optimized to score high on Sonar, Code Generators for amplification and Green Coding.


2016 ◽  
Vol 12 (4) ◽  
pp. 533-556
Author(s):  
Maria Consuelo Franky ◽  
Jaime A. Pavlich-Mariscal ◽  
Maria Catalina Acero ◽  
Angee Zambrano ◽  
John C. Olarte ◽  
...  

Purpose This purpose of this paper is to present ISML-MDE, a model-driven environment that includes ISML, a platform-independent modeling language for enterprise applications; ISML-GEN, a code generation framework to automatically generate code from models; and LionWizard, a tool to automatically integrate different components into a unified codebase. Design/methodology/approach The development comprises five stages: standardizing architecture; refactoring and adapting existing components; automating their integration; developing a modeling language; and creating code generators. After development, model-to-code ratios in ISML-MDE are measured for different applications. Findings The average model-to-code ratio is approximately 1:4.6 when using the code generators from arbitrary models. If a model transformation is performed previously to the code generation, this ratio raises to 1:115. The current validation efforts show that ISML properly supports several DSL essential characteristics described by Kahraman and Bilgen (2015). Research limitations/implications ISML-MDE was tested on relatively small applications. Further validation of the approach requires measurement of development times and their comparison with previous similar projects, to determine the gains in productivity. Originality/value The value of ISML-MDE can be summarized as follows: ISML-MDE has the potential to significantly reduce development times, because of an adequate use of models and transformations. The design of ISML-MDE addresses real-world development requirements, obtained from a tight interaction between the researchers and the software development company. The underlying process has been thoroughly documented and it is believed it can be used as a reference for future developments of MDE tools under similar conditions.


2020 ◽  
Vol 3 (1) ◽  
Author(s):  
Daniel Damyanov ◽  
◽  
◽  

Code generation is basically about writing programs that write programs. Given today’s complex code-intensive frameworks, such as Java 2 Enterprise Edition (J2EE), Microsoft’s. NET and Microsoft Foundation Classes (MFC), it is becoming increasingly important that we use our skills to create programs which aid us in developing our applications. Generally speaking, the more complex the framework is, the more appealing you will find a code generation solution. Many object-oriented programming (OOP) languages lack reusability and flexibility, and require a similar code to be written repeatedly. This paper reviews the code generators that are most useful for implementation in applications for automatic code generations, their pros and cons, where they are most widely used nowadays, as well as their versatility. In Visual Studio we use the term “scaffolding” when we want to generate identities automatically. When we start a new ASP.NET project, it genrates a template where we start from.


2020 ◽  
Vol 34 (05) ◽  
pp. 8984-8991
Author(s):  
Zeyu Sun ◽  
Qihao Zhu ◽  
Yingfei Xiong ◽  
Yican Sun ◽  
Lili Mou ◽  
...  

A code generation system generates programming language code based on an input natural language description. State-of-the-art approaches rely on neural networks for code generation. However, these code generators suffer from two problems. One is the long dependency problem, where a code element often depends on another far-away code element. A variable reference, for example, depends on its definition, which may appear quite a few lines before. The other problem is structure modeling, as programs contain rich structural information. In this paper, we propose a novel tree-based neural architecture, TreeGen, for code generation. TreeGen uses the attention mechanism of Transformers to alleviate the long-dependency problem, and introduces a novel AST reader (encoder) to incorporate grammar rules and AST structures into the network. We evaluated TreeGen on a Python benchmark, HearthStone, and two semantic parsing benchmarks, ATIS and GEO. TreeGen outperformed the previous state-of-the-art approach by 4.5 percentage points on HearthStone, and achieved the best accuracy among neural network-based approaches on ATIS (89.1%) and GEO (89.6%). We also conducted an ablation test to better understand each component of our model.


Author(s):  
Masashi TAWADA ◽  
Shinji KIMURA ◽  
Masao YANAGISAWA ◽  
Nozomu TOGAWA

2019 ◽  
Vol 7 (5) ◽  
pp. 824-828
Author(s):  
Anaswara Venunadh ◽  
Shruthi N ◽  
Mannar Mannan

2014 ◽  
Vol 1008-1009 ◽  
pp. 659-662
Author(s):  
Hai Ke Liu ◽  
Shun Wang ◽  
Xin Gna Kang ◽  
Jin Liang Wang

The article realization of NAND FLASH control glueless interface circuit based on FPGA,comparing the advantages and disadvantages of the NAND Flash and analysising the function of control interface circuit. The control interface circuit can correct carry out the SRAM timing-input block erase, page reads, page programming, state read instructions into the required operation sequence of NAND Flash, greatly simplifies the NAND FLASH read and write timing control. According to the ECC algorithm,the realization method of ECC check code generation,error search,error correction is described.The function of operate instructions of the NAND Flash control interface circuit designed in this paper is verified on Xillinx Spartan-3 board, and the frequency can reach 100MHz.


1982 ◽  
Vol 17 (6) ◽  
pp. 32-43 ◽  
Author(s):  
Susan L. Graham ◽  
Robert R. Henry ◽  
Robert A. Schulman
Keyword(s):  

Sign in / Sign up

Export Citation Format

Share Document