English
Related papers

Related papers: The Essence of Inheritance

200 papers

Integrating architectural elements with a modern programming language is essential to ensure a smooth combination of architectural design and programming. In this position statement, we motivate a combination of architectural description…

Software Engineering · Computer Science 2014-09-09 Arne Haber , Jan Oliver Ringert , Bernhard Rumpe

There are a lot of different programming paradigms. Since all Turing-complete programming languages are formally equivalent (they have the same ability to express any computable problem), the existence of so many different paradigms may…

Programming Languages · Computer Science 2024-12-03 Oscar Plaisant , Max Lemoine

In Software Reengineering, one of the central artifacts is the source code of the legacy system in question. In fact, in most cases it is the only definitive artifact, because over the time the code has diverged from the original…

Software Engineering · Computer Science 2011-11-22 Tassilo Horn

Culture evolves, not just in the trivial sense that cultures change over time, but also in the strong sense that such change is governed by Darwinian principles. Both biological and cultural evolution are essentially cumulative selection…

Populations and Evolution · Quantitative Biology 2016-09-16 Chris Buskes

Combinatorial evolution - the creation of new things through the combination of existing things - can be a powerful way to evolve rather than design technical objects such as electronic circuits. Intriguingly, this seems to be an ongoing…

Software Engineering · Computer Science 2021-11-23 Sebastian Fix , Thomas Probst , Oliver Ruggli , Thomas Hanne , Patrik Christen

Mastering one or more programming languages has historically been the gateway to implementing ideas on a computer. Today, that gateway is widening with advances in large language models (LLMs) and artificial intelligence (AI)-powered coding…

Computers and Society · Computer Science 2025-11-25 Douglas C. Schmidt , Dan Runfola

A multitude of different probabilistic programming languages exists today, all extending a traditional programming language with primitives to support modeling of complex, structured probability distributions. Each of these languages…

Programming Languages · Computer Science 2013-12-17 Luc De Raedt , Angelika Kimmig

Since the introduction of the Fortran programming language some 60 years ago, there has been little progress in making error messages more user-friendly. A first step in this direction is to translate them into the natural language of the…

Computers and Society · Computer Science 2015-08-21 Bertrand Roehner

The relation between Science (what we can explain) and Art (what we can't) has long been acknowledged and while every science contains an artistic part, every art form also needs a bit of science. Among all scientific disciplines,…

Programming Languages · Computer Science 2018-04-03 Didier Verna

Our goal is to build systems which write code automatically from the kinds of specifications humans can most easily provide, such as examples and natural language instruction. The key idea of this work is that a flexible combination of…

Artificial Intelligence · Computer Science 2019-06-06 Maxwell Nye , Luke Hewitt , Joshua Tenenbaum , Armando Solar-Lezama

These patterns describe the strategies I use to find novel or unorthodox insights in the area of software design and research. The patterns are driven by inconsistencies between what we say and what we do, and they provide techniques for…

Software Engineering · Computer Science 2024-06-11 Mary Shaw

Efforts to push programming beyond static textual code have sought to imbue programming with multiple distinct qualities. One long-acknowledged quality is liveness: providing programmers with in-depth feedback about a program's dynamic…

Programming Languages · Computer Science 2023-03-14 Joshua Horowitz , Jeffrey Heer

That computers should be easy to learn and use is a rarely-questioned tenet of user interface design. But what do we gain from prioritising usability and learnability, and what do we lose? I explore how simplicity is not an inevitable truth…

Human-Computer Interaction · Computer Science 2023-06-05 Advait Sarkar

Language understanding entails not just extracting the surface-level meaning of the linguistic input, but constructing rich mental models of the situation it describes. Here we propose that because processing within the brain's core…

Computation and Language · Computer Science 2025-11-26 Colton Casto , Anna Ivanova , Evelina Fedorenko , Nancy Kanwisher

While we do not always use words, communicating what we want to an AI is a conversation -- with ourselves as well as with it, a recurring loop with optional steps depending on the complexity of the situation and our request. Any given…

Human-Computer Interaction · Computer Science 2023-09-06 Elena L. Glassman

Working with stories and working with computations require very different modes of thought. We call the first mode "story-thinking" and the second "computational-thinking". The aim of this curiosity-driven paper is to explore the nature of…

Computation and Language · Computer Science 2022-07-01 Austen Rainer , Catherine Menon

We formally introduce an inheritance mechanism for the Shape Expressions language (ShEx). It is inspired by inheritance in object-oriented programming languages, and provides similar advantages such as reuse, modularity, and more flexible…

Selection through iterated learning explains no more than other non-functional accounts, such as universal grammar, why language is so well-designed for communicative efficiency. It does not predict several distinctive features of language…

Computation and Language · Computer Science 2011-08-23 Jean-Louis Dessalles

Software developers and maintainers need to read and understand source programs and other software artifacts. The increase in size and complexity of software drastically affects several quality attributes, especially understandability and…

Software Engineering · Computer Science 2010-04-27 Mohd Nazir , Raees A. Khan , Khurram Mustafa

For the past several decades, programmers have been modeling things in the world with trees using hierarchies of classes and object-oriented programming (OOP) languages. In this paper, we describe a novel approach to programming, called…

Programming Languages · Computer Science 2015-01-06 Alexandr Savinov