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

Programming Languages and Compilers Commons

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

993 Full-Text Articles 1,456 Authors 492,140 Downloads 135 Institutions

All Articles in Programming Languages and Compilers

Faceted Search

993 full-text articles. Page 18 of 38.

Designing Smart Applications Using Ar (Augmented Reality), Kimberly A. De La Santa 2018 CUNY New York City College of Technology

Designing Smart Applications Using Ar (Augmented Reality), Kimberly A. De La Santa

Publications and Research

Augmented Reality is rapidly developing in popularity because it brings elements of the virtual world, into our real world. Augmented Reality (AR) is a variation of Virtual Reality (VR). VR technologies immerses a user inside an imaginary environment. While immersed, the user cannot see the real world around them. In contrast, AR allows the user to see the real world, with virtual objects and information intertwined. Therefore, AR supplements reality and enhances the things we see, hear, and feel. This research project will implement a Web page that gives the user the opportunity to experiment with AR.


Tamscript - High Level Programming Interface For The Abstract Tile Assembly Model, Perry Mills 2018 University of Arkansas, Fayetteville

Tamscript - High Level Programming Interface For The Abstract Tile Assembly Model, Perry Mills

Computer Science and Computer Engineering Undergraduate Honors Theses

This paper describes a programming interface, TAMScript, for use with the PyTAS simulator. The interface allows for the dynamic generation of tile types as the simulation progresses, with the goal of reducing complexity for researchers. This paper begins with an introduction to the PyTAS software and a description of the 3D model which it simulates. Next, the changes made to support a dynamic generation scheme are detailed, and some of the potential benefits of this scheme are outlined. Then several of the example scripts which have been written using the TAMScript interface are reviewed. Finally, the potential for future research …


Comparative Study Of Deep Learning Models For Network Intrusion Detection, Brian Lee, Sandhya Amaresh, Clifford Green, Daniel Engels 2018 Southern Methodist University

Comparative Study Of Deep Learning Models For Network Intrusion Detection, Brian Lee, Sandhya Amaresh, Clifford Green, Daniel Engels

SMU Data Science Review

In this paper, we present a comparative evaluation of deep learning approaches to network intrusion detection. A Network Intrusion Detection System (NIDS) is a critical component of every Internet connected system due to likely attacks from both external and internal sources. A NIDS is used to detect network born attacks such as Denial of Service (DoS) attacks, malware replication, and intruders that are operating within the system. Multiple deep learning approaches have been proposed for intrusion detection systems. We evaluate three models, a vanilla deep neural net (DNN), self-taught learning (STL) approach, and Recurrent Neural Network (RNN) based Long Short …


Proactive Empirical Assessment Of New Language Feature Adoption Via Automated Refactoring: The Case Of Java 8 Default Methods, Raffi T. Khatchadourian, Hidehiko Masuhara 2018 CUNY Hunter College

Proactive Empirical Assessment Of New Language Feature Adoption Via Automated Refactoring: The Case Of Java 8 Default Methods, Raffi T. Khatchadourian, Hidehiko Masuhara

Publications and Research

Programming languages and platforms improve over time, sometimes resulting in new language features that offer many benefits. However, despite these benefits, developers may not always be willing to adopt them in their projects for various reasons. In this paper, we describe an empirical study where we assess the adoption of a particular new language feature. Studying how developers use (or do not use) new language features is important in programming language research and engineering because it gives designers insight into the usability of the language to create meaning programs in that language. This knowledge, in turn, can drive future innovations …


Proactive Empirical Assessment Of New Language Feature Adoption Via Automated Refactoring: The Case Of Java 8 Default Methods, Raffi T. Khatchadourian, Hidehiko Masuhara 2018 CUNY Hunter College

Proactive Empirical Assessment Of New Language Feature Adoption Via Automated Refactoring: The Case Of Java 8 Default Methods, Raffi T. Khatchadourian, Hidehiko Masuhara

Publications and Research

Programming languages and platforms improve over time, sometimes resulting in new language features that offer many benefits. However, despite these benefits, developers may not always be willing to adopt them in their projects for various reasons. In this paper, we describe an empirical study where we assess the adoption of a particular new language feature. Studying how developers use (or do not use) new language features is important in programming language research and engineering because it gives designers insight into the usability of the language to create meaning programs in that language. This knowledge, in turn, can drive future innovations …


