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

Articles 1 - 12 of 12

Full-Text Articles in Programming Languages and Compilers

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

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 Dec 2014

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 Dec 2014

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 Dec 2014

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 – …


Personalizing Software Development Practice Using Mastery-Based Coaching, Chris Boesch, Sandra Boesch Jul 2014

Personalizing Software Development Practice Using Mastery-Based Coaching, Chris Boesch, Sandra Boesch

Chris BOESCH

The authors previously developed a system to facilitate the self-directed learning and practicing of software languages in Singapore. One of the goals of this self-directed learning was to enable the development of student mentors who would then be able to assist other students during classroom sessions. Building on this work, the authors extended the platform to support personalized coaching with the goals of further enabling and preparing students to mentor their peers. This paper covers the challenges, insights, and features that were developed in order to develop and deploy this mastery-based coaching feature.


Romeo: A System For More Flexible Binding-Safe Programming, Paul Stansifer, Mitchell Wand Jun 2014

Romeo: A System For More Flexible Binding-Safe Programming, Paul Stansifer, Mitchell Wand

Mitchell Wand

Current languages for safely manipulating values with names only support term languages with simple binding syntax. As a result, no tools exist to safely manipulate code written in those languages for which name problems are the most challenging. We address this problem with Romeo, a language that respects α-equivalence on its values, and which has access to a rich specification language for binding, inspired by attribute grammars. Our work has the complex-binding support of David Herman's λm, but is a full-fledged binding-safe language like Pure FreshML.


Understanding The Genetic Makeup Of Linux Device Drivers, Peter Senna Tschudin, Laurent Reveillere, Lingxiao Jiang, David Lo, Julia Lawall Jun 2014

Understanding The Genetic Makeup Of Linux Device Drivers, Peter Senna Tschudin, Laurent Reveillere, Lingxiao Jiang, David Lo, Julia Lawall

David LO

No abstract provided.


Popularity, Interoperability, And Impact Of Programming Languages In 100,000 Open Source Projects, Tegawende F. Bissyande, Ferdian Thung, David Lo, Lingxiao Jiang, Laurent Réveillère Jun 2014

Popularity, Interoperability, And Impact Of Programming Languages In 100,000 Open Source Projects, Tegawende F. Bissyande, Ferdian Thung, David Lo, Lingxiao Jiang, Laurent Réveillère

David LO

Programming languages have been proposed even before the era of the modern computer. As years have gone, computer resources have increased and application domains have expanded, leading to the proliferation of hundreds of programming languages, each attempting to improve over others or to address new programming paradigms. These languages range from procedural languages like C, object oriented languages like Java, and functional languages such as ML and Haskell. Unfortunately, there is a lack of large scale and comprehensive studies that examine the “popularity”, “interoperability”, and “impact” of various programming languages. To fill this gap, this study investigates a hundred thousands …


An Example Derivation For =R, Paul Stansifer, Mitchell Wand Jun 2014

An Example Derivation For =R, Paul Stansifer, Mitchell Wand

Mitchell Wand

No abstract provided.


Some Definitions And Proofs Regarding Romeo, Paul Stansifer, Mitchell Wand Jun 2014

Some Definitions And Proofs Regarding Romeo, Paul Stansifer, Mitchell Wand

Mitchell Wand

No abstract provided.


An Example Derivation For =R, Paul Stansifer, Mitchell Wand Dec 2013

An Example Derivation For =R, Paul Stansifer, Mitchell Wand

Paul Stansifer

This is intended to accompany Romeo: a system for more flexible binding-safe programming.


Some Definitions And Proofs Regarding Romeo, Paul Stansifer, Mitchell Wand Dec 2013

Some Definitions And Proofs Regarding Romeo, Paul Stansifer, Mitchell Wand

Paul Stansifer

This is intended to accompany Romeo: a system for more flexible binding-safe programming.