Companion Proceedings of the 4th International Conference on Art, Science, and Engineering of Programming最新文献

筛选
英文 中文
Towards visualization of evolution of component-based software architectures in VR 面向VR中基于组件的软件架构演变的可视化研究
Elke Franziska Heidmann, A. Meinecke, L. Kurnatowski, A. Schreiber
{"title":"Towards visualization of evolution of component-based software architectures in VR","authors":"Elke Franziska Heidmann, A. Meinecke, L. Kurnatowski, A. Schreiber","doi":"10.1145/3397537.3398473","DOIUrl":"https://doi.org/10.1145/3397537.3398473","url":null,"abstract":"To understand the development history of complex software architectures, software visualizations are very useful. They show dependencies and contexts in which design decisions were made, supporting programmers in understanding systems and helping them to recognize disadvantageous design decisions. IslandViz visualizes OSGi-based software architectures in Virtual Reality using an island metaphor; for now, the history of an architecture is not taken into account. We show how IslandViz can be extended to include changes on package and compilation unit level by changing the layout of islands. For this purpose we adapt the Enhanced Hexagon Tiling Algorithm and create growth corridors for each region of an island. As a result, island regions can change along with their respective packages without the possibility of being enclosed by other regions.","PeriodicalId":373173,"journal":{"name":"Companion Proceedings of the 4th International Conference on Art, Science, and Engineering of Programming","volume":"171 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-03-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115633805","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Javardise: a structured code editor for programming pedagogy in Java Javardise:用于Java编程教学的结构化代码编辑器
André L. M. Santos
{"title":"Javardise: a structured code editor for programming pedagogy in Java","authors":"André L. M. Santos","doi":"10.1145/3397537.3397561","DOIUrl":"https://doi.org/10.1145/3397537.3397561","url":null,"abstract":"The syntax of a programming language is the textual form - that conforms to a grammar - to express instructions of a programming model. The key idea of structured code editors is to constrain editing to syntactically valid program code, that is, the modifications ensure that the source code always conforms to the grammar. Syntax is considered an entry barrier when learning how to program. In this work we rehash the concept of structured code editors targeting programming education. We present Javardise, a structured editor for a subset of the Java language, and discuss its features in the light of programming pedagogy.","PeriodicalId":373173,"journal":{"name":"Companion Proceedings of the 4th International Conference on Art, Science, and Engineering of Programming","volume":"6 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-03-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126663737","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 4
Profiling streams on the Java virtual machine 在Java虚拟机上分析流
Eduardo Eduardo Rosales Rosero, Andrea Rosà, Walter Binder
{"title":"Profiling streams on the Java virtual machine","authors":"Eduardo Eduardo Rosales Rosero, Andrea Rosà, Walter Binder","doi":"10.1145/3397537.3397565","DOIUrl":"https://doi.org/10.1145/3397537.3397565","url":null,"abstract":"The java.util.stream framework is becoming a popular option among developers that target the Java Virtual Machine (JVM) to implement map-reduce-like transformations on collections. A key feature of the streams framework is enabling parallelizing a computation as easy as calling a single method. Still, developers should test whether parallelizing a stream may results in performance, liveness or safety hazards. While such issues are mainly observable at runtime, there is a lack of tools capturing information that enable understanding the dynamic behavior of a stream application. In this extended abstract, we devise a profiler focused on characterizing dynamic attributes of a stream application running on a single JVM in a shared-memory multicore. Our tool aims at collecting runtime information and key metrics to support analysis of sequential and parallel stream processing, towards helping developers make better decisions to efficiently and safely use the streams framework.","PeriodicalId":373173,"journal":{"name":"Companion Proceedings of the 4th International Conference on Art, Science, and Engineering of Programming","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-03-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114386396","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
Program comprehension for live algorithmic design in virtual reality 虚拟现实中实时算法设计的程序理解
Renata Castelo-Branco, A. Leitão, Catarina Brás
{"title":"Program comprehension for live algorithmic design in virtual reality","authors":"Renata Castelo-Branco, A. Leitão, Catarina Brás","doi":"10.1145/3397537.3398475","DOIUrl":"https://doi.org/10.1145/3397537.3398475","url":null,"abstract":"Algorithmic Design (AD) is a design approach based on the development of computer programs to describe architectural models. The programs’ outputs are digital architectural 3D models, which are visual by nature and, therefore, benefit from immersive visualization. Live Coding in Virtual Reality (LCVR) is a methodology for the interactive development of AD programs while immersed in Virtual Reality (VR), favoring a more intuitive development process for architectural designs. However, complex buildings tend to require complex AD programs and, despite the added visual aid, as programs grow in complexity, it becomes harder to understand which parts of the program were responsible for which parts of the model. Moreover, LCVR introduces a new level of complexity: interaction with both model and program in VR. This research proposes to ease the programming task for architects who wish to code their models in VR, by supporting program comprehension in the LCVR workflow with traceability and refactoring mechanisms. These features will help users interact with their designs from within the virtual environment.","PeriodicalId":373173,"journal":{"name":"Companion Proceedings of the 4th International Conference on Art, Science, and Engineering of Programming","volume":"20 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-03-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116657793","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 4
Assessing textual source code comparison: split or unified? 评估文本源代码比较:分割还是统一?
Alejandra Cossio Chavalier, Juan Pablo Sandoval Alcocer, Alexandre Bergel
{"title":"Assessing textual source code comparison: split or unified?","authors":"Alejandra Cossio Chavalier, Juan Pablo Sandoval Alcocer, Alexandre Bergel","doi":"10.1145/3397537.3398471","DOIUrl":"https://doi.org/10.1145/3397537.3398471","url":null,"abstract":"Evaluating source code differences is an important task in software engineering. Unified and split are two popular textual representations supported by clients for source code management. Whether these representations differ in supporting source code commit assessment is still unknown, despite its ubiquity in software production environments. This paper performs a controlled experiment to test the causality between the textual representation of source code differences and the performance in term of commit evaluation. Our experiment shows that no significant difference was measured. We therefore conclude that both unified and split equally support the source code commit assessment for the tasks we considered.","PeriodicalId":373173,"journal":{"name":"Companion Proceedings of the 4th International Conference on Art, Science, and Engineering of Programming","volume":"102 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-03-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123338872","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Synthesizing user interfaces using functional reactive web abstractions 使用功能响应式web抽象来合成用户界面
Adam Granicz, Jozsef Uri, Andras Janko
{"title":"Synthesizing user interfaces using functional reactive web abstractions","authors":"Adam Granicz, Jozsef Uri, Andras Janko","doi":"10.1145/3397537.3397554","DOIUrl":"https://doi.org/10.1145/3397537.3397554","url":null,"abstract":"In this paper, we describe a novel approach to synthesizing web user interfaces (UI) from declarative specifications given in a domain-specific language (DSL) that can later be read and written by natural language processing (NLP) techniques via human language interaction. We make use of F#'s metaprogramming capabilities and our reactive forms library developed for WebSharper. Our ultimate goal is to enable end users to describe entire web application UIs and carry on a conversation with our system, describing incremental changes to apply on an ongoing specification.","PeriodicalId":373173,"journal":{"name":"Companion Proceedings of the 4th International Conference on Art, Science, and Engineering of Programming","volume":"31 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-03-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128788974","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Towards dynamic SQL compilation in Apache Spark 在Apache Spark中实现动态SQL编译
F. Schiavio, Daniele Bonetta, Walter Binder
{"title":"Towards dynamic SQL compilation in Apache Spark","authors":"F. Schiavio, Daniele Bonetta, Walter Binder","doi":"10.1145/3397537.3397566","DOIUrl":"https://doi.org/10.1145/3397537.3397566","url":null,"abstract":"Big-data systems have gained significant momentum, and Apache Spark is becoming a de-facto standard for modern data analytics. Spark relies on code generation to optimize the execution performance of SQL queries on a variety of data sources. Despite its already efficient runtime, Spark's code generation suffers from significant runtime overheads related to data de-serialization during query execution. Such performance penalty can be significant, especially when applications operate on human-readable data formats such as CSV or JSON.","PeriodicalId":373173,"journal":{"name":"Companion Proceedings of the 4th International Conference on Art, Science, and Engineering of Programming","volume":"39 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-03-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116007121","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
Visual design for a tree-oriented projectional editor 一个面向树的投影编辑器的视觉设计
Tom Beckmann, Stefan Ramson, Patrick Rein, R. Hirschfeld
{"title":"Visual design for a tree-oriented projectional editor","authors":"Tom Beckmann, Stefan Ramson, Patrick Rein, R. Hirschfeld","doi":"10.1145/3397537.3397560","DOIUrl":"https://doi.org/10.1145/3397537.3397560","url":null,"abstract":"Projectional editors show promise for a variety of use cases, for example in language composition and domain specific projections. To allow efficient interactions within a projectional editor, it is necessary for the editor to clearly communicate the structure of the program to the user, such that it is clear what editing operations are supported for a given element. Making the abstract syntax tree visible within the editor may provide this clarity, however, it generally also results in considerably increased space usage, potentially also impacting usability. We present an early prototype of a tree-oriented projectional editor for Squeak/Smalltalk that tries to minimize space usage while retaining a clear visualization of the tree structure, balancing the two problems. We describe and discuss our design prototype and do a preliminary evaluation through individual account of experience working with the editor on various projects.","PeriodicalId":373173,"journal":{"name":"Companion Proceedings of the 4th International Conference on Art, Science, and Engineering of Programming","volume":"40 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-03-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133354203","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 6
N-gram models for code completion in Pharo Pharo中用于代码完成的N-gram模型
Myroslava Romaniuk
{"title":"N-gram models for code completion in Pharo","authors":"Myroslava Romaniuk","doi":"10.1145/3397537.3398483","DOIUrl":"https://doi.org/10.1145/3397537.3398483","url":null,"abstract":"In this paper, I present applying statistical language models to improve code completion in Pharo. In particular, the goal is to use n-gram models for sorting the completion candidates and, in such a way, increase the relevancy of the suggested completions.","PeriodicalId":373173,"journal":{"name":"Companion Proceedings of the 4th International Conference on Art, Science, and Engineering of Programming","volume":"67 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-03-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128286502","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
Overviewing the liveness of refactoring for energy efficiency 概述能源效率重构的活力
E. Moreira, F. F. Correia, João Bispo
{"title":"Overviewing the liveness of refactoring for energy efficiency","authors":"E. Moreira, F. F. Correia, João Bispo","doi":"10.1145/3397537.3397538","DOIUrl":"https://doi.org/10.1145/3397537.3397538","url":null,"abstract":"Mobile device users have been growing in the last years but the limited battery life of these devices is considered one of the major issues amongst users and programmers. Therefore, there is a need to guide developers in developing mobile applications in the most energy efficient way. One of the ways to improve this is to provide live feedback about the energy efficiency of a program while it's being programmed. We have analyzed and compared a total of 16 different tools and presented a list of 15 code smells and respective refactorings. From the analyzed tools, Leafactor is the closest to a valid solution to our problem because it's the only energy-aware tool with the highest liveness level. However, in order to be executed the programmer needs to trigger it on the IDE by selecting the file, instead of automatically being executed without the programmer being noticed and refactor his inefficient code.","PeriodicalId":373173,"journal":{"name":"Companion Proceedings of the 4th International Conference on Art, Science, and Engineering of Programming","volume":"20 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-03-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129031376","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 2
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学术文献互助群
群 号:604180095
Book学术官方微信