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 28 of 38.

Automatically Discovering The Number Of Clusters In Web Page Datasets, Zhongmei Yao 2015 University of Dayton

Automatically Discovering The Number Of Clusters In Web Page Datasets, Zhongmei Yao

Zhongmei Yao

Clustering is well-suited for Web mining by automatically organizing Web pages into categories, each of which contains Web pages having similar contents. However, one problem in clustering is the lack of general methods to automatically determine the number of categories or clusters. For the Web domain in particular, currently there is no such method suitable for Web page clustering. In an attempt to address this problem, we discover a constant factor that characterizes the Web domain, based on which we propose a new method for automatically determining the number of clusters in Web page data sets. We discover that the …


Injective Type Families For Haskell, Jan Stolarek, Simon Peyton Jones, Richard A. Eisenberg 2015 University of Edinburgh

Injective Type Families For Haskell, Jan Stolarek, Simon Peyton Jones, Richard A. Eisenberg

Computer Science Faculty Research and Scholarship

Haskell, as implemented by the Glasgow Haskell Compiler (GHC), allows expressive type-level programming. The most popular type- level programming extension is TypeFamilies, which allows users to write functions on types. Yet, using type functions can cripple type inference in certain situations. In particular, lack of injectivity in type functions means that GHC can never infer an instantiation of a type variable appearing only under type functions. In this paper, we describe a small modification to GHC that allows type functions to be annotated as injective. GHC naturally must check validity of the injectivity annotations. The algorithm to do so is …


Statistics Notes, Saverio Perugini 2015 University of Dayton

Statistics Notes, Saverio Perugini

Computer Science Working Papers

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


Metalogic Notes, Saverio Perugini 2015 University of Dayton

Metalogic Notes, Saverio Perugini

Computer Science Working Papers

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.


Math In The Dark: Tools For Expressing Mathematical Content By Visually Impaired Students, Patricia M. McDermott-Wells 2015 Nova Southeastern University

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 2015 Nova Southeastern University

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 2015 Claremont McKenna College

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 …


Archive - A Data Management Program, James H. Devilbiss, C. Steven Whisnant, Yasmeen Shorish 2015 James Madison University

Archive - A Data Management Program, James H. Devilbiss, C. Steven Whisnant, Yasmeen Shorish

Department of Physics and Astronomy - Faculty Scholarship

To meet funding agency requirements, a portable data management solution is presented for small research groups. The database created is simple, searchable, robust, and can reside across multiple hard drives. Employing a standard metadata schema for all data, the database ensures a high level of standardization, findability, and organization. The software is written in Perl, runs on UNIX, and presents a web-based user interface. It uses a fast, portable log-in scheme, making it easy to export to other locations. As research continues to move towards more open data sharing and reproducibility, this database solution is agile enough to accommodate external …


Constrained Templates In C++, Braden L. Obrzut 2015 The University Of Akron

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 …


The Expression Problem, Gracefully, Andrew P. Black 2015 Portland State University

The Expression Problem, Gracefully, Andrew P. Black

Computer Science Faculty Publications and Presentations

The “Expression Problem” was brought to prominence by Wadler in 1998. It is widely regarded as illustrating that the two mainstream approaches to data abstraction — procedural abstraction and type abstraction— are complementary, with the strengths of one being the weaknesses of the other. Despite an extensive literature, the origin of the problem remains ill-understood. I show that the core problem is in fact the use of global constants, and demonstrate that an important aspect of the problem goes away when Java is replaced by a language like Grace, which eliminates them.


The Grace Programming Language Draft Specification Version 0.5. 2025, Andrew P. Black, Kim B. Bruce, James Noble 2015 Portland State University

The Grace Programming Language Draft Specification Version 0.5. 2025, Andrew P. Black, Kim B. Bruce, James Noble

Computer Science Faculty Publications and Presentations

This is a specification of the Grace Programming Language. This specification is notably incomplete, and everything is subject to change. For discussion and rationale, see http://gracelang.org.


The Partial Evaluation Approach To Information Personalization, Naren Ramakrishnan, Saverio Perugini 2014 Virginia Polytechnic Institute and State University

The Partial Evaluation Approach To Information Personalization, Naren Ramakrishnan, Saverio Perugini

Saverio Perugini

Information personalization refers to the automatic adjustment of information content, structure, and presentation tailored to an individual user. By reducing information overload and customizing information access, personalization systems have emerged as an important segment of the Internet economy. This paper presents a systematic modeling methodology— PIPE (‘Personalization is Partial Evaluation’) — for personalization. Personalization systems are designed and implemented in PIPE by modeling an information-seeking interaction in a programmatic representation. The representation supports the description of information-seeking activities as partial information and their subsequent realization by partial evaluation, a technique for specializing programs. We describe the modeling methodology at a …


Personalizing Interactions With Information Systems, Saverio Perugini, Naren Ramakrishnan 2014 University of Dayton

Personalizing Interactions With Information Systems, Saverio Perugini, Naren Ramakrishnan

Saverio Perugini

Personalization constitutes the mechanisms and technologies necessary to customize information access to the end-user. It can be defined as the automatic adjustment of information content, structure, and presentation tailored to the individual. In this chapter, we study personalization from the viewpoint of personalizing interaction. The survey covers mechanisms for information-finding on the web, advanced information retrieval systems, dialog-based applications, and mobile access paradigms. Specific emphasis is placed on studying how users interact with an information system and how the system can encourage and foster interaction. This helps bring out the role of the personalization system as a facilitator which reconciles …


Program Transformations For Information Personalization, Saverio Perugini 2014 University of Dayton

Program Transformations For Information Personalization, Saverio Perugini

Saverio Perugini

Personalization constitutes the mechanisms and technologies necessary to customize information access to the end-user. It can be defined as the automatic adjustment of information content, structure, and presentation. The central thesis of this dissertation is that modeling interaction explicitly in a representation, and studying how partial information can be harnessed in it by program transformations to direct the flow of the interaction, can provide insight into, reveal opportunities for, and define a model for personalized interaction. To evaluate this thesis, a formal modeling methodology is developed for personalizing interactions with information systems, especially hierarchical hypermedia, based on program transformations. The …


Staging Transformations For Multimodal Web Interaction Management, Michael Narayan, Christopher Williams, Saverio Perugini, Naren Ramakrishnan 2014 Virginia Polytechnic Institute and State University

Staging Transformations For Multimodal Web Interaction Management, Michael Narayan, Christopher Williams, Saverio Perugini, Naren Ramakrishnan

Saverio Perugini

Multimodal interfaces are becoming increasingly ubiquitous with the advent of mobile devices, accessibility considerations, and novel software technologies that combine diverse interaction media. In addition to improving access and delivery capabilities, such interfaces enable flexible and personalized dialogs with websites, much like a conversation between humans. In this paper, we present a software framework for multimodal web interaction management that supports mixed-initiative dialogs between users and websites. A mixed-initiative dialog is one where the user and the website take turns changing the flow of interaction. The framework supports the functional specification and realization of such dialogs using staging transformations – …


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 2014 Portland State University

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 2014 University of Arkansas, Fayetteville

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 2014 Nova Southeastern University

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 2014 University of Massachusetts Amherst

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 2014 University of Massachusetts Amherst

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 …


Digital Commons powered by bepress