Open Access. Powered by Scholars. Published by Universities.®
- Institution
-
- University of Nebraska - Lincoln (716)
- Singapore Management University (413)
- City University of New York (CUNY) (92)
- Old Dominion University (47)
- Chapman University (39)
-
- Portland State University (36)
- Syracuse University (27)
- San Jose State University (26)
- California Polytechnic State University, San Luis Obispo (24)
- University of Arkansas, Fayetteville (22)
- University of Dayton (22)
- Bryn Mawr College (19)
- Loyola University Chicago (16)
- Air Force Institute of Technology (15)
- University of Malaya (13)
- University of South Alabama (13)
- American University in Cairo (11)
- University of Nevada, Las Vegas (11)
- California State University, San Bernardino (10)
- Purdue University (10)
- Sacred Heart University (10)
- University of Texas at El Paso (10)
- The University of Akron (9)
- Brigham Young University (7)
- Embry-Riddle Aeronautical University (7)
- St. Mary's University (7)
- Claremont Colleges (6)
- Southern Methodist University (6)
- Technological University Dublin (6)
- University of Nebraska at Omaha (6)
- Keyword
-
- Java (43)
- Programming (37)
- Programming languages (33)
- Software engineering (29)
- Python (27)
-
- Refactoring (26)
- Computer science (22)
- Model Check (22)
- Deep learning (19)
- Programming languages (Electronic computers) (13)
- Java 8 (12)
- Static analysis (12)
- Large language models (11)
- Machine Learning (11)
- Software (11)
- Computer software -- Development (10)
- Empirical study (10)
- Imperative programs (10)
- Linear Temporal Logic (10)
- Machine learning (10)
- Software Engineering (10)
- Compilers (9)
- Computer Science (9)
- Empirical studies (9)
- Haskell (9)
- Scala (9)
- C++ (8)
- Computational thinking (8)
- Computer programming (8)
- Default methods (8)
- Publication Year
- Publication
-
- The R Journal (708)
- Research Collection School Of Computing and Information Systems (379)
- Publications and Research (58)
- Open Educational Resources (26)
- Computer Science Faculty Publications and Presentations (24)
-
- Master's Projects (22)
- Theses and Dissertations (22)
- Computer Science Faculty Publications (20)
- Dissertations and Theses Collection (Open Access) (20)
- Computer Science Faculty Research and Scholarship (19)
- Electrical & Computer Engineering Theses & Dissertations (19)
- Journal of Computer Science Integration (17)
- Master's Theses (16)
- Computer Science: Faculty Publications and Other Works (15)
- Northeast Parallel Architecture Center (15)
- Mathematics, Physics, and Computer Science Faculty Articles and Research (13)
- Student Works (2000-2009) (13)
- Dissertations and Theses (12)
- Computer Science Theses & Dissertations (10)
- Computer Science and Computer Engineering Undergraduate Honors Theses (10)
- Departmental Technical Reports (CS) (10)
- Graduate Theses and Dissertations (10)
- School of Computer Science & Engineering Faculty Publications (10)
- Archived Theses and Dissertations (9)
- Faculty Publications (9)
- Williams Honors College, Honors Research Projects (9)
- College of Engineering and Computer Science - Former Departments, Centers, Institutes and Projects (7)
- Honors Theses (7)
- Dissertations and Theses Collection (6)
- Electronic Theses, Projects, and Dissertations (6)
- Publication Type
- File Type
Articles 1141 - 1170 of 1844
Full-Text Articles in Computer Sciences
Fine-Grained Detection Of Programming Students’ Frustration Using Keystrokes, Mouse Clicks And Interaction Logs, Hua Leong Fwa
Fine-Grained Detection Of Programming Students’ Frustration Using Keystrokes, Mouse Clicks And Interaction Logs, Hua Leong Fwa
Research Collection School Of Computing and Information Systems
Prolonged frustration leads to loss of confidence and eventual disinterest in the learning itself. The modelling of frustration in learning is thus important as it informs on the appropriate time to intervene to sustain the interest and motivation of students. To automatically detect learner’s frustration in a naturalistic learning environment, the novel use of keystrokes, mouse clicks and interaction patterns of students captured within the context of a tutoring system was proposed. The modelling approach was described and a comparison was made between the proposed model using Bayesian Network and the baseline Naïve Bayes model. With the formulation of an …
Defining The Competencies, Programming Languages, And Assessments For An Introductory Computer Science Course, Simon Sultana
Defining The Competencies, Programming Languages, And Assessments For An Introductory Computer Science Course, Simon Sultana
STEMPS Theses & Dissertations
The purpose of this study was to define the competencies, programming languages, and assessments for an introductory computer science course at a small private liberal arts university. Three research questions were addressed that involved identifying the competencies, programming languages, and assessments that academic and industry experts in California’s Central Valley felt most important and appropriate for an introduction to computer science course.
The Delphi methodology was used to collect data from the two groups of experts with various backgrounds related to computing. The goal was to find consensus among the individual groups to best define aspects that would best comprise …
An Interference-Free Programming Model For Network Objects, Mischael Schill, Christopher M. Poskitt, Bertrand Meyer
An Interference-Free Programming Model For Network Objects, Mischael Schill, Christopher M. Poskitt, Bertrand Meyer
Research Collection School Of Computing and Information Systems
Network objects are a simple and natural abstraction for distributed object-oriented programming. Languages that support network objects, however, often leave synchronization to the user, along with its associated pitfalls, such as data races and the possibility of failure. In this paper, we present D-Scoop, a distributed programming model that allows for interference-free and transaction-like reasoning on (potentially multiple) network objects, with synchronization handled automatically, and network failures managed by a compensation mechanism. We achieve this by leveraging the runtime semantics of a multi-threaded object-oriented concurrency model, directly generalizing it with a message-based protocol for efficiently coordinating remote objects. We present …
Estimability Tools For Package Developers, Russell V. Lenth
Estimability Tools For Package Developers, Russell V. Lenth
The R Journal
When a linear model is rank-deficient, then predictions based on that model become questionable because not all predictions are uniquely estimable. However, some of them are, and the estimability package provides tools that package developers can use to tell which is which. With the use of these tools, a model object’s predict method could return estimable predictions as-is while f lagging non-estimable ones in some way, so that the user can know which predictions to believe. The estimability package also provides, as a demonstration, an estimability-enhanced epredict method to use in place of predict for models fitted using the stats …
Secure Declassification In Faceted Javascript, Tam Wing
Secure Declassification In Faceted Javascript, Tam Wing
Master's Projects
Information leaks currently represent a major security vulnerability. Malicious code, when injected into a trusted environment and executed in the context of the victim’s privileges, often results in the loss of sensitive information. To address this security issue, this paper focuses on the idea of information flow control using faceted execution [3]. This mechanism allows the interpreter to efficiently keep track of variables across multiple security levels, achieving termination-insensitive non-interference (TINI). With TINI, a program can only leak one bit of data, caused by the termination of a program. One key benefit of having faceted execution is that flow policy …
Taint And Information Flow Analysis Using Sweet.Js Macros, Prakasam Kannan
Taint And Information Flow Analysis Using Sweet.Js Macros, Prakasam Kannan
Master's Projects
JavaScript has been the primary language for application development in browsers and with the advent of JIT compilers, it is increasingly becoming popular on server side development as well. However, JavaScript suffers from vulnerabilities like cross site scripting and malicious advertisement code on the the client side and on the server side from SQL injection.
In this paper, we present a dynamic approach to efficiently track information flow and taint detection to aid in mitigation and prevention of such attacks using JavaScript based hygienic macros. We use Sweet.js and object proxies to override built-in JavaScript operators to track information flow …
Sign & Share: Full-Stack International Video Sharing Website, Shuxu Tian
Sign & Share: Full-Stack International Video Sharing Website, Shuxu Tian
Undergraduate University Honors Capstones
Inspired by VL2 bilingual story apps that focus on American Sign Language and English, this project provides a new application for sharing multi-lingual signed and written stories to a worldwide audience. VL2 story apps include only ASL and English, and are for purchase; VL2 also sells the code to develop stories in other languages, but the code requires technical expertise to use. My new app uses a special set of tools to allow sharing stories in any signed language and written forms of spoken languages without cost and without the need for technical expertise. Known as Sign and Share, this …
Domain-Specific Cross-Language Relevant Question Retrieval, Bowen Xu, Zhenchang Xing, Xin Xia, David Lo, Qingye Wang, Shanping Li
Domain-Specific Cross-Language Relevant Question Retrieval, Bowen Xu, Zhenchang Xing, Xin Xia, David Lo, Qingye Wang, Shanping Li
Research Collection School Of Computing and Information Systems
In software development process, developers often seek solutions to the technical problems they encounter by searching relevant questions on Q&A sites. When developers fail to find solutions on Q&A sites in their native language (e.g., Chinese), they could translate their query and search on the Q&A sites in another language (e.g., English). However, developers who are non-native English speakers often are not comfortable to ask or search questions in English, as they do not know the proper translation of the Chinese technical words into the English technical words. Furthermore, the process of manually formulating cross-language queries and determining the weight …
Software Improvements To Parint, A Parallel Integration Software Package, Lawrence Cuneaz
Software Improvements To Parint, A Parallel Integration Software Package, Lawrence Cuneaz
Honors Theses
The best software is easy to configure and compile, is expandable and is well tested. Development of the ParInt software package for parallel integration stopped a number of years ago. When handed the software, parts of the package no longer configured or compiled consistently. Furthermore it relied on one random number generator and had no functional testing. The team tuned the auto configuration so that the program would configure and build on current systems, created expandable functionality to add new random number generators and created two functional test packs. Now ParInt can be developed with confidence knowing that it compiles …
Make A Twitter Bot In Python: Iterative Code Examples, Robin Camille Davis, Mark E. Eaton
Make A Twitter Bot In Python: Iterative Code Examples, Robin Camille Davis, Mark E. Eaton
Publications and Research
A tutorial based upon the LACUNY Emerging Technologies Committee’s “Build Your Own Twitter Bot” day in December 2015, which was billed as a gentle introduction to programming in Python.
A Graph-Based Semantics Workbench For Concurrent Asynchronous Programs, Claudio Corrodi, Alexander Heußner, Christopher M. Poskitt
A Graph-Based Semantics Workbench For Concurrent Asynchronous Programs, Claudio Corrodi, Alexander Heußner, Christopher M. Poskitt
Research Collection School Of Computing and Information Systems
A number of novel programming languages and libraries have been proposed that offer simpler-to-use models of concurrency than threads. It is challenging, however, to devise execution models that successfully realise their abstractions without forfeiting performance or introducing unintended behaviours. This is exemplified by Scoop—a concurrent object-oriented message-passing language—which has seen multiple semantics proposed and implemented over its evolution. We propose a “semantics workbench” with fully and semi-automatic tools for Scoop, that can be used to analyse and compare programs with respect to different execution models. We demonstrate its use in checking the consistency of semantics by applying it to a …
Front Matter: Proceedings Of The Maics 2016 Conference, University Of Dayton
Front Matter: Proceedings Of The Maics 2016 Conference, University Of Dayton
Content presented at the MAICS conference
Front matter contains:
- A list of program chairs and committee members
- Foreword to the proceedings by James P. Buckley, conference chair; Saverio Perugini, general chair
Editors: Phu H. Phung, University of Dayton; Ju Shen, University of Dayton; Michael Glass, Valparaiso University
Cracking The Code Of Success: The Coding Academy
Cracking The Code Of Success: The Coding Academy
DePaul Magazine
BLUE1647 is a nonprofit technology and entrepreneurship innovation center—a type of tech incubator, but with a difference. The seven-day-a-week coworking space welcomes engineers and developers, but also provides technology education to young people and college students through strategic partnerships with DePaul, Chicago Public Schools and other organizations. BLUE1647 offers MBA social enterprise and undergraduate entrepreneurship students an experiential learning project called the Coding Academy, a tuition-based program offered on a full-scholarship basis to DePaul student cohorts.
A Reflection On Types, Simon. Peyton Jones, Stephanie Weirich, Richard A. Eisenberg, Dimitrios Vytiniotis
A Reflection On Types, Simon. Peyton Jones, Stephanie Weirich, Richard A. Eisenberg, Dimitrios Vytiniotis
Computer Science Faculty Research and Scholarship
The ability to perform type tests at runtime blurs the line between statically-typed and dynamically-checked languages. Recent developments in Haskell’s type system allow even programs that use reflection to themselves be statically typed, using a type-indexed runtime representation of types called \𝗍𝖾𝗑𝗍𝗂𝗍{𝖳𝗒𝗉𝖾𝖱𝖾𝗉}\textit{TypeRep}. As a result we can build dynamic types as an ordinary, statically-typed library, on top of \𝗍𝖾𝗑𝗍𝗂𝗍{𝖳𝗒𝗉𝖾𝖱𝖾𝗉}\textit{TypeRep} in an open-world context.
Towards Improving Interface Modularity In Legacy Java Software Through Automated Refactoring, Raffi T. Khatchadourian, Olivia Moore, Hidehiko Masuhara
Towards Improving Interface Modularity In Legacy Java Software Through Automated Refactoring, Raffi T. Khatchadourian, Olivia Moore, Hidehiko Masuhara
Publications and Research
The skeletal implementation pattern is a software design pattern consisting of defining an abstract class that provides a partial interface implementation. However, since Java allows only single class inheritance, if implementers decide to extend a skeletal implementation, they will not be allowed to extend any other class. Also, discovering the skeletal implementation may require a global analysis. Java 8 enhanced interfaces alleviate these problems by allowing interfaces to contain (default) method implementations, which implementers inherit. Java classes are then free to extend a different class, and a separate abstract class is no longer needed; developers considering implementing an interface need …
Towards Improving Interface Modularity In Legacy Java Software Through Automated Refactoring, Raffi Khatchadourian, Olivia Moore, Hidehiko Masuhara
Towards Improving Interface Modularity In Legacy Java Software Through Automated Refactoring, Raffi Khatchadourian, Olivia Moore, Hidehiko Masuhara
Publications and Research
The skeletal implementation pattern is a software design pattern that defines an abstract class that provides a partial interface implementation. However, since Java allows only single class inheritance, if implementers decide to extend a skeletal implementation, they will not be allowed to extend any other class. Also, discovering the skeletal implementation may require a global analysis. Java 8 enhanced interfaces alleviate these problems by enabling interfaces to contain (default) method implementations, which implementers inherit. Java classes are then free to extend a different class, and a separate abstract class is no longer needed; developers considering implementing an interface need only …
Tango: A Spanish-Based Programming Language, Ashley Zegiestowsky
Tango: A Spanish-Based Programming Language, Ashley Zegiestowsky
Undergraduate Honors Thesis Collection
The purpose of this thesis is a two-part project. The first part of the project deals with the creation of my own Spanish-based programming language, Tango, using Spanish key words (instead of English key words). The second part of the project relates to the design and implementation of a compiler that follows the grammar rules outlined in the Tango language in order to successfully lexically analyze, parse, semantically analyze, and generate code for Tango. The structure of this thesis begins with a description of the specific goals achieved in the Tango language, an explanation and brief examples of the Tango …
Visible Type Application, Richard A. Eisenberg, Stephanie Weirich, Hamidhasan G. Ahmed
Visible Type Application, Richard A. Eisenberg, Stephanie Weirich, Hamidhasan G. Ahmed
Computer Science Faculty Research and Scholarship
The Hindley-Milner HM type system automatically infers the types at which polymorphic functions are used. In HM, the inferred types are unambiguous, and every expression has a principal type. Type annotations make HM compatible with extensions where complete type inference is impossible, such as higher-rank polymorphism and type-level functions. However, programmers cannot use annotations to explicitly provide type arguments to polymorphic functions, as HM requires type instantiations to be inferred.
We describe an extension to HM that allows visible type application. Our extension requires a novel type inference algorithm, yet its declarative presentation is a simple extension to HM. We …
Safe Zero-Cost Coercions For Haskell, Joachim Breitner, Richard A. Eisenberg, Simon Peyton Jones, Stephanie Weirich
Safe Zero-Cost Coercions For Haskell, Joachim Breitner, Richard A. Eisenberg, Simon Peyton Jones, Stephanie Weirich
Computer Science Faculty Research and Scholarship
Generative type abstractions – present in Haskell, OCaml, and other languages – are useful concepts to help prevent programmer errors. They serve to create new types that are distinct at compile time but share a run-time representation with some base type. We present a new mechanism that allows for zero-cost conversions between generative type abstractions and their representations, even when such types are deeply nested. We prove type safety in the presence of these conversions and have implemented our work in GHC.
Dependent Types In Haskell: Theory And Practice, Richard A. Eisenberg
Dependent Types In Haskell: Theory And Practice, Richard A. Eisenberg
Computer Science Faculty Research and Scholarship
Haskell, as implemented in the Glasgow Haskell Compiler (GHC), has been adding new type-level programming features for some time. Many of these features—generalized algebraic datatypes (GADTs), type families, kind polymorphism, and promoted datatypes—have brought Haskell to the doorstep of dependent types. Many dependently typed programs can even currently be encoded, but often the constructions are painful.
In this dissertation, I describe Dependent Haskell, which supports full dependent types via a backward-compatible extension to today’s Haskell. An important contribution of this work is an implementation, in GHC, of a portion of Dependent Haskell, with the rest to follow. The features I …
Data Persistence In Eiffel, Jimmy J. Johnson
Data Persistence In Eiffel, Jimmy J. Johnson
Theses and Dissertations--Computer Science
This dissertation describes an extension to the Eiffel programming language that provides automatic object persistence (the ability of programs to store objects and later recreate those objects in a subsequent execution of a program). The mechanism is orthogonal to other aspects of the Eiffel language. The mechanism serves four main purposes: 1) it gives Eiffel programmers a needed service, filling a gap between serialization, which provides limited persistence functions and database-mapping, which is cumbersome to use; 2) it greatly reduces the coding burden incurred by the programmer when objects must persist, allowing the programmer to focus instead on the business …
Spest – A Tool For Specification-Based Testing, Corrigan Redford Johnson
Spest – A Tool For Specification-Based Testing, Corrigan Redford Johnson
Master's Theses
This thesis presents a tool for SPEcification based teSTing (SPEST). SPEST is designed to use well known practices for automated black-box testing to reduce the burden of testing on developers. The tool uses a simple formal specification language to generate highly-readable unit tests that embody best practices for thorough software testing. Because the specification language used to generate the assertions about the code can be compiled, it can also be used to ensure that documentation describing the code is maintained during development and refactoring.
The utility and effectiveness of SPEST were validated through several exper- iments conducted with students in …
Srcmx: A Gui Application For Srcml, Brian Kovacs
Srcmx: A Gui Application For Srcml, Brian Kovacs
Williams Honors College, Honors Research Projects
srcMX is a GUI application that utilizes the srcML command-line tool to convert and display source code using the srcML format. The goal is for srcMX to promote the manipulation and exploration of source code using srcML. I also hope that the user-friendly nature inherent to GUI applications allows srcMX to introduce a larger audience to the many features offered by srcML. The application is written in C++ using the Qt and Qt Quick frameworks.
Automated Refactoring Of Legacy Java Software To Enumerated Types, Raffi Khatchadourian
Automated Refactoring Of Legacy Java Software To Enumerated Types, Raffi Khatchadourian
Publications and Research
Modern Java languages introduce several new features that offer significant improvements over older Java technology. In this article we consider the new enum construct, which provides language support for enumerated types. Prior to recent Java languages, programmers needed to employ various patterns (e.g., the weak enum pattern) to compensate for the absence of enumerated types in Java. Unfortunately, these compensation patterns lack several highly-desirable properties of the enum construct, most notably, type safety. We present a novel fully-automated approach for transforming legacy Java code to use the new enumeration construct. This semantics-preserving approach increases type safety, produces code that is …
The R Journal (December 2015) 7(2): Complete Issue, The R Foundation
The R Journal (December 2015) 7(2): Complete Issue, The R Foundation
The R Journal
Editorial, Bettina Grün
Contributed Research Articles
Fitting Conditional and Simultaneous Autoregressive Spatial Models in hglm, Moudud Alam, Lars Rönnegård, and Xia Shen
VSURF: An R Package for Variable Selection Using Random Forests, Robin Genuer, Jean-Michel Poggi, and Christine Tuleau-Malot
zoib: An R Package for Bayesian Inference for Beta Regression and Zero/One Inflated Beta Regression, Fang Liu, and Yunchuan Kong
apc: An R Package for Age-Period-Cohort Analysis, Bent Nielsen
QuantifQuantile: An R Package for Performing Quantile Regression Through Optimal Quantization, Isabelle Charlier, Davy Paindaveine, and Jérôme Saracco
Numerical Evaluation of the Gauss Hypergeometric Function with the hypergeo Package, Robin K. S. …
An R Package For The Panel Approach Method For Program Evaluation: Pampe, Ainhoa Vega-Bayo
An R Package For The Panel Approach Method For Program Evaluation: Pampe, Ainhoa Vega-Bayo
The R Journal
The pampe package for R implements the panel data approach method for program evaluation designed to estimate the causal effects of political interventions or treatments. This procedure exploits the dependence among cross-sectional units to construct a counterfactual of the treated unit(s), and it is an appropriate method for research events that occur at an aggregate level like countries or regions and that affect only one or a small number of units. The implementation of the pampe package is illustrated using data from Hong Kong and 24 other units, by examining the economic impact of the political and economic integration of …
Toward Unification Of Explicit And Implicit Invocation-Style Programming, Yoonsik Cheon
Toward Unification Of Explicit And Implicit Invocation-Style Programming, Yoonsik Cheon
Departmental Technical Reports (CS)
Subprograms like procedures and methods can be invoked explicitly or implicitly; in implicit invocation, an event implicitly causes the invocation of subprograms that are registered an interest in the event. Mixing these two styles is common in programming and often unavoidable in developing such software as GUI applications and event-based control systems. However, it isn't also uncommon for the mixed use to complicate programming logic and thus produce unclean code, code that is hard to read and understand. We show, through a small but realistic example, that the problem is not much on mixing two different styles itself but more …
A Systematic Derivation Of Loop Specifications Using Patterns, Aditi Barua, Yoonsik Cheon
A Systematic Derivation Of Loop Specifications Using Patterns, Aditi Barua, Yoonsik Cheon
Departmental Technical Reports (CS)
Any non-trivial program contains loop control structures such as while, for and do statements. A formal correctness proof of code containing loop control structures is typically performed using an induction-based technique, and oftentimes the most challenging step of an inductive proof is formulating a correct induction hypothesis. An incorrectly-formulated induction hypothesis will surely lead to a failure of the proof. In this paper we propose a systematic approach for formulating and driving specifications of loop control structures for formal analysis and verification of programs. We explain our approach using while loops and a functional program verification technique in which a …
Changes On Cran, Kurt Hornik, Achim Zeileis
Changes On Cran, Kurt Hornik, Achim Zeileis
The R Journal
New packages in CRAN task views
New contributed packages
Other changes
Conference Report: User! 2015, Torben Tvedebrink
Conference Report: User! 2015, Torben Tvedebrink
The R Journal
The11thinternational R user conference, useR! 2015, took place in Aalborg, Denmark, 1–3 July 2015. The Department of Mathematical Sciences, Aalborg University, hosted the conference, which took place in Aalborg Congress and Culture Centre.