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

Theses/Dissertations

2014

Discipline
Institution
Keyword
Publication

Articles 1 - 11 of 11

Full-Text Articles in Programming Languages and Compilers

The Nax Language: Unifying Functional Programming And Logical Reasoning In A Language Based On Mendler-Style Recursion Schemes And Term-Indexed Types, Ki Yung Ahn Dec 2014

The Nax Language: Unifying Functional Programming And Logical Reasoning In A Language Based On Mendler-Style Recursion Schemes And Term-Indexed Types, Ki Yung Ahn

Dissertations and Theses

Two major applications of lambda calculi in computer science are functional programming languages and mechanized reasoning systems (or, proof assistants). According to the Curry--Howard correspondence, it is possible, in principle, to design a unified language based on a typed lambda calculus for both logical reasoning and programming. However, the different requirements of programming languages and reasoning systems make it difficult to design such a unified language that provides both. Programming languages usually extend lambda calculi with programming-friendly features (e.g., recursive datatypes, general recursion) for supporting the flexibility to model various computations, while sacrificing logical consistency. Logical reasoning systems usually extend …


Study Of Parallel Programming Models On Computer Clusters With Accelerators, Chenggang Lai Dec 2014

Study Of Parallel Programming Models On Computer Clusters With Accelerators, Chenggang Lai

Graduate Theses and Dissertations

In order to reach exascale computing capability, accelerators have become a crucial part in developing supercomputers. This work examines the potential of two latest acceleration technologies, Intel Many Integrated Core (MIC) Architecture and Graphics Processing Units (GPUs). This thesis applies three benchmarks under 3 different configurations, MPI+CPU, MPI+GPU, and MPI+MIC. The benchmarks include intensely communicating application, loosely communicating application, and embarrassingly parallel application. This thesis also carries out a detailed study on the scalability and performance of MIC processors under two programming models, i.e., offload model and native model, on the Beacon computer cluster.

According to different benchmarks, the results …


Alternative Approaches To Correction Of Malapropisms In Aiml Based Conversational Agents, Walter A. Brock Nov 2014

Alternative Approaches To Correction Of Malapropisms In Aiml Based Conversational Agents, Walter A. Brock

CCE Theses and Dissertations

The use of Conversational Agents (CAs) utilizing Artificial Intelligence Markup Language (AIML) has been studied in a number of disciplines. Previous research has shown a great deal of promise. It has also documented significant limitations in the abilities of these CAs. Many of these limitations are related specifically to the method employed by AIML to resolve ambiguities in the meaning and context of words. While methods exist to detect and correct common errors in spelling and grammar of sentences and queries submitted by a user, one class of input error that is particularly difficult to detect and correct is the …


Using Formal Methods To Verify Transactional Abstract Concurrency Control, Trek S. Palmer Nov 2014

Using Formal Methods To Verify Transactional Abstract Concurrency Control, Trek S. Palmer

Doctoral Dissertations

Concurrent application design and implementation is more important than ever in today's multi-core processor world. Transactional Memory (TM) Concurrent application design and implementation is more important than ever in today's multi-core processor world. Transactional Memory (TM). Each has its own particular advantages and disadvantages. However, these techniques each need some extra information to `glue' the non-transactional operation into a transactional context. At the most general level, non-transactional code must be decorated in such a way that the TM run-time can determine how those non-transactional operations commute with one another, and how to `undo' the non-transactional operations in case the run-time …


Subtyping With Generics: A Unified Approach, John G. Altidor Nov 2014

Subtyping With Generics: A Unified Approach, John G. Altidor

Doctoral Dissertations

Reusable software increases programmers' productivity and reduces repetitive code and software bugs. Variance is a key programming language mechanism for writing reusable software. Variance is concerned with the interplay of parametric polymorphism (i.e., templates, generics) and subtype (inclusion) polymorphism. Parametric polymorphism enables programmers to write abstract types and is known to enhance the readability, maintainability, and reliability of programs. Subtyping promotes software reuse by allowing code to be applied to a larger set of terms. Integrating parametric and subtype polymorphism while maintaining type safety is a difficult problem. Existing variance mechanisms enable greater subtyping between parametric types, but they suffer …


