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

Physical Sciences and Mathematics Commons

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

Programming Languages and Compilers

2015

Institution
Keyword
Publication
Publication Type

Articles 1 - 30 of 51

Full-Text Articles in Physical Sciences and Mathematics

Web Based Attendance Management System (Project Source Code In Php And Mysql), Dr. Muhammad Zubair Asghar Dec 2015

Web Based Attendance Management System (Project Source Code In Php And Mysql), Dr. Muhammad Zubair Asghar

Dr. Muhammad Zubair Asghar

This source code deals with the development of web based attendance management system using PHP and MYSQL. It is developed by one my BSCS student, namely sahar hassan under my supervision.


A Systematic Derivation Of Loop Specifications Using Patterns, Aditi Barua, Yoonsik Cheon Dec 2015

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 …


Toward Unification Of Explicit And Implicit Invocation-Style Programming, Yoonsik Cheon Dec 2015

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 …


An Immersive Telepresence System Using Rgb-D Sensors And Head-Mounted Display, Xinzhong Lu, Ju Shen, Saverio Perugini, Jianjun Yang Dec 2015

An Immersive Telepresence System Using Rgb-D Sensors And Head-Mounted Display, Xinzhong Lu, Ju Shen, Saverio Perugini, Jianjun Yang

Computer Science Faculty Publications

We present a tele-immersive system that enables people to interact with each other in a virtual world using body gestures in addition to verbal communication. Beyond the obvious applications, including general online conversations and gaming, we hypothesize that our proposed system would be particularly beneficial to education by offering rich visual contents and interactivity. One distinct feature is the integration of egocentric pose recognition that allows participants to use their gestures to demonstrate and manipulate virtual objects simultaneously. This functionality enables the instructor to effectively and efficiently explain and illustrate complex concepts or sophisticated problems in an intuitive manner. The …


Transforming C Openmp Programs For Verification In Civl, Michael Rogers Dec 2015

Transforming C Openmp Programs For Verification In Civl, Michael Rogers

Department of Computer Science and Engineering: Dissertations, Theses, and Student Research

There are numerous way to express parallelism which can make it challenging for developers to verify these programs. Many tools only target a single dialect but the Concurrency Intermediate Verification Language (CIVL) targets MPI, Pthreads, and CUDA. CIVL provides a general concurrency model that can represent pro- grams in a variety of concurrency dialects. CIVL includes a front-end that support all of the dialects mentioned above. The back-end is a verifier that uses model checking and symbolic execution to check standard properties.

In this thesis, we have designed and implemented a transformer that will take C OpenMP programs and transform …


Detecting Broken Pointcuts Using Structural Commonality And Degree Of Interest, Raffi T. Khatchadourian, Awais Rashd, Hidehiko Masuhara, Takuya Watanabe Nov 2015

Detecting Broken Pointcuts Using Structural Commonality And Degree Of Interest, Raffi T. Khatchadourian, Awais Rashd, Hidehiko Masuhara, Takuya Watanabe

Publications and Research

Pointcut fragility is a well-documented problem in Aspect-Oriented Programming; changes to the base code can lead to join points incorrectly falling in or out of the scope of pointcuts. Deciding which pointcuts have broken due to base-code changes is daunting, especially in large and complex systems. We present an automated approach that recommends pointcuts that are likely to require modification due to a certain base-code change and ones that do not. Our hypothesis is that join points selected by a pointcut exhibit common structural characteristics. Patterns describing such commonalities recommend pointcuts that have potentially broken to the developer. The approach …


Codehow: Effective Code Search Based On Api Understanding And Extended Boolean Model (E), Fei Lv, Jian-Guang Lou, Shaowei Wang, Dongmei Zhang, Jainjun Zhao Nov 2015

Codehow: Effective Code Search Based On Api Understanding And Extended Boolean Model (E), Fei Lv, Jian-Guang Lou, Shaowei Wang, Dongmei Zhang, Jainjun Zhao

Research Collection School Of Computing and Information Systems

Over the years of software development, a vast amount of source code has been accumulated. Many code search tools were proposed to help programmers reuse previously-written code by performing free-text queries over a large-scale codebase. Our experience shows that the accuracy of these code search tools are often unsatisfactory. One major reason is that existing tools lack of query understanding ability. In this paper, we propose CodeHow, a code search technique that can recognize potential APIs a user query refers to. Having understood the potentially relevant APIs, CodeHow expands the query with the APIs and performs code retrieval by applying …