The Synmac Syntax Macroprocessor: Introduction And Manual, Version 5, Bruce J MacLennan 2018 University of Tennessee, Knoxville

The Synmac Syntax Macroprocessor: Introduction And Manual, Version 5, Bruce J Maclennan

Faculty Publications and Other Works -- EECS

A syntax macroprocessor permits parameterized text substitutions with greater syntactic flexibility than allowed with ordinary macroprocessors. This report describes the \emph{synmac} syntax macroprocessor, which permits arbitrarily delimited macro invocations, and thus allows the definition of new statement and expression forms or even complete languages. Synmac is a computationally complete programming language. We define the synmac macro language, document a prototype implementation, and give examples of its use.


Artificial Intelligence: An Analysis Of Alan Turing’S Role In The Conception And Development Of Intelligent Machinery, Erika L. Furtado 2018 Southeastern University - Lakeland

Artificial Intelligence: An Analysis Of Alan Turing’S Role In The Conception And Development Of Intelligent Machinery, Erika L. Furtado

Selected Honors Theses

The purpose of this thesis is to follow the thread of Alan Turing’s ideas throughout his decades of research and analyze how his predictions have come to fruition over the years. Turing’s Computing Machinery and Intelligence is the paper in which the Turing Test is described as an alternative way to answer the question “can machines think?” (Turing 433). Since the development of Turing’s original paper, there has been a tremendous amount of advancement in the field of artificial intelligence. The field has made its way into art classification as well as the medical industry. The main concept researched in …


Project Emerald: Designing A Language To Be Fun, Addison Bostian 2018 Ouachita Baptist University

Project Emerald: Designing A Language To Be Fun, Addison Bostian

Scholars Day

For a computer language to be fun, it needs to be flexible, powerful, and easy to use. Emerald is a compromise between all of these features.


Introducing Basic Programming To Pre-University Students: A Successful Initiative In Singapore, Heng Ngee MOK, Vandana RAMACHANDRA RAO 2018 Singapore Management University

Introducing Basic Programming To Pre-University Students: A Successful Initiative In Singapore, Heng Ngee Mok, Vandana Ramachandra Rao

Research Collection School Of Computing and Information Systems

“Let’s Code!” is an intensive 3-week basic programming course that aims to formally expose pre-university students in Singapore to programming. This course was conducted in blended-learning format, and included lecture videos, self-check quizzes, video conferences, meet-up tutorials and take-home programming assignments. The authors hope to capture the experience gained from running this course for educators who intend to implement similar courses in the future. Besides a detailed description of this course, significant changes that were made based on feedback from participants and members of the teaching team are documented here.


Combined Classifier For Cross-Project Defect Prediction: An Extended Empirical Study, Yun ZHANG, David LO, Xin XIA, Jianling SUN 2018 Zhejiang University

Combined Classifier For Cross-Project Defect Prediction: An Extended Empirical Study, Yun Zhang, David Lo, Xin Xia, Jianling Sun

Research Collection School Of Computing and Information Systems

To help developers better allocate testing and debugging efforts, many software defect prediction techniques have been proposed in the literature. These techniques can be used to predict classes that are more likely to be buggy based on past history of buggy classes. These techniques work well as long as a sufficient amount of data is available to train a prediction model. However, there is rarely enough training data for new software projects. To deal with this problem, cross-project defect prediction, which transfers a prediction model trained using data from one project to another, has been proposed and is regarded as …


A Utp Semantics For Communicating Processes With Shared Variables And Its Formal Encoding In Pvs, Ling SHI, Yongxin ZHAO, Yang LIU, Jun SUN, Jin Song DONG, Shengchao QIN 2018 Singapore Management University

A Utp Semantics For Communicating Processes With Shared Variables And Its Formal Encoding In Pvs, Ling Shi, Yongxin Zhao, Yang Liu, Jun Sun, Jin Song Dong, Shengchao Qin

Research Collection School Of Computing and Information Systems