Reliable And Efficient Multithreading, Tongping Liu Aug 2014

Reliable And Efficient Multithreading, Tongping Liu

Doctoral Dissertations

The advent of multicore architecture has increased the demand for multithreaded programs. It is notoriously far more challenging to write parallel programs correctly and efficiently than sequential ones because of the wide range of concurrency errors and performance problems. In this thesis, I developed a series of runtime systems and tools to combat concurrency errors and performance problems of multithreaded programs. The first system, Dthreads, automatically ensures determinism for unmodified C/C++ applications using the pthreads library without requiring programmer intervention and hardware support. Dthreads greatly simplifies the understanding and debugging of multithreaded programs. Dthreads often matches or even exceeds the …


Introducing Non-Determinism To The Parallel C Compiler, Rowen Concepcion Jun 2014

Introducing Non-Determinism To The Parallel C Compiler, Rowen Concepcion

Electronic Theses, Projects, and Dissertations

The Planguages project is the birthplace of the Planguage programming
approach, which is designed to alleviate the task of writing parallel
programs and harness massively parallel computers and networks of workstations.


Planguage has two existing translators, Parallel C (PC) and Pfortran,
which is used for their base languages, C and Fortran77. The translators
work with MPI (Message Passing Interface) for communications. SOS
(ipStreams, Overlapping and Shortcutting), a function library that supports
the three named functionalities, can be used to further optimize parallel algorithms.


This project is the next step in the continuing project of updating
the PC Compiler. The goal …


Conception, Design And Construction Of A Remote Wifi Vehicle Using Arduino, Clayton Broman Mar 2014

Conception, Design And Construction Of A Remote Wifi Vehicle Using Arduino, Clayton Broman

Physics

The scope of this senior project was to make a wireless vehicle controlled via Internet Protocol. This vehicle operates remotely and without direct line of sight. Commands are sent from a program running on a laptop and transmitted using a wireless router. Visual data is retrieved from a network camera, mounted on the vehicle, in real-time, to see where you are going.


Assessing Satellite Image Data Fusion With Information Theory Metrics, James Cross Jan 2014

Assessing Satellite Image Data Fusion With Information Theory Metrics, James Cross

Dissertations and Theses

A common problem in remote sensing is estimating an image with high spatial and high spectral resolution given separate sources of measurements from satellite instruments, one having each of these desirable properties. This thesis presents a survey of seven families of algorithms which have been developed to provide this common pattern of satellite image data fusion. They are all tested on artificially degraded sets of satellite data from the Moderate Resolution Imaging Spectroradiometer (“MODIS”) with known ideal results, and evaluated using the commonly accepted data fusion assessment metrics spectral angle mapper (“SAM”) and Erreur Relative Globale Adimensionelle de Synth`ese (“ERGAS”). …


Introduction To Parallel Computation, Clinton Mckay Jan 2014

Introduction To Parallel Computation, Clinton Mckay

Graduate Student Theses, Dissertations, & Professional Papers

Introduction to Parallel Computing is a course designed to educate students on how to use the parallel libraries and tools provided by modern operating systems and massively parallel computer graphics hardware.

Using a series of lectures and hands-on exercises. Students will learn about parallel algorithms and concepts that will aid them in analyzing a problem and constructing a parallel solution, if possible, using the tools available to their disposal.

The course consists of lectures, projects, quizzes, and homework. The combination of these components will deliver the necessary domain knowledge to students, test them, and in the process train them to …


A Hybrid Approach Using Rup And Scrum As A Software Development Strategy, Dalila Castilla Jan 2014

A Hybrid Approach Using Rup And Scrum As A Software Development Strategy, Dalila Castilla

UNF Graduate Theses and Dissertations

According to some researchers, a hybrid approach can help optimize the software development lifecycle by combining two or more methodologies. RUP and Scrum are two methodologies that successfully complement each other to improve the software development process. However, the literature has shown only few case studies on exactly how organizations are successfully applying this hybrid methodology and the benefits and issues found during the process. To help fill this literature gap, the main purpose of this thesis is to describe the development of the Lobbyist Registration and Tracking System for the City of Jacksonville case study where a hybrid approach, …