Nikolaos Malamas , Emmanouil Tsardoulias , Konstantinos Panayiotou , Andreas L. Symeonidis
{"title":"Toward efficient vibe coding: An LLM-based agent for low-code software development","authors":"Nikolaos Malamas , Emmanouil Tsardoulias , Konstantinos Panayiotou , Andreas L. Symeonidis","doi":"10.1016/j.cola.2025.101367","DOIUrl":"10.1016/j.cola.2025.101367","url":null,"abstract":"<div><div>The Software Engineering (SE) domain increasingly adopts low-code and no-code approaches to simplify application development and deployment. Two dominant paradigms have emerged in this space: Model-driven Engineering (MDE), leveraging Domain-specific Languages (DSLs) to abstract implementation and reduce the knowledge and expertise required, and LLM-based vibe coding, where developers interact with Large Language Models (LLMs) using natural language, allowing for rapid prototyping and code generation through conversations. Although DSLs provide precise abstractions and formal correctness, they often require specialized knowledge and have a steep learning curve. Conversely, vibe coding enables fluid and natural interactions, but struggles with domain specificity and frequently produces erroneous or unstructured code, which is difficult to integrate into formal development workflows. To harness the strengths of both paradigms, we present <em>DSL Agent</em>, an LLM-powered conversational interface for DSL-based application development. The DSL Agent is embedded within Locsys, a modern low-code development platform. It combines the flexibility and intuitiveness of LLM-based vibe coding with the rigor of DSLs by dynamically generating accurate and valid DSL models based on user descriptions, embedded into a unified conversational interface that leverages prompt engineering and in-context learning techniques. This offers a simpler and more intuitive interface, accelerates the development process, and reduces the expertise barrier. The agent is evaluated by more than 130 workshop participants of varying expertise levels, on two DSLs of different complexity. Evaluation metrics, including valid model rate, user satisfaction, and development time, indicate a significant improvement in valid model generation, productivity, and ease of use compared to traditional DSL-based SE workflows. These results highlight the potential of the DSL Agent to improve the entire DSL-based development life cycle by offering an efficient, intuitive, and user-friendly interface.</div></div>","PeriodicalId":48552,"journal":{"name":"Journal of Computer Languages","volume":"85 ","pages":"Article 101367"},"PeriodicalIF":1.8,"publicationDate":"2025-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"145157808","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Representation and system-agnostic automated CAD interoperability testing based on model interchangeability","authors":"Duygu Sap , Daniel P. Szabo","doi":"10.1016/j.cola.2025.101365","DOIUrl":"10.1016/j.cola.2025.101365","url":null,"abstract":"<div><div>In this paper, we present theoretically-supported frameworks to test CAD system interoperability based on shape comparison criteria. We introduce a command line tool that provides indirect, representation-independent comparisons of CAD models via abstract proxies and query-based interpretations. Our frameworks support local comparisons using differential properties and offer a broad range of global comparisons. We allow testing for generic CAD software designed for different operating systems or scripting languages. Users can specify tolerance values for testing, ensuring accuracy. This approach bridges CAD model representations, enabling effective interoperability evaluation across diverse systems without requiring in-depth knowledge of CAD software or representations.</div></div>","PeriodicalId":48552,"journal":{"name":"Journal of Computer Languages","volume":"85 ","pages":"Article 101365"},"PeriodicalIF":1.8,"publicationDate":"2025-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"145095459","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Cecília Conde Kind, Michael Canesche, Fernando Magno Quintão Pereira
{"title":"Jotai: A methodology for the generation of executable C benchmarks","authors":"Cecília Conde Kind, Michael Canesche, Fernando Magno Quintão Pereira","doi":"10.1016/j.cola.2025.101368","DOIUrl":"10.1016/j.cola.2025.101368","url":null,"abstract":"<div><div>This paper presents a methodology for automatically generating well-defined executable benchmarks in C. The generation process is fully automatic: C files are extracted from open-source repositories and split into compilation units. A type reconstructor infers all the types and declarations required to ensure that functions compile. The generation of inputs is guided by constraints specified via a domain-specific language. This DSL refines the types of functions, for instance, creating relations between integer arguments and the length of buffers. Off-the-shelf tools such as <span>AddressSanitizer</span> and <span>Kcc</span> filter out programs with undefined behavior. To demonstrate applicability, this paper analyzes the dynamic behavior of different collections of benchmarks, some with up to 30 thousand samples, to support several observations: (i) the speedup of optimizations does not follow a normal distribution—a property assumed by statistical tests such as the T-test and the Z-test; (ii) there is strong correlation between number of instructions fetched and running time in x86 and in ARM processors; hence, the former—a non-varying quantity—can be used as a proxy for the latter—a varying quantity—in the autotuning of compilation tasks. The apparatus to generate benchmarks is publicly available. A collection of 18 thousand programs thus produced is also available as a <span>CompilerGym</span>’s dataset.</div></div>","PeriodicalId":48552,"journal":{"name":"Journal of Computer Languages","volume":"85 ","pages":"Article 101368"},"PeriodicalIF":1.8,"publicationDate":"2025-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"145157809","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Gabriell Araujo , Dinei A. Rockenbach , Júnior Löff , Dalvan Griebler , Luiz G. Fernandes
{"title":"A C++ annotation-based domain-specific language for expressing stream and data parallelism supporting CPU and GPU","authors":"Gabriell Araujo , Dinei A. Rockenbach , Júnior Löff , Dalvan Griebler , Luiz G. Fernandes","doi":"10.1016/j.cola.2025.101369","DOIUrl":"10.1016/j.cola.2025.101369","url":null,"abstract":"<div><div>Graphics processing units (GPUs) and central processing units (CPUs) provide massive parallel computing in our modern computer systems (e.g., servers, desktops, smartphones, and laptops), and efficiently utilizing their processing power requires expertise in parallel programming. Mainly, domain-specific languages (DSLs) address this challenge by improving productivity and abstractions. SPar is a high-level DSL that promotes parallel programming abstractions for stream and data parallelism using C++ attribute annotations for serial code. Unlike existing solutions, SPar eliminates the need to manually implement low-level mechanisms to leverage stream and data parallelism on heterogeneous systems. In this article, we design an extended version of the language and compiler algorithm for GPU code generation. We newly offer a single parallel programming model targeting CPUs and GPUs to exploit stream and data parallelism. The experiments indicated performance improvement compared with previous versions of SPar and achieved performance comparable to handwritten code using lower-level programming abstractions in specific scenarios.</div></div>","PeriodicalId":48552,"journal":{"name":"Journal of Computer Languages","volume":"85 ","pages":"Article 101369"},"PeriodicalIF":1.8,"publicationDate":"2025-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"145323872","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Zhicheng Hu , Agus Hasan , Ricardo da Silva Torres
{"title":"Fast topology density map","authors":"Zhicheng Hu , Agus Hasan , Ricardo da Silva Torres","doi":"10.1016/j.cola.2025.101371","DOIUrl":"10.1016/j.cola.2025.101371","url":null,"abstract":"<div><div>Density map visualizations have been successfully employed in various applications, particularly in the context of urban data analysis. Their computation, however, often relies on costly algorithms that hamper its practical usage. This paper introduces the Fast Topology Density Map (Fast TDM), a new algorithm that integrates graph- and image-based label propagation strategies for efficiently computing density maps based on spatiotemporal data. Fast TDM utilizes the Image-Foresting Transform (IFT) to partition the 2D space based on a given seed pixel set, enabling the computation of an Euclidean distance transform that leads to the creation of cost, label, and density maps simultaneously. Experiments considered different practical scenarios involving the computation and visualization of topology density maps on diverse topologies in terms of complexity, size, and temporal evolution. Experimental results show a significant reduction in computation time when topology density maps are computed using Fast TDM, achieving three times faster performance compared to recently proposed baselines. In addition, qualitative visualization analysis is performed, based on similarities and differences between the computed output maps with those produced by the baselines. Fast TDM can effectively replace counterparts, as it provides expedited computations with similar visual results in most cases.</div></div>","PeriodicalId":48552,"journal":{"name":"Journal of Computer Languages","volume":"85 ","pages":"Article 101371"},"PeriodicalIF":1.8,"publicationDate":"2025-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"145519579","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Francesco Bertolotti, Walter Cazzola, Luca Favalli, Dario Ostuni, Leonardo Secco
{"title":"Netskip—A novel architecture for consistent multiplayer videogame state","authors":"Francesco Bertolotti, Walter Cazzola, Luca Favalli, Dario Ostuni, Leonardo Secco","doi":"10.1016/j.cola.2025.101370","DOIUrl":"10.1016/j.cola.2025.101370","url":null,"abstract":"<div><div>In the past decades, video games have experienced a remarkable surge in popularity, making the gaming industry a multi-billion-dollar business. Simultaneously, game development has expanded beyond AAA publishers, with independent developers achieving impressive success. Today’s users are highly aware of quality standards and expect a reliable experience, especially in multiplayer games. However, traditional architectures, peer-to-peer and client–server, present complementary limitations, either from a user experience perspective (e.g., stability, latency, disconnection handling) or from a business perspective (e.g., deployment, maintenance, and scalability costs). In this work, we propose a novel architecture—dubbed <em>netskip</em>—that bridges the gap between peer-to-peer and client–server models by combining their strengths. The <em>netskip</em> architecture eliminates single points of failure and reduces deployment costs by removing the need for replicated servers, while still supporting disconnections, reconnections, and temporary network partitions. It manages game state in multiplayer settings using conflict-free replicated data types, and we formally prove that the <em>netskip</em> architecture ensures eventual consistency among nodes. Finally, we show through an empirical study using real video game traces that the <em>netskip</em> architecture delivers performance comparable to peer-to-peer and client–server architectures.</div></div>","PeriodicalId":48552,"journal":{"name":"Journal of Computer Languages","volume":"85 ","pages":"Article 101370"},"PeriodicalIF":1.8,"publicationDate":"2025-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"145416095","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"A ChatGPT-based dynamic assessment chatbot","authors":"Yung-Ting Chuang, Hui-Ting Wang","doi":"10.1016/j.cola.2025.101366","DOIUrl":"10.1016/j.cola.2025.101366","url":null,"abstract":"<div><div>Research on information tools for learning support is abundant, with many studies integrating natural language analysis and chatbots. However, existing research still struggles to provide differentiated instructional guidance tailored to the varying levels of student understanding. Therefore, this study introduces a chatbot named ChatDAC designed as educational material for university programming classes. The system utilizes a GPT-4 model, the same model as ChatGPT, to progressively provide learners with tiered hints based on categorized response types representing different levels of understanding during practice sessions, rather than solely assessing right or wrong answers conventionally. Analysis of the data revealed a significant increase in average post-test scores compared to pre-test scores for all participants, indicating that ChatDAC effectively enhances students’ programming skills. Additionally, a notable positive correlation was found between the proportion of positive responses and post-test scores. Finally, insights from questionnaires and interviews with students about ChatDAC were gathered, along with suggestions for future improvements.</div></div>","PeriodicalId":48552,"journal":{"name":"Journal of Computer Languages","volume":"85 ","pages":"Article 101366"},"PeriodicalIF":1.8,"publicationDate":"2025-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"145219478","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Lua in TeX","authors":"Hans Hagen","doi":"10.1016/j.cola.2025.101354","DOIUrl":"10.1016/j.cola.2025.101354","url":null,"abstract":"<div><div>At the end of 2023 the Lua language celebrated its 30<sup>th</sup> anniversary and in that perspective I offered to wrap up our experiences with that language in the perspective of developing TeX follow ups called LuaTeX and LuaMetaTeX. I also discuss the interplay between them and ConTeXt, an advanced macro package for TeX. For those unfamiliar with TeX I start with an overview of what that system is. Because TeX cannot do much out of the box, users normally combine it with a so called macro package, such as Plain TeX, LaTeX or ConTeXt, where the later one is what I use and whose developers also drove the development of LuaTeX and LuaMetaTeX. The usage of Lua was a natural choice due to its performance and easiness to integrate, beyond the fact that Lua is independent of additional resources. To illustrate the discussion, I present examples that show the interaction between TeX and Lua.</div></div>","PeriodicalId":48552,"journal":{"name":"Journal of Computer Languages","volume":"85 ","pages":"Article 101354"},"PeriodicalIF":1.8,"publicationDate":"2025-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"144932843","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Data management and processing for IoT & robotics in smart farming: A survey","authors":"Houssam Bazza , Sandro Bimonte , Stefano Rizzi , Hassan Badir","doi":"10.1016/j.cola.2025.101355","DOIUrl":"10.1016/j.cola.2025.101355","url":null,"abstract":"<div><div>Smart farming has garnered significant attention due to substantial advancements in robotics and IoT technologies. However, these advancements necessitate robust data management and processing guidelines to fully harness the potential of data and optimize farm production. Unfortunately, such clear guidelines are lacking in the smart farming sector, forcing practitioners and researchers to implement custom architectures for specific scenarios. This survey paper aims to examine the advancements in data management and processing within the Internet of Robotic Things (IoRT) context. After showing that the existing surveys on IoRT and smart farming barely cover these issues, we will review and classify the related literature within the framework of a reference architecture. We will conclude by listing the main open issues to be addressed in order to achieve the full potential of data-driven practices in the smart farming field.</div></div>","PeriodicalId":48552,"journal":{"name":"Journal of Computer Languages","volume":"85 ","pages":"Article 101355"},"PeriodicalIF":1.8,"publicationDate":"2025-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"144887501","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Elton M. Cardoso , Leonardo V.S. Reis , Rodrigo G. Ribeiro
{"title":"A Haskell Library for Adaptable Parsing Expression Grammars","authors":"Elton M. Cardoso , Leonardo V.S. Reis , Rodrigo G. Ribeiro","doi":"10.1016/j.cola.2025.101349","DOIUrl":"10.1016/j.cola.2025.101349","url":null,"abstract":"<div><div>Adaptable Parsing Expression Grammars (APEG) is a formal model for describing languages that provide a mechanism to extend their own syntax during the parsing process. In this work, we review the syntax and semantics of APEG, discuss the implementation of a Haskell library for building parsers for extensible languages and using it to construct an APEG parser for a tiny extensible language.</div></div>","PeriodicalId":48552,"journal":{"name":"Journal of Computer Languages","volume":"85 ","pages":"Article 101349"},"PeriodicalIF":1.8,"publicationDate":"2025-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"144893877","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}