CSP# (communicating sequential programs) is a modelling language designed for specifying concurrent systems by integrating CSP-like compositional operators with sequential programs updating shared variables. In this work, we define an observation-oriented denotational semantics in an open environment for the CSP# language based on the UTP framework. To deal with shared variables, we lift traditional event-based traces into mixed traces which consist of state-event pairs for recording process behaviours. To capture all possible concurrency behaviours between action/channel-based communications and global shared variables, we construct a comprehensive set of rules on merging traces from processes which run in parallel/interleaving. We also define …


Poster: Towards Safe Refactoring For Intelligent Parallelization Of Java 8 Streams, Yiming Tang, Raffi T. Khatchadourian, Mehdi Bagherzadeh, Syed Ahmed 2018 CUNY Graduate Center

Poster: Towards Safe Refactoring For Intelligent Parallelization Of Java 8 Streams, Yiming Tang, Raffi T. Khatchadourian, Mehdi Bagherzadeh, Syed Ahmed

Publications and Research

The Java 8 Stream API sets forth a promising new programming model that incorporates functional-like, MapReduce-style features into a mainstream programming language. However, using streams correctly and efficiently may involve subtle considerations. In this poster, we present our ongoing work and preliminary results to- wards an automated refactoring approach that assists developers in writing optimal stream code. The approach, based on ordering and typestate analysis, determines when it is safe and advantageous to convert streams to parallel and optimize a parallel streams.


Keep It Simple, Keep It Safe - Research On The Impacts Of Increasing Complexity Of Modern Enterprise Applications, Shawn Ware, David Phillips 2018 University of Nebraska at Omaha

Keep It Simple, Keep It Safe - Research On The Impacts Of Increasing Complexity Of Modern Enterprise Applications, Shawn Ware, David Phillips

UNO Student Research and Creative Activity Fair

As the Cybersecurity program within UNO continues to adapt to the ever-changing world of information systems and information security, the Cybersecurity Capstone has recently become an active, community-involvement project, where real-world organizations can receive valuable, useful research and information from students on their way towards a degree. This presentation encompasses two such projects from the Cybersecurity Capstone, looking at how modern, more complex systems can often increase system vulnerability.


Scaling Human Activity Recognition Via Deep Learning-Based Domain Adaptation, Md Abdullah Hafiz KHAN, Nirmalya ROY, Archan MISRA 2018 Singapore Management University

Scaling Human Activity Recognition Via Deep Learning-Based Domain Adaptation, Md Abdullah Hafiz Khan, Nirmalya Roy, Archan Misra

Research Collection School Of Computing and Information Systems

We investigate the problem of making human activityrecognition (AR) scalable–i.e., allowing AR classifiers trainedin one context to be readily adapted to a different contextualdomain. This is important because AR technologies can achievehigh accuracy if the classifiers are trained for a specific individualor device, but show significant degradation when the sameclassifier is applied context–e.g., to a different device located ata different on-body position. To allow such adaptation withoutrequiring the onerous step of collecting large volumes of labeledtraining data in the target domain, we proposed a transductivetransfer learning model that is specifically tuned to the propertiesof convolutional neural networks (CNNs). Our model, …


Internet Enabled Remote Driving Of A Combat Hybrid Electric Power System For Duty Cycle Measurement, Jarrett Goodell, Marc Compere, Wilford Smith, Mark Brudnak, Mike Pozolo, et al. 2018 Science Application International Corporation

Internet Enabled Remote Driving Of A Combat Hybrid Electric Power System For Duty Cycle Measurement, Jarrett Goodell, Marc Compere, Wilford Smith, Mark Brudnak, Mike Pozolo, Et Al.

Marc Compere

