English
Related papers

Related papers: Pattern Atlas

200 papers

The technological landscape changes daily, making it nearly impossible for a single person to be aware of all trends or available tools that may or may not be suitable for their software project. This makes tool selection and architectural…

Software Engineering · Computer Science 2025-09-15 Sebastian Copei , Oliver Hohlfeld , Jens Kosiol

Performing dependability evaluation along with other analyses at architectural level allows both making architectural tradeoffs and predicting the effects of architectural decisions on the dependability of an application. This paper gives…

Software Engineering · Computer Science 2008-09-25 Ana-Elena Rugina , Peter H. Feiler , Karama Kanoun , Mohamed Kaaniche

Pattern matching is a popular feature in functional, imperative and object-oriented programming languages. Language designers should therefore invest effort in a good design for pattern matching. Most languages choose a first-match…

Programming Languages · Computer Science 2025-10-16 David Binder , Lean Ermantraut

Words in some natural languages can have a composite structure. Elements of this structure include the root (that could also be composite), prefixes and suffixes with which various nuances and relations to other words can be expressed.…

Computation and Language · Computer Science 2017-09-05 Rustem Takhanov , Zhenisbek Assylbekov

Pattern matching is a powerful tool which is part of many functional programming languages as well as computer algebra systems such as Mathematica. Among the existing systems, Mathematica offers the most expressive pattern matching.…

Symbolic Computation · Computer Science 2017-05-03 Manuel Krebber

The mid-1990s saw the design of programming languages for software architectures, which define the high-level aspects of software systems including how code components were composed to form full systems. Our paper "Abstractions for Software…

Software Engineering · Computer Science 2025-03-07 Mary Shaw , Daniel V. Klein , Theodore L. Ross

Quantum computing provides computational advantages in various domains. To benefit from these advantages complex hybrid quantum applications must be built, which comprise both quantum and classical programs. Engineering these applications…

Utilising quantum computing technology to enhance artificial intelligence systems is expected to improve training and inference times, increase robustness against noise and adversarial attacks, and reduce the number of parameters without…

Software Engineering · Computer Science 2024-12-18 Mykhailo Klymenko , Thong Hoang , Xiwei Xu , Zhenchang Xing , Muhammad Usman , Qinghua Lu , Liming Zhu

Foundation model-enabled generative artificial intelligence facilitates the development and implementation of agents, which can leverage distinguished reasoning and language processing capabilities to takes a proactive, autonomous role to…

Artificial Intelligence · Computer Science 2024-11-07 Yue Liu , Sin Kit Lo , Qinghua Lu , Liming Zhu , Dehai Zhao , Xiwei Xu , Stefan Harrer , Jon Whittle

Haskell is a popular choice for hosting deeply embedded languages. A recurring challenge for these embeddings is how to seamlessly integrate user defined algebraic data types. In particular, one important, convenient, and expressive feature…

Programming Languages · Computer Science 2022-08-01 Trevor L. McDonell , Joshua D. Meredith , Gabriele Keller

Architecture styles characterise families of architectures sharing common characteristics. We have recently proposed configuration logics for architecture style specification. In this paper, we study a graphical notation to enhance…

Software Engineering · Computer Science 2016-08-12 Anastasia Mavridou , Eduard Baranov , Simon Bliudze , Joseph Sifakis

High-performance computing systems (HPC) provide powerful capabilities for modeling, simulation, and data analytics for a broad class of computational problems. They enable extreme performance of the order of quadrillion floating-point…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-11-01 Saurabh Hukerikar , Christian Engelmann

A software architecture defines the blueprints of a large computational system, and is thus a crucial part of the design and development effort. This task has been explored extensively in the context of mobile robots, resulting in a…

Robotics · Computer Science 2023-09-08 Henrik Andreasson , Giorgio Grisetti , Todor Stoyanov , Alberto Pretto

Pattern-Oriented Analysis and Design (POAD) is the practice of building complex software by applying proven designs to specific problem domains. Although a great deal of research and practice has been devoted to formalizing existing design…

Software Engineering · Computer Science 2008-02-27 Jerry Overton

Machine Learning models from other fields, like Computational Linguistics, have been transplanted to Software Engineering tasks, often quite successfully. Yet a transplanted model's initial success at a given task does not necessarily mean…

Software Engineering · Computer Science 2020-09-02 Yangruibo Ding , Baishakhi Ray , Premkumar Devanbu , Vincent J. Hellendoorn

A software architecture is the result of multiple decisions made by a software architect. These decisions are called architectural decisions, as they bring solutions to architectural problems. Relations between decisions can be captured in…

Software Engineering · Computer Science 2018-07-10 Marcin Szlenk

For efficiency reasons, the software system designers' will is to use an integrated set of methods and tools to describe specifications and designs, and also to perform analyses such as dependability, schedulability and performance. AADL…

Performance · Computer Science 2007-05-23 Ana-Elena Rugina , Karama Kanoun , Mohamed Kaaniche

Today, data guides the decision-making process of most companies. Effectively analyzing and manipulating data at scale to extract and exploit relevant knowledge is a challenging task, due to data characteristics such as its size, the rate…

Software Engineering · Computer Science 2025-03-24 Arianna Dragoni , Alessandro Margara

Software requirements expressed in natural language (NL) frequently suffer from verbosity, ambiguity, and inconsistency. This creates a range of challenges, including selecting an appropriate architecture for a system and assessing…

Software Engineering · Computer Science 2025-04-09 Tooraj Helmi

Public model repositories now contain millions of models, yet most models remain undocumented and effectively lost. In this position paper, we advocate for charting the world's model population in a unified structure we call the Model…

Machine Learning · Computer Science 2025-06-04 Eliahu Horwitz , Nitzan Kurer , Jonathan Kahana , Liel Amar , Yedid Hoshen