Porting The Netbeans Java 8 Enhanced For Loop Lambda Expression Refactoring To Eclipse, Md Arefin, Raffi T. Khatchadourian Oct 2015

Porting The Netbeans Java 8 Enhanced For Loop Lambda Expression Refactoring To Eclipse, Md Arefin, Raffi T. Khatchadourian

Publications and Research

Java 8 is one of the largest upgrades to the popular language and framework in over a decade. However, the Eclipse IDE is missing several key refactorings that could help developers take advantage of new features in Java 8 more easily. In this paper, we discuss our ongoing work in porting the enhanced for loop to lambda expression refactoring from the NetBeans IDE to Eclipse. We also discuss future plans for new Java 8 refactorings not found in any current IDE.


Porting The Netbeans Java 8 Enhanced For Loop Lambda Expression Refactoring To Eclipse, Md Arefin, Raffi T. Khatchadourian Oct 2015

Porting The Netbeans Java 8 Enhanced For Loop Lambda Expression Refactoring To Eclipse, Md Arefin, Raffi T. Khatchadourian

Publications and Research

Java 8 is one of the largest upgrades to the popular language and framework in over a decade. However, the Eclipse IDE is missing several key refactorings that could help developers take advantage of new features in Java 8 more easily. In this paper, we discuss our ongoing work in porting the enhanced for loop to lambda expression refactoring from the NetBeans IDE to Eclipse. We also discuss future plans for new Java 8 refactorings not found in any current IDE.


Leveraging Synergy Between Database And Programming Language Courses, Brian T. Howard Oct 2015

Leveraging Synergy Between Database And Programming Language Courses, Brian T. Howard

Computer Science Faculty publications

Undergraduate courses in database systems and programming languages are frequently taught without much overlap. This paper argues that there is a substantial benefit to emphasizing some areas of commonality, both old and new, between the two subjects. Examples of cross-fertilization that may be used to enhance one of both of the courses include query language design and implementation, object-relational mapping, transactional memory, and various aspects of the recent "NoSQL" movement.


Fraglight: Shedding Light On Broken Pointcuts In Evolving Aspect-Oriented Software, Raffi T. Khatchadourian, Awais Rashid, Hidehiko Masuhara, Takuya Watanabe Oct 2015

Fraglight: Shedding Light On Broken Pointcuts In Evolving Aspect-Oriented Software, Raffi T. Khatchadourian, Awais Rashid, Hidehiko Masuhara, Takuya Watanabe

Publications and Research

Pointcut fragility is a well-documented problem in Aspect-Oriented Programming; changes to the base code can lead to join points incorrectly falling in or out of the scope of pointcuts. Deciding which pointcuts have broken due to base-code changes is daunting, especially in large and complex systems. We demonstrate an automated tool called FRAGLIGHT that recommends a set of pointcuts that are likely to require modification due to a certain base-code change. The underlying approach is rooted in harnessing unique and arbitrarily deep structural commonality between program elements corresponding to join points selected by a pointcut in a particular software version. …


Contract-Based General-Purpose Gpu Programming, Alexey Kolesnichenko, Christopher M. Poskitt, Sebastian Nanz, Bertrand Meyer Oct 2015

Contract-Based General-Purpose Gpu Programming, Alexey Kolesnichenko, Christopher M. Poskitt, Sebastian Nanz, Bertrand Meyer

Research Collection School Of Computing and Information Systems

Using GPUs as general-purpose processors has revolutionized parallel computing by offering, for a large and growing set of algorithms, massive data-parallelization on desktop machines. An obstacle to widespread adoption, however, is the difficulty of programming them and the low-level control of the hardware required to achieve good performance. This paper suggests a programming library, SafeGPU, that aims at striking a balance between programmer productivity and performance, by making GPU data-parallel operations accessible from within a classical object-oriented programming language. The solution is integrated with the design-by-contract approach, which increases confidence in functional program correctness by embedding executable program specifications into …


Scalable Equivalence Checking For Behavioral Synthesis, Zhenkun Yang Aug 2015

Scalable Equivalence Checking For Behavioral Synthesis, Zhenkun Yang

Dissertations and Theses