This paper describes a human-in-the-loop motion-based simulator interfaced to hybrid-electric power system hardware, both of which were used to measure the duty cycle of a combat vehicle in a virtual simulation environment. The project discussed is a greatly expanded follow-on to the experiment published in [1,7]. This paper is written in the context of [1,7] and therefore highlights the enhancements. The most prominent of these enhancements is the integration (in real-time) of the Power & Energy System Integration Lab (P&E SIL) with a motion base simulator by means of a “long haul” connection over the Internet (a geographical distance of …


On The Use Of Semantic-Based Aig To Automatically Generate Programming Exercises, Laura Zavala, Benito Mendoza 2018 CUNY Medgar Evers College

On The Use Of Semantic-Based Aig To Automatically Generate Programming Exercises, Laura Zavala, Benito Mendoza

Publications and Research

In introductory programming courses, proficiency is typically achieved through substantial practice in the form of relatively small assignments and quizzes. Unfortunately, creating programming assignments and quizzes is both, time-consuming and error-prone. We use Automatic Item Generation (AIG) in order to address the problem of creating numerous programming exercises that can be used for assignments or quizzes in introductory programming courses. AIG is based on the use of test-item templates with embedded variables and formulas which are resolved by a computer program with actual values to generate test-items. Thus, hundreds or even thousands of test-items can be generated with a single …


When Good Components Go Bad: Formally Secure Compilation Despite Dynamic Compromise, Guglielmo Fachini, Cătălin Hriţcu, Marco Stronati, Arthur Azevedo de Amorim, Carmine Abate, Roberto Blanco, Théo Laurent, Benjamin C. Pierce, Andrew Tolmach 2018 Inria Paris

When Good Components Go Bad: Formally Secure Compilation Despite Dynamic Compromise, Guglielmo Fachini, CăTăLin Hriţcu, Marco Stronati, Arthur Azevedo De Amorim, Carmine Abate, Roberto Blanco, Théo Laurent, Benjamin C. Pierce, Andrew Tolmach

Computer Science Faculty Publications and Presentations

We propose a new formal criterion for secure compilation, giving strong end-to-end security guarantees for software components written in unsafe, low-level languages with C-style undefined behavior. Our criterion is the first to model dynamic compromise in a system of mutually distrustful components running with least privilege. Each component is protected from all the others—in particular, from components that have encountered undefined behavior and become compromised. Each component receives secure compilation guarantees up to the point when it becomes compromised, after which an attacker can take complete control over the component and use any of its privileges to attack the remaining …


Relating Justification Logic Modality And Type Theory In Curry–Howard Fashion, Konstantinos Pouliasis 2018 The Graduate Center, City University of New York

Relating Justification Logic Modality And Type Theory In Curry–Howard Fashion, Konstantinos Pouliasis

Dissertations, Theses, and Capstone Projects

This dissertation is a work in the intersection of Justification Logic and Curry--Howard Isomorphism. Justification logic is an umbrella of modal logics of knowledge with explicit evidence. Justification logics have been used to tackle traditional problems in proof theory (in relation to Godel's provability) and philosophy (Gettier examples, Russel's barn paradox). The Curry--Howard Isomorphism or proofs-as-programs is an understanding of logic that places logical studies in conjunction with type theory and -- in current developments -- category theory. The point being that understanding a system as a logic, a typed calculus and, a language of a class of categories constitutes …


Vt-Revolution: Interactive Programming Video Tutorial Authoring And Watching System, Lingfeng BAO, Zhenchang XING, Xin XIA, David LO 2018 Singapore Management University

Vt-Revolution: Interactive Programming Video Tutorial Authoring And Watching System, Lingfeng Bao, Zhenchang Xing, Xin Xia, David Lo

Research Collection School Of Computing and Information Systems

Procedural knowledge describes actions and manipulations that are carried out to complete programming tasks. An effective way to document procedural knowledge is programming video tutorials. Existing solutions to adding interactive workflow and elements to programming videos have a dilemma between the level of desired interaction and the efforts required for authoring tutorials. In this work, we tackle this dilemma by designing and building a programming video tutorial authoring system that leverages operating system level instrumentation to log workflow history while tutorial authors are creating programming videos, and the corresponding tutorial watching system that enhances the learning experience of video tutorials …


Elephant 2000: A Programming Language For Remembering The Past And Building On It, Kerry J. Holmes 2018 The University of Akron

Elephant 2000: A Programming Language For Remembering The Past And Building On It, Kerry J. Holmes

Williams Honors College, Honors Research Projects

Elephant 2000 is a programming language to specify programs that accept user speech as text inputs and outputs speech text. The inputs and outputs are based on Dialogue Act theory which describes several forms of speech outputs, such as requests, questions, and answers. The language also relies on Named Entity Recognition to determine what types of objects a user references. These entities include persons, locations, times and so on. Using these attributes of user speech, a program is able to perform simple rule matching and pattern recognition to respond to input. The result is a programming language with English like …


Digital Commons powered by bepress