English
Related papers

Related papers: How ISO C became unusable for operating systems de…

200 papers

Operating systems are vital system software that, without them, humans would not be able to manage and use computer systems. In essence, an operating system is a collection of software programs whose role is to manage computer resources and…

Operating Systems · Computer Science 2012-04-03 Youssef Bassil

Software systems development nowadays has moved towards dynamic composition of services that run on distributed infrastructures aligned with continuous changes in the system requirements. Consequently, software developers need to tailor…

Software Engineering · Computer Science 2020-05-12 Mahdi Fahmideh , Mohsen Sharifi , Fereidoon Shams , Hasan Haghighi

A Sense/Compute/Control (SCC) application is one that interacts with the physical environment. Such applications are pervasive in domains such as building automation, assisted living, and autonomic computing. Developing an SCC application…

Robotics · Computer Science 2013-01-25 Damien Cassou , Serge Stinckwich , Pierrick Koch

The development of Machine Learning (ML) based systems is complex and requires multidisciplinary teams with diverse skill sets. This may lead to communication issues or misapplication of best practices. Process models can alleviate these…

Software Engineering · Computer Science 2024-08-29 Sergio Morales , Robert Clarisó , Jordi Cabot

Computer Science education has been evolving over the years to reflect applied realities. Until about a decade ago, theory of computation, algorithm design and system software dominated the curricula. Most courses were considered core and…

Computers and Society · Computer Science 2022-08-10 Sreekrishnan Venkateswaran

Since the early days of computers and programs, the process and outcomes of software development has been a minefield plagued with problems and failures, as much as the complexity and complication of software and its development has…

Software Engineering · Computer Science 2020-07-20 Silvio Meira , Vanilson Burégio , Paulo Borba , Vinicius Garcia , Jones Albuquerque , Sergio Soares

Large language models have transformed AI-assisted software engineering, but current research remains biased toward high-resource languages such as Python, with weaker performance in languages like Rust and OCaml. Since real-world systems…

Software Engineering · Computer Science 2026-04-30 Chao Jiang , Dugang Liu , Cheng Wen , Zhiwu Xu , Hua Zheng , Muhammad Sadiq , Jawwad Ahmed Shamsi , Shengchao Qin , Zhong Ming

The core of a formal semantics of an imperative programming language is a memory model that describes the behavior of operations on the memory. Defining a memory model that matches the description of C in the C11 standard is challenging…

Logic in Computer Science · Computer Science 2015-09-14 Robbert Krebbers

A useful programming language needs to support writing programs that take advantage of services and communication mechanisms supplied by the operating system. We examine the problem of programming native Win32 applications under Windows…

Programming Languages · Computer Science 2007-05-23 Riccardo Pucella , Erik Meijer , Dino Oliva

This paper provides an overview of the various projects carried out within ISO committee TC 37/SC 4 dealing with the management of language (digital) resources. On the basis of the technical experience gained in the committee and the wider…

Computation and Language · Computer Science 2015-10-28 Laurent Romary

Data-driven approaches are becoming more common as problem-solving techniques in many areas of research and industry. In most cases, machine learning models are the key component of these solutions, but a solution involves multiple such…

Artificial Intelligence · Computer Science 2019-06-20 Parisa Kordjamshidi , Dan Roth , Kristian Kersting

Almost all of the current process scheduling algorithms which are used in modern operating systems (OS) have their roots in the classical scheduling paradigms which were developed during the 1970's. But modern computers have different types…

Operating Systems · Computer Science 2010-12-16 Mohammad R Nikseresht , Anil Somayaji , Anil Maheshwari

Automated production systems (aPS) are highly customized systems that consist of hardware and software. Such aPS are controlled by a programmable logic controller (PLC), often in accordance with the IEC 61131-3 standard that divides system…

Software Engineering · Computer Science 2021-08-24 Kamil Rosiak , Alexander Schlie , Lukas Linsbauer , Birgit Vogel-Heuser , Ina Schaefer

SICStus Prolog has evolved for nearly 25 years. This is an appropriate point in time for revisiting the main language and design decisions, and try to distill some lessons. SICStus Prolog was conceived in a context of multiple, conflicting…

Programming Languages · Computer Science 2010-11-29 Mats Carlsson , Per Mildner

The architectural design of software systems is not a trivial task, requiring sometimes large experience and knowledge accumulated for years. Reference architectures have been increasingly adopted as a means to support such task, also…

Software Engineering · Computer Science 2022-09-30 Edilson Soares Palma , Elisa Yumi Nakagawa , Débora Maria Barroso Paiva , Maria Istela Cagnin

How to best use Large Language Models (LLMs) for software engineering is covered in many publications in recent years. However, most of this work focuses on widely-used general purpose programming languages. The utility of LLMs for software…

Software Engineering · Computer Science 2025-11-17 Salim Fares , Steffen Herbold

Programs written in C/C++ often include inline assembly: a snippet of architecture-specific assembly code used to access low-level functionalities that are impossible or expensive to simulate in the source language. Although inline assembly…

Programming Languages · Computer Science 2024-09-04 Paulo Emílio de Vilhena , Ori Lahav , Viktor Vafeiadis , Azalea Raad

Drivers are written in C or restricted subsets of C++ on all production-grade server, desktop, and mobile operating systems. They account for 66% of the code in Linux, but 39 out of 40 security bugs related to memory safety found in Linux…

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

Dynamic languages have become popular for scientific computing. They are generally considered highly productive, but lacking in performance. This paper presents Julia, a new dynamic language for technical computing, designed for performance…

Programming Languages · Computer Science 2012-09-25 Jeff Bezanson , Stefan Karpinski , Viral B. Shah , Alan Edelman