Behavioral synthesis is the process of compiling an Electronic System Level (ESL) design to a register-transfer level (RTL) implementation. ESL specifications define the design functionality at a high level of abstraction (e.g., with C/C++ or SystemC), and thus provide a promising approach to address the exacting demands to develop feature-rich, optimized, and complex hardware systems within aggressive time-to-market schedules. Behavioral synthesis entails application of complex and error-prone transformations during the compilation process. Therefore, the adoption of behavioral synthesis highly depends on our ability to ensure that the synthesized RTL conforms to the ESL description. This dissertation provides an end-to-end scalable …


An Interactive User Interface Improves Data Visualization In R, Nathan Sweem Aug 2015

An Interactive User Interface Improves Data Visualization In R, Nathan Sweem

STAR Program Research Presentations

An interactive user interface application was created using the R statistical computing environment and the Shiny package to visualize historical data on the performance of mutual funds and exchange-traded funds (ETFs). Historical data for these funds is scraped from the Yahoo! Finance webpage. The application allows the user to analyze this historical data by category and fund family, which are also scraped from Yahoo! Finance. The application generates interactive plots to compare the performance of selected mutual funds and ETFs given the baseline and center determined by the user. The application has been modified to attentively match the data with …


New Product Development Flexibility In A Competitive Environment, Janne Kettunen, Yael Gruksha-Cockayne, Zeger Degraeve, Bert De Reyck Aug 2015

New Product Development Flexibility In A Competitive Environment, Janne Kettunen, Yael Gruksha-Cockayne, Zeger Degraeve, Bert De Reyck

Research Collection Lee Kong Chian School Of Business

Managerial flexibility can have a significant impact on the value of new product development projects. We investigate how the market environment in which a firm operates influences the value and use of development flexibility. We characterize the market environment according to two dimensions, namely (i) its intensity, and (ii) its degree of innovation. We show that these two market characteristics can have a different effect on the value of flexibility. In particular, we show that more intense or innovative environments may increase or decrease the value of flexibility. For instance, we demonstrate that the option to defer a product launch …


Memes As Building Blocks: A Case Study On Evolutionary Optimization + Transfer Learning For Routing Problems, Liang Feng, Yew-Soon Ong, Ah-Hwee Tan, Ivor W. Tsang Aug 2015

Memes As Building Blocks: A Case Study On Evolutionary Optimization + Transfer Learning For Routing Problems, Liang Feng, Yew-Soon Ong, Ah-Hwee Tan, Ivor W. Tsang

Research Collection School Of Computing and Information Systems

A significantly under-explored area of evolutionary optimization in the literature is the study of optimization methodologies that can evolve along with the problems solved. Particularly, present evolutionary optimization approaches generally start their search from scratch or the ground-zero state of knowledge, independent of how similar the given new problem of interest is to those optimized previously. There has thus been the apparent lack of automated knowledge transfers and reuse across problems. Taking this cue, this paper presents a Memetic Computational Paradigm based on Evolutionary Optimization + Transfer Learning for search, one that models how human solves problems, and embarks on …


Neural Modeling Of Sequential Inferences And Learning Over Episodic Memory, Budhitama Subagdja, Ah-Hwee Tan Aug 2015

Neural Modeling Of Sequential Inferences And Learning Over Episodic Memory, Budhitama Subagdja, Ah-Hwee Tan

Research Collection School Of Computing and Information Systems

Episodic memory is a significant part of cognition for reasoning and decision making. Retrieval in episodic memory depends on the order relationships of memory items which provides flexibility in reasoning and inferences regarding sequential relations for spatio-temporal domain. However, it is still unclear how they are encoded and how they differ from representations in other types of memory like semantic or procedural memory. This paper presents a neural model of sequential representation and inferences on episodic memory. It contrasts with the common views on sequential representation in neural networks that instead of maintaining transitions between events to represent sequences, they …


Detection And Classification Of Malicious Javascript Via Attack Behavior Modelling, Yinxing Xue, Junjie Wang, Yang Liu, Hao Xiao, Jun Sun, Mahinthan Chandramohan Jul 2015

Detection And Classification Of Malicious Javascript Via Attack Behavior Modelling, Yinxing Xue, Junjie Wang, Yang Liu, Hao Xiao, Jun Sun, Mahinthan Chandramohan

Research Collection School Of Computing and Information Systems

