Journal of Computer Languages最新文献

筛选
英文 中文
MTable: Visual query interface for browsing and navigation in NoSQL data stores MTable:可视化查询界面,用于浏览和导航NoSQL数据存储
IF 1.7 3区 计算机科学
Journal of Computer Languages Pub Date : 2024-12-05 DOI: 10.1016/j.cola.2024.101312
Kanika Soni, Shelly Sachdeva
{"title":"MTable: Visual query interface for browsing and navigation in NoSQL data stores","authors":"Kanika Soni,&nbsp;Shelly Sachdeva","doi":"10.1016/j.cola.2024.101312","DOIUrl":"10.1016/j.cola.2024.101312","url":null,"abstract":"<div><div>Almost all human endeavors in the era of the digital revolution, from commercial and industrial processes to scientific and medical research, depend on the use of ever-increasing amounts of data. However, this humungous data and its complexity make data exploration and querying challenging even for experts. This led to the demand for easy access to data, even for naive users, all the more evident. Considering this, the database community has tilted toward NoSQL Data stores. While there has been much study on query formulation assistance for NoSQL data stores, many users still want help when specifying complex queries (such as aggregation pipeline queries), which require an in-depth understanding of the data storage architecture of a specific NoSQL data store. To help users perform interactive browsing and navigation in NoSQL data stores (MongoDB), this paper proposes a novel, simple, and user-friendly interface, MTable, that provides users with a presentation-level interactive view. This view compactly presents the query results from multiple embedded documents within a single tabular format compared to MongoDB's find operation, which always returns the main document. A certain cell of the MTable contains clickable hyperlinks for users to interact directly with the data persisted in the document stores. This helps the users to incrementally construct complex queries and navigate the document stores without worrying about the tedious task of writing complex queries. In a user study, participants performed various querying tasks faster with MTable than with the traditional querying mechanism. MTable has received positive subjective feedback as well.</div></div>","PeriodicalId":48552,"journal":{"name":"Journal of Computer Languages","volume":"82 ","pages":"Article 101312"},"PeriodicalIF":1.7,"publicationDate":"2024-12-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"143101471","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}
引用次数: 0
Mental stress analysis by measuring heart rate variability during learning programming: Comparison of visual- and text-based languages 通过测量学习编程过程中的心率变异性来分析精神压力:基于视觉和基于文本的语言的比较
IF 1.7 3区 计算机科学
Journal of Computer Languages Pub Date : 2024-12-03 DOI: 10.1016/j.cola.2024.101311
Katsuyuki Umezawa , Takumi Koshikawa , Makoto Nakazawa , Shigeichi Hirasawa
{"title":"Mental stress analysis by measuring heart rate variability during learning programming: Comparison of visual- and text-based languages","authors":"Katsuyuki Umezawa ,&nbsp;Takumi Koshikawa ,&nbsp;Makoto Nakazawa ,&nbsp;Shigeichi Hirasawa","doi":"10.1016/j.cola.2024.101311","DOIUrl":"10.1016/j.cola.2024.101311","url":null,"abstract":"<div><div>Visual-based programming languages that facilitate block-based coding have gained popularity as introductory methods for learning programming. Conversely, programming experts typically use text-based programming languages like C and Java. Nevertheless, a seamless method for transitioning from a visual- to text-based language has yet to be developed. Therefore, our research project aims to develop a methodology that facilitates this transition by bridging the gap between the two languages and verifying the variations in the biometric information of learners of both languages. In this study, we measured the participants’ heart rate variability (HRV) and evaluated variations in mental stress experienced while learning visual- and text-based languages. The experimental results confirmed that participants proficient in text-based languages experienced lower HRV (indicating higher stress levels) when learning visual-based languages. Conversely, those poorly proficient in text-based languages exhibited higher HRVs (indicating more favorable stress levels) while learning text-based languages. This study successfully observed differences in stress levels while learning both language types using experimental methods. These findings serve as a preliminary step toward clarifying the impact of stress experienced during learning outcomes and identifying the factors that constitute beneficial stress. This study establishes a foundation for an intermediate language that can enhance transitions between the two types of languages.</div></div>","PeriodicalId":48552,"journal":{"name":"Journal of Computer Languages","volume":"82 ","pages":"Article 101311"},"PeriodicalIF":1.7,"publicationDate":"2024-12-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"143101470","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}
引用次数: 0
Combining type inference techniques for semi-automatic UML generation from Pharo code 结合类型推断技术,从 Pharo 代码中半自动生成 UML
IF 1.7 3区 计算机科学
Journal of Computer Languages Pub Date : 2024-11-14 DOI: 10.1016/j.cola.2024.101300
Jan Blizničenko, Robert Pergl
{"title":"Combining type inference techniques for semi-automatic UML generation from Pharo code","authors":"Jan Blizničenko,&nbsp;Robert Pergl","doi":"10.1016/j.cola.2024.101300","DOIUrl":"10.1016/j.cola.2024.101300","url":null,"abstract":"<div><div>This paper explores how to reconstruct UML diagrams from dynamically typed languages such as Smalltalk, which do not use explicit type information. This lack of information makes traditional methods for extracting associations difficult. It addresses the need for automated techniques, particularly in legacy software systems, to facilitate their transformation into modern technologies, focusing on Smalltalk as a case study due to its extensive industrial legacy and modern adaptations like Pharo. We propose a way to create UML diagrams from Smalltalk code, focusing on using type inference to determine UML associations. For optimal outcomes for large-scale software systems, we recommend combining different type inference methods in an automatic or semi-automatic way.</div></div>","PeriodicalId":48552,"journal":{"name":"Journal of Computer Languages","volume":"82 ","pages":"Article 101300"},"PeriodicalIF":1.7,"publicationDate":"2024-11-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"142699583","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}
引用次数: 0
An efficient instance selection algorithm for fast training of support vector machine for cross-project software defect prediction pairs 用于跨项目软件缺陷预测对支持向量机快速训练的高效实例选择算法
IF 1.7 3区 计算机科学
Journal of Computer Languages Pub Date : 2024-10-23 DOI: 10.1016/j.cola.2024.101301
Manpreet Singh, Jitender Kumar Chhabra
{"title":"An efficient instance selection algorithm for fast training of support vector machine for cross-project software defect prediction pairs","authors":"Manpreet Singh,&nbsp;Jitender Kumar Chhabra","doi":"10.1016/j.cola.2024.101301","DOIUrl":"10.1016/j.cola.2024.101301","url":null,"abstract":"<div><div>SVM is limited in its use for cross-project software defect prediction because of its very slow training process. So, this research article proposes a new instance selection (IS) algorithm called boundary detection among classes (BDAC) to reduce the training dataset size for faster training of SVM without degrading the prediction performance. The proposed algorithm is evaluated against six existing IS algorithms based on accuracy, running time, data reduction rate, etc. using 23 general datasets, 18 software defect prediction datasets, and two shape-based datasets, and results prove that BDAC is better than the selected algorithm based on collective comparison.</div></div>","PeriodicalId":48552,"journal":{"name":"Journal of Computer Languages","volume":"81 ","pages":"Article 101301"},"PeriodicalIF":1.7,"publicationDate":"2024-10-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"142533922","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}
引用次数: 0
Detection and treatment of string events in the limit 探测和处理极限串事件
IF 1.7 3区 计算机科学
Journal of Computer Languages Pub Date : 2024-10-21 DOI: 10.1016/j.cola.2024.101299
Alex Holmquist , Vitor Emanuel , Fernando C. Alves , Fernando Magno Quintão Pereira
{"title":"Detection and treatment of string events in the limit","authors":"Alex Holmquist ,&nbsp;Vitor Emanuel ,&nbsp;Fernando C. Alves ,&nbsp;Fernando Magno Quintão Pereira","doi":"10.1016/j.cola.2024.101299","DOIUrl":"10.1016/j.cola.2024.101299","url":null,"abstract":"<div><div>A string event is a pattern that occurs in a stream of characters. The need to detect and handle string events in infinite texts emerges in many scenarios, including online treatment of logs, web crawling, and syntax highlighting. This paper describes a technique to specify and treat string events. Users determine patterns of interest via a markup language. From such examples, tokens are generalized via a semi-lattice of regular expressions. Such tokens are combined into a context-free language that recognizes patterns in the text stream. These techniques are implemented in a text processing system called <span>Lushu</span>, which runs on the Java Virtual Machine (JVM). <span>Lushu</span> intercepts strings emitted by the JVM. Once patterns are detected, it invokes a user-specified action handler. As a proof of concept, this paper shows that <span>Lushu</span> outperforms state-of-the-art parsers and parser generators, such as <span>Comby</span>, <span>BeautifulSoup4</span> and <span>ZheFuscator</span>, in terms of memory consumption and running time.</div></div>","PeriodicalId":48552,"journal":{"name":"Journal of Computer Languages","volume":"81 ","pages":"Article 101299"},"PeriodicalIF":1.7,"publicationDate":"2024-10-21","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"142533921","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}
引用次数: 0
ClangOz: Parallel constant evaluation of C++ map and reduce operations ClangOz:C++ 映射和还原操作的并行常量评估
IF 1.7 3区 计算机科学
Journal of Computer Languages Pub Date : 2024-10-10 DOI: 10.1016/j.cola.2024.101298
Paul Keir , Andrew Gozillon
{"title":"ClangOz: Parallel constant evaluation of C++ map and reduce operations","authors":"Paul Keir ,&nbsp;Andrew Gozillon","doi":"10.1016/j.cola.2024.101298","DOIUrl":"10.1016/j.cola.2024.101298","url":null,"abstract":"<div><div>Interest in metaprogramming, reflection, and compile-time evaluation continues to inspire and foster innovation among the users and designers of the C++ programming language. Regrettably, the impact on compile-times of such features can be significant; and outside of build systems, multi-core parallelism is unable to bring down compilation times of individual translation units. We present ClangOz, a novel Clang-based research compiler that addresses this issue by evaluating annotated constant expressions in parallel, thereby reducing compilation times. Prior benchmarks analyzed parallel map operations, but were unable to consider reduction operations. Thus we also introduce parallel reduction functionality, alongside two additional benchmark programs.</div></div>","PeriodicalId":48552,"journal":{"name":"Journal of Computer Languages","volume":"81 ","pages":"Article 101298"},"PeriodicalIF":1.7,"publicationDate":"2024-10-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"142440881","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
MoTion: A new declarative object matching approach in Pharo MoTion:Pharo 中一种新的声明式对象匹配方法
IF 1.7 3区 计算机科学
Journal of Computer Languages Pub Date : 2024-08-23 DOI: 10.1016/j.cola.2024.101290
Aless Hosry , Vincent Aranega , Nicolas Anquetil
{"title":"MoTion: A new declarative object matching approach in Pharo","authors":"Aless Hosry ,&nbsp;Vincent Aranega ,&nbsp;Nicolas Anquetil","doi":"10.1016/j.cola.2024.101290","DOIUrl":"10.1016/j.cola.2024.101290","url":null,"abstract":"<div><p>Pattern matching is an expressive way of matching data and extracting pieces of information from it. The recent inclusion of pattern matching in the Java and Python languages highlights that such a facility is more and more adopted by developers for everyday development. Other main stream programming languages also offer pattern matching capabilities as part of the language (Rust, Scala, Haskell, and OCaml), with different degrees of expressivity in what can be matched. In the meantime, in graphs, pattern matching takes a slightly different turn; it enhances the expressivity of the patterns that can be defined. Smalltalk currently offers little pattern matching capability to find specific objects inside a large graph of objects using a declarative pattern. In Pharo, the closest library to classical pattern matching that exists is the <span>RBParseTreeSearcher</span>, which allows to express specialized patterns over a Pharo Abstract Syntax Tree to find some inner node. The question arises of what features a flexible pattern matching language should have. In this paper, we review the features found in different existing pattern matching languages, both in General Purpose Languages (like Java) and in declarative graph pattern matching languages. We then describe MoTion, a new pattern matching engine for Pharo smalltalk, combining all these features. We discuss some aspects of MoTion’s implementation and illustrate its use with real case examples.</p></div>","PeriodicalId":48552,"journal":{"name":"Journal of Computer Languages","volume":"81 ","pages":"Article 101290"},"PeriodicalIF":1.7,"publicationDate":"2024-08-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"142129955","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}
引用次数: 0
An empirical study on divergence of differently-sourced LLVM IRs 关于不同来源 LLVM IR 分歧的实证研究
IF 1.7 3区 计算机科学
Journal of Computer Languages Pub Date : 2024-08-05 DOI: 10.1016/j.cola.2024.101289
Zhenzhou Tian , Yuchen Gong , Chenhao Chang , Jiaze Sun , Yanping Chen , Lingwei Chen
{"title":"An empirical study on divergence of differently-sourced LLVM IRs","authors":"Zhenzhou Tian ,&nbsp;Yuchen Gong ,&nbsp;Chenhao Chang ,&nbsp;Jiaze Sun ,&nbsp;Yanping Chen ,&nbsp;Lingwei Chen","doi":"10.1016/j.cola.2024.101289","DOIUrl":"10.1016/j.cola.2024.101289","url":null,"abstract":"<div><p>In solving binary code similarity detection, many approaches choose to operate on certain unified intermediate representations (IRs), such as Low Level Virtual Machine (LLVM) IR, to overcome the cross-architecture analysis challenge induced by the significant morphological and syntactic gaps across the diverse instruction set architectures (ISAs). However, the LLVM IRs of the same program can be affected by diverse factors, such as the acquisition source, i.e., compiled from source code or disassembled and lifted from binary code. While the impact of compilation settings on binary code has been explored, the specific differences between LLVM IRs from varied sources remain underexamined. To this end, we pioneer an in-depth empirical study to assess the discrepancies in LLVM IRs derived from different sources. Correspondingly, an extensive dataset containing nearly 98 million LLVM IR instructions distributed in 808,431 functions is curated with respect to these potential IR-influential factors. On this basis, three types of code metrics detailing the syntactic, structural, and semantic aspects of the IR samples are devised and leveraged to assess the divergence of the IRs across different origins. The findings offer insights into how and to what extent the various factors affect the IRs, providing valuable guidance for assembling a training corpus aimed at developing robust LLVM IR-oriented pre-training models, as well as facilitating relevant program analysis studies that operate on the LLVM IRs.</p></div>","PeriodicalId":48552,"journal":{"name":"Journal of Computer Languages","volume":"81 ","pages":"Article 101289"},"PeriodicalIF":1.7,"publicationDate":"2024-08-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141937759","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}
引用次数: 0
Fault localization by abstract interpretation and its applications 通过抽象解释进行故障定位及其应用
IF 1.7 3区 计算机科学
Journal of Computer Languages Pub Date : 2024-08-01 DOI: 10.1016/j.cola.2024.101288
Aleksandar S. Dimovski
{"title":"Fault localization by abstract interpretation and its applications","authors":"Aleksandar S. Dimovski","doi":"10.1016/j.cola.2024.101288","DOIUrl":"10.1016/j.cola.2024.101288","url":null,"abstract":"<div><p><em>Fault localization</em> aims to automatically identify the cause of an error in a program by localizing the error to a relatively small part of the program. In this paper, we present a novel technique for automated fault localization via <em>error invariants</em> inferred by abstract interpretation. An error invariant for a location in an error program over-approximates the reachable states at the given location that may produce the error, if the execution of the program is continued from that location. Error invariants can be used for <em>statement-wise semantic slicing</em> of error programs and for obtaining concise error explanations. We use an iterative refinement sequence of backward–forward static analyses by abstract interpretation to compute error invariants, which are designed to explain why an error program violates a particular assertion.</p><p>Furthermore, we present a practical application of the fault localization technique for automatic repair of programs. Given an erroneous program, we first use the fault localization to automatically identify statements relevant for the error, and then repeatedly mutate the expressions in those relevant statements until a correct program that satisfies all assertions is found. All other statements classified by the fault localization as irrelevant for the error are not mutated in the program repair process. This way, we significantly reduce the search space of mutated programs without losing any potentially correct program, and so locate a repaired program much faster than a program repair without fault localization.</p><p>We have developed a prototype tool for automatic fault localization and repair of C programs. We demonstrate the effectiveness of our approach to localize errors in realistic C programs, and to subsequently repair them. Moreover, we show that our approach based on combining fault localization and code mutations is significantly faster that the previous program repair approach without fault localization.</p></div>","PeriodicalId":48552,"journal":{"name":"Journal of Computer Languages","volume":"80 ","pages":"Article 101288"},"PeriodicalIF":1.7,"publicationDate":"2024-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141845094","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}
引用次数: 0
Screening articles for systematic reviews with ChatGPT 使用 ChatGPT 筛选系统综述文章
IF 1.7 3区 计算机科学
Journal of Computer Languages Pub Date : 2024-07-08 DOI: 10.1016/j.cola.2024.101287
Eugene Syriani , Istvan David , Gauransh Kumar
{"title":"Screening articles for systematic reviews with ChatGPT","authors":"Eugene Syriani ,&nbsp;Istvan David ,&nbsp;Gauransh Kumar","doi":"10.1016/j.cola.2024.101287","DOIUrl":"https://doi.org/10.1016/j.cola.2024.101287","url":null,"abstract":"<div><p>Systematic reviews (SRs) provide valuable evidence for guiding new research directions. However, the manual effort involved in selecting articles for inclusion in an SR is error-prone and time-consuming. While screening articles has traditionally been considered challenging to automate, the advent of large language models offers new possibilities. In this paper, we discuss the effect of using ChatGPT on the SR process. In particular, we investigate the effectiveness of different prompt strategies for automating the article screening process using five real SR datasets. Our results show that ChatGPT can reach up to 82% accuracy. The best performing prompts specify exclusion criteria and avoid negative shots. However, prompts should be adapted to different corpus characteristics.</p></div>","PeriodicalId":48552,"journal":{"name":"Journal of Computer Languages","volume":"80 ","pages":"Article 101287"},"PeriodicalIF":1.7,"publicationDate":"2024-07-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://www.sciencedirect.com/science/article/pii/S2590118424000303/pdfft?md5=88fb1aa235050a4011046d39a856044b&pid=1-s2.0-S2590118424000303-main.pdf","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141606804","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
相关产品
×
本文献相关产品
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信