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

Theses/Dissertations

2015

Discipline
Institution
Keyword
Publication

Articles 1 - 13 of 13

Full-Text Articles in Programming Languages and Compilers

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 …


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 …


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.


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 …


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 …


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 …


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 …


Wip, Armon Nayeraini May 2015

Wip, Armon Nayeraini

Computer Science and Computer Engineering Undergraduate Honors Theses

Games have been shown to be capable tools in teaching. Additionally, programming can be a hard skill to learn. The objective of this research was to create a game that helps student learn coding concepts by playing a video game. The result of our work is a fully functional game that introduces the beginning concepts of programming: sequential, conditional, iterative operations.


Java Animated Software For Teaching The Frank-Wolfe Algorithm For Static Traffic Network Equilibrium, Zhi Li Apr 2015

Java Animated Software For Teaching The Frank-Wolfe Algorithm For Static Traffic Network Equilibrium, Zhi Li

Computational Modeling & Simulation Engineering Theses & Dissertations

The popular Frank-Wolfe (FW) algorithm for solving the network equilibrium problems plays an important role in transportation simulation. Not only has the basic Frank Wolfe algorithm been studied, but also other variations of the FW algorithm (such as Conjugate Frank Wolfe and Bi-Conjugate Frank Wolfe algorithms) have been extensively studied by the research communities.

In this work, the basic Frank Wolfe algorithm is re-visited for the purpose of developing a useful, user-friendly, and appealing Java computer animation for enhancing the teaching effectiveness of this fundamental transportation static network equilibrium algorithm. Since the shortest path (SP) algorithms (such as the well-known …


Math In The Dark: Tools For Expressing Mathematical Content By Visually Impaired Students, Patricia M. Mcdermott-Wells Jan 2015

Math In The Dark: Tools For Expressing Mathematical Content By Visually Impaired Students, Patricia M. Mcdermott-Wells

CCE Theses and Dissertations

Blind and visually impaired students are under-represented in the science, technology, engineering, and mathematics disciplines of higher education and the workforce. This is due primarily to the difficulties they encounter in trying to succeed in mathematics courses. While there are sufficient tools available to create Braille content, including the special Nemeth Braille used in the U.S. for mathematics constructs, there are very few tools to allow a blind or visually impaired student to create his/her own mathematical content in a manner that sighted individuals can use. The software tools that are available are isolated, do not interface well with other …


A Predictive Modeling System: Early Identification Of Students At-Risk Enrolled In Online Learning Programs, Mary L. Fonti Jan 2015

A Predictive Modeling System: Early Identification Of Students At-Risk Enrolled In Online Learning Programs, Mary L. Fonti

CCE Theses and Dissertations

Predictive statistical modeling shows promise in accurately predicting academic performance for students enrolled in online programs. This approach has proven effective in accurately identifying students who are at-risk enabling instructors to provide instructional intervention. While the potential benefits of statistical modeling is significant, implementations have proven to be complex, costly, and difficult to maintain. To address these issues, the purpose of this study is to develop a fully integrated, automated predictive modeling system (PMS) that is flexible, easy to use, and portable to identify students who are potentially at-risk for not succeeding in a course they are currently enrolled in. …


The Future Of Ios Development: Evaluating The Swift Programming Language, Garrett Wells Jan 2015

The Future Of Ios Development: Evaluating The Swift Programming Language, Garrett Wells

CMC Senior Theses

Swift is a new programming language developed by Apple for creating iOS and Mac OS X applications. Intended to eventually replace Objective-C as Apple’s language of choice, Swift needs to convince developers to switch over to the new language. Apple has promised that Swift will be faster than Objective-C, as well as offer more modern language features, be very safe, and be easy to learn and use. In this thesis I test these claims by creating an iOS application entirely in Swift as well as benchmarking two different algorithms. I find that while Swift is faster than Objective-C, it does …


Constrained Templates In C++, Braden L. Obrzut Jan 2015

Constrained Templates In C++, Braden L. Obrzut

Williams Honors College, Honors Research Projects

This paper seeks to answer what C++ concepts are, the benefit they provide to C++ programmers, and where we would like to go looking ahead. To accomplish this, it will examine the current state of generic programming in C++, look at what other languages do to avoid the issue, and how concepts can be used to solve the problem in a manner which provides more freedom to the programmer. In the general sense, concepts allow the programmer to specify preconditions which must be satisfied on the inputs to generic code. The desire being to fully describe what is required by …