Computational nucleic acid devices show great potential for enabling a broad range of biotechnology applications, including smart probes for molecular biology research, in vitro assembly of complex compounds, high-pre...
详细信息
Computational nucleic acid devices show great potential for enabling a broad range of biotechnology applications, including smart probes for molecular biology research, in vitro assembly of complex compounds, high-precision in vitro disease diagnosis and, ultimately, computational theranostics inside living cells. This diversity of applications is supported by a range of implementation strategies, including nucleic acid strand displacement, localization to substrates, and the use of enzymes with polymerase, nickase, and exonuclease functionality. However, existing computational design tools are unable to account for these strategies in a unified manner. This paper presents a logic programming language that allows a broad range of computational nucleic acid systems to be designed and analyzed. The language extends standard logic programming with a novel equational theory to express nucleic acid molecular motifs. It automatically identifies matching motifs present in the full system, in order to apply a specified transformation expressed as a logical rule. The language supports the definition of logic predicates, which provide constraints that need to be satisfied in order for a given rule to be applied. The language is sufficiently expressive to encode the semantics of nucleic strand displacement systems with complex topologies, together with computation performed by a broad range of enzymes, and is readily extensible to new implementation strategies. Our approach lays the foundation for a unifying framework for the design of computational nucleic acid devices.
Based on the premise that programming languages interact with one another while their popularities changes over time, we describe a technique for extracting latent features from the popularities of programming languag...
详细信息
Based on the premise that programming languages interact with one another while their popularities changes over time, we describe a technique for extracting latent features from the popularities of programming languages. We constructed a matrix in which each column consisted of a time series of partial correlation coefficients between the popularities of different languages. For the analysis, we utilized non-negative matrix factorization (NMF) to factorize the matrix into the matrices of temporal modes and mixture components. We found that the matrix was optimally factorized with three temporal modes, and the factorization results were more or less independent of factorization algorithms. In accordance with NMF, which learns a part-based representation of the matrix, the sparse property of the temporal modes illustrated different patterns of correlation strength over time. By analyzing the NMF results, we show that the most popular languages of Java, C, and C++ become more correlated as time passes and that the recent similar trends in the popularities of Java and C can be explained by the positive correlation between the two at a later stage in time. These and other characteristics of the popularity explained by NMF may provide clues to understanding the evolution of the popularity of programming language.
Since the key point of training IT specialists is based on the labor market demands and the compliance of the employer's requirements with the knowledge and skills of future programmers acquired during the trainin...
详细信息
ISBN:
(纸本)9781728138824
Since the key point of training IT specialists is based on the labor market demands and the compliance of the employer's requirements with the knowledge and skills of future programmers acquired during the training, the authors conducted a study of the Ukrainian IT labor market. To demonstrate the distinctive features of the domestic and foreign IT markets, a comparative rating of programming languages in the labor market in Ukraine and in other countries was made. A survey of IT students and experienced programmers was conducted as another factor of the study. Based on many years of the authors' teaching experience and the result of analyzing the opinions of interviewed programmers, the requirements for the first programming language studied in universities by IT-students were determined. According to these requirements, a system of numerical evaluation of practical criteria for the first languageprogramming selection among the most demanded ones was worked out. A total rating for each language was created in order to identify the most suitable programming language for teaching the beginners.
Very few studies have looked at repositories' programming language survivability in response to forking conditions. A high number of repository programming languages does not alone ensure good forking performance....
详细信息
ISBN:
(纸本)9781450363198
Very few studies have looked at repositories' programming language survivability in response to forking conditions. A high number of repository programming languages does not alone ensure good forking performance. To address this issue and assist project owners in adopting the right programming language, it is necessary to predict programming language survivability from forking in repositories. This paper therefore addresses two related questions: are there statistically meaningful patterns within repository data and, if so, can these patterns be used to predict programming language survival? To answer these questions we analysed 47,000 forking instances in 1000 GitHub projects. We used Euclidean distance applied in the K-Nearest Neighbour algorithm to predict the distance between repository file longevity and forking conditions. We found three pattern types (`once-only', intermittent or steady) and propose reasons for short-lived programming languages.
Fyr is an open source systems programming language that combines the versatility of C with the ease and safety of modern application programming languages such as Java and Go. Fyr uses manual memory management to supp...
详细信息
ISBN:
(纸本)9781450359337
Fyr is an open source systems programming language that combines the versatility of C with the ease and safety of modern application programming languages such as Java and Go. Fyr uses manual memory management to support systems where memory is a scarce resource, especially networked IoT devices. Fyr guarantees memory safety and thread safety. These safety guarantees are built on a combination of compile-time type checking, control-flow checking and runtime reference counting where necessary. We show that Fyr allows for more flexibility and simpler code than Rust, especially when working with heap data structures.
An important benefit of formal methods is the ability to unambiguously describe the requirements of a program and to provide evidence of the compliance of the software code with these requirements. However, formal ana...
详细信息
ISBN:
(纸本)9781728106496
An important benefit of formal methods is the ability to unambiguously describe the requirements of a program and to provide evidence of the compliance of the software code with these requirements. However, formal analysis on programs written in languages that are used today in avionics can be challenging since these languages have features, such as pointers, that complicate program verification. So, to enable formal verification, one must limit the language to a subset and/or one must endure a considerable annotation overhead. This paper presents Sim, a new high-level programming language that is designed for the development and verification of safety-critical software. The Sim language has been designed so that only a small annotation overhead is needed and one can make extensive use of automatic verification tools. We show that in Sim 4 to 5 times fewer annotations are needed compared to programs written in VeriFast-C to prove equivalent properties. We additionally demonstrate that Sim is suitable as a language for avionics software development by implementing and verifying an elementary fly-by-wire application and deploying it on an STM32 microcontroller.
This work presents GoDonnie a programming language to command a robot to improve orientation and mobility (O&M) skills in people who are visually impaired (PVI). The GoDonnie programming language is based on the L...
详细信息
ISBN:
(纸本)9781450366762
This work presents GoDonnie a programming language to command a robot to improve orientation and mobility (O&M) skills in people who are visually impaired (PVI). The GoDonnie programming language is based on the Logo language. GoDonnie runs in a programming environment called Donnie. This environment has a 2D graphic simulator with a virtual robot, in which one can visualise and receive sound feedback from the execution of the language commands for moving the virtual robot in the environment. GoDonnie has been evaluated with PVI to verify its usability and support to O&M. The results indicate that GoDonnie has good usability, supports the development of O&M in PVI and meets the expectations regarding the programming environment. A video of GoDonnie execution is available in https://***/HE__sAgfNBo
In today's world, we have a lot of programming languages. Which can realize our needs, but the important issue is, how to teach programming language in a very effective way to freshmen. Well, in that case, python ...
详细信息
ISBN:
(纸本)9781450376570
In today's world, we have a lot of programming languages. Which can realize our needs, but the important issue is, how to teach programming language in a very effective way to freshmen. Well, in that case, python can be a suitable language for both learning and real-world programming. It is a high-level, object-oriented programming language created by Guido Van Rossum was released in 1991. After python released day by day, it has become one of the most famous and demanding programming languages all over the world. In this paper will introduce and discuss python programming characteristics / features, organized syntax, and its powerful tools which help to solve many tasks also it is very close to simple math thinking. We tried to find out the recent trend/demand for python programming language in Bangladesh by operated a survey under faculty member from various universities, freelancer programmers and students from engineering studies. Also, make some simple comparison between python and other languages. From there we have figure out the most demanding features, characteristics of python language and the types of programming language supported by python. Python is now the most demanded and fastest-growing language which is founded by the support of researches done over many articles of various magazines and popular websites.
language models are applied to the programming language. However, the existing language models may be confused with different tokens with the same name in different scopes and can generate the syntax error code. In th...
详细信息
ISBN:
(纸本)9781728119854
language models are applied to the programming language. However, the existing language models may be confused with different tokens with the same name in different scopes and can generate the syntax error code. In this paper, we proposed a grammar language model to solve these two problems. The model is an improved recurrent neural network language model. The improved recurrent neural network language model has the scope-awared input feature and the grammar output mask. We evaluated our model and existing language models on a C99 code dataset. Our model gets a perplexity value of 2.91 and a top-1 accuracy rate of 74.23 % which is much better than other models.
language designers and early adopters make different claims about their languages to differentiate them from others in order to attract users. Unfortunately, some of such claims are not supported by strong evidence. M...
详细信息
ISBN:
(纸本)9781450369923
language designers and early adopters make different claims about their languages to differentiate them from others in order to attract users. Unfortunately, some of such claims are not supported by strong evidence. Moreover, the nature of languages as a special software tool makes it difficult to find objective measures to quantify and compare them per se. One approach to provide objective information about languages is empirical comparison. Hence, this research studies the usage and practice of programming languages based on mining modern, popular, existing software repositories in order to understand and characterize their effect on developing open source software. That is, to compare open source projects written in different languages to understand similarities and examine differences among them.
暂无评论