Bounded-Choice Statements for User Interaction in Imperative Programming

Keehang KWON  Jeongyoon SEO  Daeseong KANG  

IEICE TRANSACTIONS on Information and Systems   Vol.E99-D   No.3   pp.751-755
Publication Date: 2016/03/01
Publicized: 2015/11/27
Online ISSN: 1745-1361
DOI: 10.1587/transinf.2015EDL8141
Type of Manuscript: LETTER
Category: Software System
interactions,  bounded choices,  read,  

Full Text: PDF>>
Buy this Article

Adding versatile interactions to imperative programming - C, Java and Android - is an essential task. Unfortunately, existing languages provide only limited constructs for user interaction. These constructs are usually in the form of unbounded quantification. For example, existing languages can take the keyboard input from the user only via the read(x)/scan(x) statement. Note that the value of x is unbounded in the sense that x can have any value. This statement is thus not useful for applications with bounded inputs. To support bounded choices, we propose new bounded-choice statements for user interation. Each input device (keyboard, mouse, touchpad, ...) naturally requires a new bounded-choice statement. To make things simple, however, we focus on a bounded-choice statement for keyboard - kchoose - to allow for more controlled and more guided participation from the user. We illustrate our idea via CBI, an extension of the core C with a new bounded-choice statement for the keyboard.