Open Access. Powered by Scholars. Published by Universities.®

Programming Languages and Compilers Commons™

Open Access. Powered by Scholars. Published by Universities.®

1,853 Full-Text Articles 3,371 Authors 797,974 Downloads 137 Institutions

All Articles in Programming Languages and Compilers

Faceted Search

1,853 full-text articles. Page 53 of 79.

Pop-Up Java: An Augmented Reality Mobile Game To Teach Java, Richard Myers 2017 Columbus State University

Pop-Up Java: An Augmented Reality Mobile Game To Teach Java, Richard Myers

Georgia Undergraduate Research Conference

As computers become more and more ubiquitous, it becomes increasingly important and prevalent to teach coding. Coding builds important life skills such as organization, higher order thinking, self-esteem, socialization and teamwork, among many others. However, learning the skills necessary to design and create an efficient program from scratch takes a lot of practice that can often be confusing and frustrating to newcomers.

There are a large number of programming languages in the world, each with their own merits. The TIOBE Programming Community Index calculates the popularity of programming languages by tallying search queries on major search engines, and shows that …


Levity Polymorphism (Extended Version), Richard A. Eisenberg, Simon Peyton Jones 2017 Bryn Mawr College

Levity Polymorphism (Extended Version), Richard A. Eisenberg, Simon Peyton Jones

Computer Science Faculty Research and Scholarship

Parametric polymorphism is one of the lynchpins of modern typed programming. A function that can work seamlessly over a variety of types simplifies code, helps to avoid errors introduced through duplication, and and is easy to maintain. However, polymorphism comes at a very real cost, one that each language with support for polymorphism has paid in different ways. This paper describes this cost, proposes a theoretically simple way to reason about the cost—that kinds, not types, are calling conventions—and details one approach to dealing with polymorphism that works in the context of a language, Haskell, that prizes both efficiency …


A Specification For Dependent Types In Haskell, Stephanie Weirich, Antoine Voizard, Pedro Henrique Azevedo de Amorim, Richard A. Eisenberg 2017 University of Pennsylvania

A Specification For Dependent Types In Haskell, Stephanie Weirich, Antoine Voizard, Pedro Henrique Azevedo De Amorim, Richard A. Eisenberg

Computer Science Faculty Research and Scholarship

We propose a core semantics for Dependent Haskell, an extension of Haskell with full-spectrum dependent types. Our semantics consists of two related languages. The first is a Curry-style dependently-typed language with nontermination, irrelevant arguments, and equality abstraction. The second, inspired by the Glasgow Haskell Compiler’s core language FC, is its explicitly-typed analogue, suitable for implementation in GHC. All of our results -- chiefly, type safety, along with theorems that relate these two languages -- have been formalized using the Coq proof assistant. Because our work is backwards compatible with Haskell, our type safety proof holds in the presence of nonterminating …


Constrained Type Families, J. Garrett Morris, Richard A. Eisenberg 2017 University of Kansas

Constrained Type Families, J. Garrett Morris, Richard A. Eisenberg

Computer Science Faculty Research and Scholarship

We present an approach to support partiality in type-level computation without compromising expressiveness or type safety. Existing frameworks for type-level computation either require totality or implicitly assume it. For example, type families in Haskell provide a powerful, modular means of defining type-level computation. However, their current design implicitly assumes that type families are total, introducing nonsensical types and significantly complicating the metatheory of type families and their extensions. We propose an alternative design, using qualified types to pair type-level computations with predicates that capture their domains. Our approach naturally captures the intuitive partiality of type families, simplifying their metatheory. As …


A Physics-Based Approach To Modeling Wildland Fire Spread Through Porous Fuel Beds, Tingting Tang 2017 University of Kentucky

A Physics-Based Approach To Modeling Wildland Fire Spread Through Porous Fuel Beds, Tingting Tang

Theses and Dissertations--Mechanical and Aerospace Engineering

Wildfires are becoming increasingly erratic nowadays at least in part because of climate change. CFD (computational fluid dynamics)-based models with the potential of simulating extreme behaviors are gaining increasing attention as a means to predict such behavior in order to aid firefighting efforts. This dissertation describes a wildfire model based on the current understanding of wildfire physics. The model includes physics of turbulence, inhomogeneous porous fuel beds, heat release, ignition, and firebrands. A discrete dynamical system for flow in porous media is derived and incorporated into the subgrid-scale model for synthetic-velocity large-eddy simulation (LES), and a general porosity-permeability model is …


