22 papers · ranked by Valyu relevance
Chengxun Shu, Hongyu Zhang
Programming by Example (PBE) targets at automatically inferring a computer program for accomplishing a certain task from sample input and output. In this paper, we propose a deep neural networks (DNN) based PBE model called Neural Programming by Example (NPBE), which can learn from input-output strings and induce…
Jiarong Wu, Lili Wei, Yanyan Jiang, Shing-Chi Cheung + 2 more
'Chang Xu'] Programming by example (PBE) is an emerging programming paradigm that automatically synthesizes programs specified by user-provided input-output examples. Despite the convenience for end-users, implementing PBE tools often requires strong expertise in programming language and synthesis algorithms. Such a…
Ruhma Khan, Sumit Gulwani, Vu Le, Arjun Radhakrishna + 2 more
'Gust Verbruggen'] Program synthesis from input-output examples, also called programming by example (PBE), has had tremendous impact on automating end-user tasks. Large language models (LLMs) have the ability to solve PBE tasks by generating code in different target languages, but they can fail unpredictably. To…
Hila Peleg, Sharon Shoham, Eran Yahav
In recent years, there has been tremendous progress in automated synthesis techniques that are able to automatically generate code based on some intent expressed by the programmer. A major challenge for the adoption of synthesis remains in having the programmer communicate their intent. When the expressed intent is…
Wengran Wang, Archit Kwatra, James Skripchuk, Neeloy Gomes + 4 more
'Alexandra Milliken' 'Chris Martens' 'Tiffany Barnes' 'Thomas Price'] Open-ended programming increases students' motivation by allowing them to solve authentic problems and connect programming to their own interests. However, such open-ended projects are also challenging, as they often encourage students to explore new…
Oscar Nierstrasz, Andrei Chiş, Tudor Gîrba
Software systems should be explainable, that is, they should help us to answer questions while exploring, developing or using them. Textual documentation is a very weak form of explanation, since it is not causally connected to the code, so easily gets out of date. Tests, on the other hand, are causally connected to…
Peter Steffen, Robert Giegerich
Background Dynamic programming is a widely used programming technique in bioinformatics. In sharp contrast to the simplicity of textbook examples, implementing a dynamic programming algorithm for a novel and non-trivial application is a tedious and error prone task. The algebraic dynamic programming approach seeks to…
Ali Arya
| 3 | Table of Content | | --- | --- | | Preface 8 | | | Notes 10 | | | 10 | Code Examples | | Signage and Numbering 11 | | | 12 | Chapter 1: Introduction | | 12 | 1.1. At the Restaurant | | 15 | 1.2. Algorithms | | 1.3. Programs 17 | | | 1.4. Programming and Algorithmic Thinking 21 | | | 25 | 1.5. Modularization | |…
Berk Ekmekci, Charles E. McAnany, Cameron Mura, Francis Ouellette
Computing has revolutionized the biological sciences over the past several decades, such that virtually all contemporary research in molecular biology, biochemistry, and other biosciences utilizes computer programs. The computational advances have come on many fronts, spurred by fundamental developments in hardware…
Gilderlanio Santana de Araújo
Teaching computer programming is not a simple task and it is challenging to introduce the concepts of programming in graduate programs of other fields. Little efforts have been made on engaging students in computational development after programming trainings. An emerging need is to establish subjects of bioinformatics…
Yun-Fei Liu, Marina Bedny
Programming is a cornerstone of modern society, yet its cognitive and neural basis remains poorly understood. In this study, we test the hypothesis that programming “recycles” pre-existing neural mechanisms and representations in fronto-parietal reasoning networks. Using fMRI, we scanned programming-naïve…
Cristina David, Daniel Kroening
Program synthesis is the mechanized construction of software, dubbed ‘self-writing code’. Synthesis tools relieve the programmer from thinking about how the problem is to be solved; instead, the programmer only provides a description of what is to be achieved. Given a specification of what the program should do, the…
Jan Aerts, Andy Law
The Ruby programming language has a lot to offer to any scientist with electronic data to process. Not only is the initial learning curve very shallow, but its reflection and meta-programming capabilities allow for the rapid creation of relatively complex applications while still keeping the code short and readable.…
Tyler Sano, Mohammad Julker Neyen Sampad, Jesus Gonzalez-Ferrer, Sebastian Hernandez + 8 more
Despite many interventions, science education remains highly inequitable throughout the world. Among all life sciences fields, Bioinformatics and Computational Biology suffer from the strongest underrepresentation of racial and gender minorities. Internet-enabled project-based learning (PBL) has the potential to reach…
Muhammad Shoaib Farooq, Sher Afzal Khan, Farooq Ahmad, Saeed Islam + 2 more
'Adnan Abid' 'Hussein Suleman'] Computer programming is the core of computer science curriculum. Several programming languages have been used to teach the first course in computer programming, and such languages are referred to as first programming language (FPL). The pool of programming languages has been evolving…
Bohdan B Khomtchouk, Edmund Weitz, Peter D Karp, Claes Wahlestedt
We present a rationale for expanding the presence of the Lisp family of programming languages in bioinformatics and computational biology research. Put simply, Lisp-family languages enable programmers to more quickly write programs that run faster than in other languages. Languages such as Common Lisp, Scheme and…
Authors not listed
Electrochemiluminescence (ECL) is a vital analytical technique widely used in immunosensing and emerging applica-tions in biological imaging. Traditional ECL simulations rely on finite element methods, which provide valuable insights into reaction dynamics and spatial distribution of species. However, such methods are…
George Dimitriadis, Ella Svahn, Andrew MacAskill, Athena Akrami
To realise a research project idea, an experimenter faces a series of conflicting design and implementation considerations, regarding both its hardware and software components. For instance, the ease of implementation, in time and expertise, should be balanced against the ease of future reconfigurability and number of…
Babu Bassa
In this communication the author describes a software tool named "ChameleonSort". The software program, developed by the present author is useful in the sorting of biological sequence variants like those accumulating mutations while diverging from the common ancestors. Examples include viral protein variants, protein…
Ihsan Tolga Medeni, Metehan Ünal, Roberto Galizi, Bryan Bartley + 4 more
Large language models have transformed software engineering practices. However, generated artefacts are not always developer-friendly and may partially meet complex requirements. As the need to standardise, integrate, and develop tools in engineering biology increases, novel approaches are needed to create and maintain…
Vaishnavi Ananthanarayanan, William Thies
Background Published descriptions of biology protocols are often ambiguous and incomplete, making them difficult to replicate in other laboratories. However, there is increasing benefit to formalizing the descriptions of protocols, as laboratory automation systems (such as microfluidic chips) are becoming increasingly…
Authors not listed
Curried functions provide a systematic way of transforming multi-argument functions into nested singleargument functions. This transformation allows partial application and supports many central principles of functional programming. Their extension, called curried 𝑘-ary functions, naturally generalizes the familiar…