For various reasons, programming languages continue to multiply and evolve. It has become necessary to have a multilingual clone detection tool that can easily expand supported programming languages and detect various...
详细信息
ISBN:
(纸本)9781450392983
For various reasons, programming languages continue to multiply and evolve. It has become necessary to have a multilingual clone detection tool that can easily expand supported programming languages and detect various code clones is needed. However, research on multilingual code clone detection has not received sufficient attention. In this study, we propose MSCCD (Multilingual Syntactic Code Clone Detector), a grammar pluggable code clone detection tool that uses a parser generator to generate a code block extractor for the target language. The extractor then extracts the semantic code blocks from a parse tree. MSCCD can detect Type-3 clones at various granularities. We evaluated MSCCD's language extensibility by applying MSCCD to 20 modern languages. Sixteen languages were perfectly supported, and the remaining four were provided with the same detection capabilities at the expense of execution time. We evaluated MSCCD's recall by using BigCloneEval and conducted a manual experiment to evaluate precision. MSCCD achieved equivalent detection performance equivalent to state-of-the-art tools.
This paper presents some of the design decisions that had to be taken and solutions that were adopted during the development of a compiler for a subset of Object Pascal programming language. The compiler is part of a ...
详细信息
ISBN:
(纸本)9781424408122
This paper presents some of the design decisions that had to be taken and solutions that were adopted during the development of a compiler for a subset of Object Pascal programming language. The compiler is part of a project that has the purpose of facilitating the rapid development of Palm OS applications. The paper details the structure and functions of the compiler's components. The final part of the paper presents the virtual machines that execute the virtual object code generated by the compiler.
There is a challenge of developing computer programming visual language in the sphere of interdisciplinary research - cybernetics and philosophy, in particular, philosophy of mathematics, philosophy of language and ne...
详细信息
ISBN:
(纸本)9781467393119
There is a challenge of developing computer programming visual language in the sphere of interdisciplinary research - cybernetics and philosophy, in particular, philosophy of mathematics, philosophy of language and new area of the philosophical analysis - "philosophy of information". We consider the aspect "language - thinking" and the stages of developing interaction between a person and information environment by means of programs. We set up the problem concerning the necessity to find the ways of constructing software by nonprofessionals. We offer the efficient way to eliminate the distinction in the system "interface-software programming language" via using visual programming language as a tool for people to communicate with machine. We designate the prospects of using visual programming languages and difficulties in their creation and implementation. We conclude that developing cloud technologies opens up new opportunities to make cross-subject tools of creating and changing software functionality by people without professional qualifications in programming. It is noted that developing and using visual languages can have considerable impact on the development of nano-bio-info-cogno technologies (NBIC) as well as on the research in the field of cognitive management, artificial intelligence as modeling visual thinking and other research areas. We recommend further understanding how to use visual programming languages in social, philosophical and psychological aspects.
The environment is now considered as a first class abstraction in multiagent systems. However, the boundary between real and simulated environment and the application logic is not so well defined. Depending on applica...
详细信息
The environment is now considered as a first class abstraction in multiagent systems. However, the boundary between real and simulated environment and the application logic is not so well defined. Depending on applications, the environment as a space shared between agents may integrate physical, communication or social dimensions where agents interact. In this paper, authors introduce an agent environment model supporting the intrasic distributed and hierarchical natures of the environment. It is defined using the fundamental concepts provided by metamodel related to the SARL programming language. (C) 2015 The Authors. Published by Elsevier B.V.
Software programs are often written in more than one programming language as the emergence of domain specific languages testifies. language interpreters are easily embeddable and performances are usually satisfactory....
详细信息
ISBN:
(纸本)9788024823911
Software programs are often written in more than one programming language as the emergence of domain specific languages testifies. language interpreters are easily embeddable and performances are usually satisfactory. However, inter-language interaction remains a field tarnished by poor performances. The reason is that alien objects are wrapped, implying the use of expensive forwarding and converting mechanism. We propose to represent alien objects as the set of different states and behaviors it may have by moving between languages, thus avoiding wrapping and conversion. We have validated our solution on integration of Java and Smalltalk programming languages.
Software developers are often interested in particular changes in programs that are relevant to their current tasks: not all changes to evolving software are equally important. However, most existing differencing tool...
详细信息
Various programmable networks have been designed and implemented during the last couple of years. Many of them are focused on a single programming language only. This limitation might-to a certain extend-hinder the pr...
详细信息
ISBN:
(纸本)3540212507
Various programmable networks have been designed and implemented during the last couple of years. Many of them are focused on a single programming language only. This limitation might-to a certain extend-hinder the productivity of service modules being programmed for such networks. Therefore, the concurrent support of service modules written in multiple programming languages was investigated within the FlexiNet project. Basically, support for three major programming paradigms was incorporated into FlexiNet: compiled programming languages like C, interpreted languages (e.g., Java), and hardware description languages such as VHDL. The key concept can be seen in an integral interface that is used by all three programming languages. This leads to a configuration scheme which is totally transparent to the programming languages used to develop the service. In order to get a better idea about the impact of the programming language used, some measurement experiments were conducted.
MATLAB is a convenient platform for the development and management of psychological experiments because of its easy-to-use programming language, sophisticated graphics features, and statistics and optimization tools. ...
详细信息
MATLAB is a convenient platform for the development and management of psychological experiments because of its easy-to-use programming language, sophisticated graphics features, and statistics and optimization tools. Through implementation of the Brainard-Pelli Psychophysics Toolbox, the MATLAB user gains close temporal and spatial control over the CRT, while retaining the simplicity of an interpreted language conducive to rapid program development. MATLAB's abilities can be further utilized through easily programmable graphical user interfaces (GUIs). We illustrate how a GUT can serve as a powerful and intuitive tool for organizing and controlling all aspects of a psychological experiment, including design, data collection, data analysis, and theory fitting.
People program in many different programming languages in the multi-core era, but how does each programming language affect application scalability with transactional memory? As commercial implementations of Hardware ...
详细信息
ISBN:
(纸本)9781479905539
People program in many different programming languages in the multi-core era, but how does each programming language affect application scalability with transactional memory? As commercial implementations of Hardware Transactional Memory (HTM) enter the market, the HTM support in two major programming languages, C and Java, is of critical importance to the industry. We studied the scalability of the same transactional memory applications written in C and Java, using the STAMP benchmarks. We performed our HTM experiments on an IBM mainframe zEnterprise EC12. We found that in 4 of the 10 STAMP benchmarks Java was more scalable than C. The biggest factor in this higher scalability was the efficient thread-local memory allocator in our Java VM. In two of the STAMP benchmarks C was more scalable because in C padding can be inserted efficiently among frequently updated fields to avoid false sharing. We also found Java VM services could cause severe aborts. By fixing or avoiding these problems, we confirmed that C and Java had similar HTM scalability for the STAMP benchmarks.
暂无评论