Automated Refactoring Of Legacy Java Software To Default Methods, Raffi Khatchadourian, Hidehiko Masuhara 2017 CUNY Hunter College

Automated Refactoring Of Legacy Java Software To Default Methods, Raffi Khatchadourian, Hidehiko Masuhara

Publications and Research

Java 8 default methods, which allow interfaces to contain (instance) method implementations, are useful for the skeletal implementation software design pattern. However, it is not easy to transform existing software to exploit default methods as it requires analyzing complex type hierarchies, resolving multiple implementation inheritance issues, reconciling differences between class and interface methods, and analyzing tie-breakers (dispatch precedence) with overriding class methods to preserve type-correctness and confirm semantics preservation. In this paper, we present an efficient, fully-automated, type constraint-based refactoring approach that assists developers in taking advantage of enhanced interfaces for their legacy Java software. The approach features an extensive …


Long And Short-Range Air Navigation On Spherical Earth, Nihad E. Daidzic 2017 AAR Aerospace Consulting, LLC

Long And Short-Range Air Navigation On Spherical Earth, Nihad E. Daidzic

International Journal of Aviation, Aeronautics, and Aerospace

Global range air navigation implies non-stop flight between any two airports on Earth. Such effort would require airplanes with the operational air range of at least 12,500 NM which is about 40-60% longer than anything existing in commercial air transport today. Air transportation economy requires flying shortest distance, which in the case of spherical Earth are Orthodrome arcs. Rhumb-line navigation has little practical use in long-range flights, but has been presented for historical reasons and for comparison. Database of about 50 major international airports from every corner of the world has been designed and used in testing and route validation. …


Exploratory Analysis Of Discourses Between Students Engaged In A Debugging Task, Ma. Mercedes T. Rodrigo 2017 Ateneo de Manila University

Exploratory Analysis Of Discourses Between Students Engaged In A Debugging Task, Ma. Mercedes T. Rodrigo

Department of Information Systems & Computer Science Faculty Publications

This paper determined if and how high-performing and low-performing students differed in the language that they used as they collaborated on a debugging task. 180 students worked in pairs to debug 12 small programs with known errors. Students were segregated into high and low achievement levels based on the number of bugs they found. Chat transcripts from the pairs were analyzed using the Linguistic Inquiry and Word Count (LIWC) software. We found that high- and low-performing students only varied in terms of their use of words that implied discrepancy and sadness.


Designing An Intervention For Novice Programmers Based On Meaningful Gamification: An Expert Evaluation, Jenilyn L. Agapito, Ma. Mercedes T. Rodrigo 2017 Ateneo de Manila University

Designing An Intervention For Novice Programmers Based On Meaningful Gamification: An Expert Evaluation, Jenilyn L. Agapito, Ma. Mercedes T. Rodrigo

Department of Information Systems & Computer Science Faculty Publications

Gamification is defined as the addition of game-like elements and mechanics to non-game contexts to encourage certain desired behaviors. It is becoming a popular classroom intervention used in computer science instruction, including CS1, the first course computer science students take. It is being operationalized to enhance students' learning experience and achievement. However, existing studies have mostly implemented reward-based game elements which have resulted to contrasting behaviors among the students. Meaningful gamification, characterized as the use of game design elements to encourage users build internal motivation to behave in a certain way, is contended to be a more effective approach. The …


Visualizing Morphogenesis With The Processing Programming Language, Avik Patel, Amar Bains, Richard Millet, Tamira Elul 2017 Touro University California

Visualizing Morphogenesis With The Processing Programming Language, Avik Patel, Amar Bains, Richard Millet, Tamira Elul

Faculty Publications & Research of the TUC College of Osteopathic Medicine

We used Processing, a visual artists’ programming language developed at MIT Media Lab, to simulate cellular mechanisms of morphogenesis – the generation of form and shape in embryonic tissues. Based on observations of in vivo time-lapse image sequences, we created animations of neural cell motility responsible for elongating the spinal cord, and of optic axon branching dynamics that establish primary visual connectivity. These visual models underscore the significance of the computational decomposition of cellular dynamics underlying morphogenesis.