Existing malicious JavaScript (JS) detection tools and commercial anti-virus tools mostly use feature-based or signature-based approaches to detect JS malware. These tools are weak in resistance to obfuscation and JS malware variants, not mentioning about providing detailed information of attack behaviors. Such limitations root in the incapability of capturing attack behaviors in these approches. In this paper, we propose to use Deterministic Finite Automaton (DFA) to abstract and summarize common behaviors of malicious JS of the same attack type. We propose an automatic behavior learning framework, named JS∗ , to learn DFA from dynamic execution traces of JS malware, where …


Automatic Video Self Modeling For Voice Disorder, Ju Shen, Changpeng Ti, Anusha Raghunathan, Sen-Ching S. Cheung, Rita Patel Jul 2015

Automatic Video Self Modeling For Voice Disorder, Ju Shen, Changpeng Ti, Anusha Raghunathan, Sen-Ching S. Cheung, Rita Patel

Computer Science Faculty Publications

Video self modeling (VSM) is a behavioral intervention technique in which a learner models a target behavior by watching a video of him- or herself. In the field of speech language pathology, the approach of VSM has been successfully used for treatment of language in children with Autism and in individuals with fluency disorder of stuttering. Technical challenges remain in creating VSM contents that depict previously unseen behaviors. In this paper, we propose a novel system that synthesizes new video sequences for VSM treatment of patients with voice disorders. Starting with a video recording of a voice-disorder patient, the proposed …


Meta-Raps Hybridization With Machine Learning Algorithms, Fatemah Al-Duoli Jul 2015

Meta-Raps Hybridization With Machine Learning Algorithms, Fatemah Al-Duoli

Engineering Management & Systems Engineering Theses & Dissertations

This dissertation focuses on advancing the Metaheuristic for Randomized Priority Search algorithm, known as Meta-RaPS, by integrating it with machine learning algorithms. Introducing a new metaheuristic algorithm starts with demonstrating its performance. This is accomplished by using the new algorithm to solve various combinatorial optimization problems in their basic form. The next stage focuses on advancing the new algorithm by strengthening its relatively weaker characteristics. In the third traditional stage, the algorithms are exercised in solving more complex optimization problems. In the case of effective algorithms, the second and third stages can occur in parallel as researchers are eager to …


Metalogic Notes, Saverio Perugini Jun 2015

Metalogic Notes, Saverio Perugini

Saverio Perugini

A collection of notes, formulas, theorems, postulates and terminology in symbolic logic, syntactic notions, semantic notions, linkages between syntax and semantics, soundness and completeness, quantified logic, first-order theories, Goedel's First Incompleteness Theorem and more.


Statistics Notes, Saverio Perugini Jun 2015

Statistics Notes, Saverio Perugini

Saverio Perugini

A collection of terms, definitions, formulas and explanations about statistics.


Simple Macro: Addon For World Of Warcraft, Yemane Gebreyesus Jun 2015

Simple Macro: Addon For World Of Warcraft, Yemane Gebreyesus

Computer Engineering

This senior project was started to try and solve a problem within World of Warcraft. That particular problem is the underdeveloped default macro interface, which Simple Macro aims to remedy by creating a more user-friendly interface that is accessible by a wider audience. It employs a click through method of accessing and editing data to reduce the amount of typing necessary. The addon also has a feature to specifically help players that want to change a target in certain groups of macros all at once. The project was developed in both Lua and XML.


Verifying Parameterized Timed Security Protocols, Li Li, Jun Sun, Yang Liu, Jin Song Dong Jun 2015

Verifying Parameterized Timed Security Protocols, Li Li, Jun Sun, Yang Liu, Jin Song Dong

Research Collection School Of Computing and Information Systems

Quantitative timing is often explicitly used in systems for better security, e.g., the credentials for automatic website logon often has limited lifetime. Verifying timing relevant security protocols in these systems is very challenging as timing adds another dimension of complexity compared with the untimed protocol verification. In our previous work, we proposed an approach to check the correctness of the timed authentication in security protocols with fixed timing constraints. However, a more difficult question persists, i.e., given a particular protocol design, whether the protocol has security flaws in its design or it can be configured secure with proper parameter values? …


A Cultural Diffusion Model For The Rise And Fall Of Programming Languages, Sergi Valverde, Ricard V. Solé Jun 2015