Grace's Inheritance, James Noble, Andrew P. Black, Kim B. Bruce, Michael Homer, Timothy Jones 2017 Victoria University of Wellington

Grace's Inheritance, James Noble, Andrew P. Black, Kim B. Bruce, Michael Homer, Timothy Jones

Computer Science Faculty Publications and Presentations

This article is an apologia for the design of inheritance in the Grace educational programming language: it explains how the design of Grace’s inheritance draws from inheritance mechanisms in predecessor languages, and defends that design as the best of the available alternatives. For simplicity, Grace objects are generated from object constructors, like those of Emerald, Lua, and Javascript; for familiarity, the language also provides classes and inheritance, like Simula, Smalltalk and Java. The design question we address is whether or not object constructors can provide an inheritance semantics similar to classes.


Stochastic Invariants For Probabilistic Termination, Krishnendu CHATTERJEE, Petr NOVOTNÝ, Dorde ZIKELIC 2017 Singapore Management University

Stochastic Invariants For Probabilistic Termination, Krishnendu Chatterjee, Petr Novotný, Dorde Zikelic

Research Collection School Of Computing and Information Systems

Termination is one of the basic liveness properties, and we study the termination problem for probabilistic programs with real-valued variables. Previous works focused on the qualitative problem that asks whether an input program terminates with probability 1 (almost-sure termination). A powerful approach for this qualitative problem is the notion of ranking supermartingales with respect to a given set of invariants. The quantitative problem (probabilistic termination) asks for bounds on the termination probability, and this problem has not been addressed yet. A fundamental and conceptual drawback of the existing approaches to address probabilistic termination is that even though the supermartingales consider …


The R Journal (December 2016) 8(2): Complete Issue, The R Foundation 2016 The R Foundation

The R Journal (December 2016) 8(2): Complete Issue, The R Foundation

The R Journal

Editorial, Michael Lawrence

Contributed Research Articles

multipleNCC: Inverse Probability Weighting of Nested Case-Control Data, Nathalie C. Støer and Sven Ove Samuelsen

QPot: An R Package for Stochastic Differential Equation Quasi-Potential Analysis, Christopher M. Moore, Christopher R. Stieha, Ben C. Nolting, Maria K. Cameron, and Karen C. Abbott

Design of the TRONCO BioConductor Package for TRanslational ONCOlogy, Marco Antoniotti, Giulio Caravagna, Luca De Sano, Alex Graudenzi, Giancarlo Mauri, Bud Mishra, and Daniele Ramazzotti

diverse: An R Package to Analyze Diversity in Complex Systems, Miguel R. Guevara, Dominik Hartmann, and Marcelo Mendoza

Simulating Correlated Binary and Multinomial Responses under Marginal Model Specification: …


Changes In R, R Core Team 2016 University of Nebraska - Lincoln

Changes In R, R Core Team

The R Journal

CHANGES IN R 3.3.2 patched


Mctest: An R Package For Detection Of Collinearity Among Regressors, Muhammad Imdadullah, Muhammad Aslam, Saima Altaf 2016 Bahauddin Zakariya University

Mctest: An R Package For Detection Of Collinearity Among Regressors, Muhammad Imdadullah, Muhammad Aslam, Saima Altaf

The R Journal

It is common for linear regression models to be plagued with the problem of multicollinearity when two or more regressors are highly correlated. This problem results in unstable estimates of regression coefficients and causes some serious problems in validation and interpretation of the model. Different diagnostic measures are used to detect multicollinearity among regressors. Many statistical software and R packages provide few diagnostic measures for the judgment of multicollinearity. Most widely used diagnostic measures in these software are: coefficient of determination (R2), variance inflation factor/tolerance limit (VIF/TOL), eigenvalues, condition number (CN) and condition index (CI) etc. In this manuscript, we …


Subgroup Discovery With Evolutionary Fuzzy Systems In R: The Sdefsr Package, Ángel M. García, Francisco Charte, Pedro González, Cristóbal J. Carmona, María J. del Jesus 2016 University of Jaén