A Cultural Diffusion Model For The Rise And Fall Of Programming Languages, Sergi Valverde, Ricard V. Solé

Human Biology Open Access Pre-Prints

Our interaction with complex computing machines is mediated by programming languages (PLs) which constitute one of the major innovations in the evolution of technology. PLs allowed a flexible, scalable and fast use of hardware and are largely responsible for shaping the history of information technology since the rise of computers in the 1950s. The rapid growth and impact of computers was followed closely by the development of programming languages. As it occurs with natural, human languages, they emerged and got extinct. There has been always a diversity of coexisting PLs that somewhat compete among them, while occupying special niches. Here …


Adding Syntax Parameters To The Sweet.Js Macro Library For Javascript, Vimal Kumar May 2015

Adding Syntax Parameters To The Sweet.Js Macro Library For Javascript, Vimal Kumar

Master's Projects

Lisp and Scheme have demonstrated the power of macros to enable programmers to evolve and craft languages. A macro is a rule or pattern that specifies how a certain input sequence should be mapped to an output sequence according to some defined procedure. Using a macro system a programmer can introduce new syntactic elements to the programming language. Macros found in a program are expanded by a macro expander and allow a programmer to enable code reuse. Mozilla Sweet.JS provides a way for developers to enrich their JavaScript code by adding new syntax to the language through the use of …


Introducing Faceted Exception Handling For Dynamic Information Flow, Sri Tej Narala May 2015

Introducing Faceted Exception Handling For Dynamic Information Flow, Sri Tej Narala

Master's Projects

JavaScript is most commonly used as a part of web browsers, especially client- side scripts interacting with the user. JavaScript is also the source of many security problems, which includes cross-site scripting attacks. The primary challenge is that code from untrusted sources run with full privileges on the client side, thus lead- ing to security breaches. This paper develops information flow controls with proper exception handling to prevent violations of data confidentiality and integrity.

Faceted values are a mechanism to handle dynamic information flow security in a way that overcomes the limitations caused by dynamic execution, but previous work has …


Operational Semantics For Featherweight Lua, Hanshu Lin May 2015

Operational Semantics For Featherweight Lua, Hanshu Lin

Master's Projects

Lua is a small, embedded language to provide scripting in other languages. De- spite a clean, minimal syntax, it is still too complex for formal reasoning because of some syntactic sugar or specific syntax structures in Lua.

This thesis develops Featherweight Lua (FWLua), following the tradition of lan- guages like Featherweight Java[1] and Featherweight JavaScript[2]. The goal is to develop a core of language features that, while remaining simple enough for formal reasoning, also remain faithful to the central characteristics of the language. Specifi- cally for Lua, the core features that are essential for our modeling include:

∙ First-class functions …


Heuristic Collective Learning For Efficient And Robust Emergence Of Social Norms, Jianye Hao, Jun Sun, Dongping Huang, Yi Cai, Chao Yu May 2015

Heuristic Collective Learning For Efficient And Robust Emergence Of Social Norms, Jianye Hao, Jun Sun, Dongping Huang, Yi Cai, Chao Yu

Research Collection School Of Computing and Information Systems

In multiagent systems, social norms is a useful technique in regulating agents’ behaviors to achieve coordination or cooperation among agents. One important research question is to investigate how a desirable social norm can be evolved in a bottom-up manner through local interactions. In this paper, we propose two novel learning strategies under the collective learning framework: collective learning EV-l and collective learning EV-g, to efficiently facilitate the emergence of social norms. Experimental results show that both learning strategies can support the emergence of desirable social norms more efficiently in a much broader range of multiagent interaction scenarios than previous work, …


Locating Potential Aspect Interference Using Clustering Analysis, Brian Todd Bennett May 2015

Locating Potential Aspect Interference Using Clustering Analysis, Brian Todd Bennett

CCE Theses and Dissertations

Software design continues to evolve from the structured programming paradigm of the 1970s and 1980s and the object-oriented programming (OOP) paradigm of the 1980s and 1990s. The functional decomposition design methodology used in these paradigms reduced the prominence of non-functional requirements, which resulted in scattered and tangled code to address non-functional elements. Aspect-oriented programming (AOP) allowed the removal of crosscutting concerns scattered throughout class code into single modules known as aspects. Aspectization resulted in increased modularity in class code, but introduced new types of problems that did not exist in OOP. One such problem was aspect interference, in which aspects …