Subgroup Discovery With Evolutionary Fuzzy Systems In R: The Sdefsr Package, Ángel M. García, Francisco Charte, Pedro González, Cristóbal J. Carmona, María J. Del Jesus

The R Journal

Subgroup discovery is a data mining task halfway between descriptive and predictive data mining. Nowadays it is very relevant for researchers due to the fact that the knowledge extracted is simple and interesting. For this task, evolutionary fuzzy systems are well suited algorithms because they can find a good trade-off between multiple objectives in large search spaces. In fact, this paper presents the SDEFSR package, which contains all the evolutionary fuzzy systems for subgroup discovery presented throughout the literature. It is a package without dependencies on other software, providing functions with recommended default parameters. In addition, it brings a graphical …


Diverse: An R Package To Analyze Diversity In Complex Systems, Miguel R. Guevara, Dominik Hartmann, Marcelo Mendoza 2016 Universidad Técnica Federico Santa María

Diverse: An R Package To Analyze Diversity In Complex Systems, Miguel R. Guevara, Dominik Hartmann, Marcelo Mendoza

The R Journal

The package diverse provides an easy-to-use interface to calculate and visualize different aspects of diversity in complex systems. In recent years, an increasing number of research projects in social and interdisciplinary sciences, including fields like innovation studies, scientometrics, economics, and network science have emphasized the role of diversification and sophistication of socioeconomic systems. However, so far no dedicated package exists that covers the needs of these emerging fields and interdisciplinary teams. Most packages about diversity tend to be created according to the demands and terminology of particular areas of natural and biological sciences. The package diverse uses interdisciplinary concepts of …


Qpot: An R Package For Stochastic Differential Equation Quasi-Potential Analysis, Christopher M. Moore, Christopher R. Stieha, Ben C. Nolting, Maria K. Cameron, Karen C. Abbott 2016 Case Western Reserve University

Qpot: An R Package For Stochastic Differential Equation Quasi-Potential Analysis, Christopher M. Moore, Christopher R. Stieha, Ben C. Nolting, Maria K. Cameron, Karen C. Abbott

The R Journal

QPot (pronounced ky oo + p¨ at) is an R package for analyzing two-dimensional systems of stochastic differential equations. It provides users with a wide range of tools to simulate, analyze, and visualize the dynamics of these systems. One of QPot’s key features is the computation of the quasi-potential, an important tool for studying stochastic systems. Quasi-potentials are particularly useful for comparing the relative stabilities of equilibria in systems with alternative stable states. This paper describes QPot’s primary functions, and explains how quasi-potentials can yield insights about the dynamics of stochastic systems. Three worked examples guide users through the application …


Normal Tolerance Interval Procedures In The Tolerance Package, Derek S. Young 2016 University of Kentucky

Normal Tolerance Interval Procedures In The Tolerance Package, Derek S. Young

The R Journal

Statistical tolerance intervals are used for a broad range of applications, such as quality control, engineering design tests, environmental monitoring, and bioequivalence testing. tolerance is the only R package devoted to procedures for tolerance intervals and regions. Perhaps the most commonly-employed functions of the package involve normal tolerance intervals. A number of new procedures for this setting have been included in recent versions of tolerance. In this paper, we discuss and illustrate the functions that implement these normal tolerance interval procedures, one of which is a new, novel type of operating characteristic curve.


Micompr: An R Package For Multivariate Independent Comparison Of Observations, Nuno Fachada, João Rodrigues, Vitor V. Lopes, Rui C. Martins, Agostinho C. Rosa 2016 Universidade de Lisboa,

Micompr: An R Package For Multivariate Independent Comparison Of Observations, Nuno Fachada, João Rodrigues, Vitor V. Lopes, Rui C. Martins, Agostinho C. Rosa

The R Journal

The R package micompr implements a procedure for assessing if two or more multivariate samples are drawn from the same distribution. The procedure uses principal component analysis to convert multivariate observations into a set of linearly uncorrelated statistical measures, which are then compared using a number of statistical methods. This technique is independent of the distributional properties of samples and automatically selects features that best explain their differences. The procedure is appropriate for comparing samples of time series, images, spectrometric measures or similar high-dimension multivariate observations


Digital Commons powered by bepress