John K. Estell · 2024
Abstract NOTE: The first page of text has been automatically extracted and included below in lieu of an abstract Session 3420 The Interactive Programming Portfolio John K. Estell Bluffton College Introduction The portfolio has long been used as a tool for monitoring student progress. In computer science, the programming portfolio contains a selection of computer programs that a student has produced over a period of time. Usually this has consisted of a notebook containing pages of program listings, perhaps combined with text-based example runs or graphics-based snapshots showing particular moments of program execution. While useful, reviewing such material is about as exciting as watching paint dry and fails to capture the essence of the programs in action. With the advent of the World Wide Web and the Java-based applet, the programming portfolio can be revitalized into an interactive format conducive to both student and reviewer. The Portfolio A portfolio consists of a collection of materials assembled over a period of time that is used to both demonstrate and document one's ability in a particular subject. Portfolios are commonly used in the artistic professions. For example, photographers who specialize in weddings will present to the inquiring engaged couple an assembled collection of their work. By constructing a portfolio photographers have the opportunity to reflect upon their work as they select the best results from their photographic sessions; similarly, the couple looking to hire someone for their wedding can use the portfolios to evaluate the ability of each photographer. So not only is the portfolio a means to demonstrate and document competence, it also allows for assessment by both the person assembling the portfolio and those who must pass judgement on that person's work. It is for these reasons that many in the engineering education community have adopted the use of portfolios in the classroom as it is a valuable assessment tool for both students and instructors. With the rise of the World Wide Web there has been increased interest in the development of electronic portfolios. The nature of the Web as an interactive multimedia facility that can provide information on demand opens up new possibilities for the use of portfolios in many disciplines, including computer science. One variant recently reported on is the development of a Web-based on-line journal for their writing-intensive undergraduate software engineering course1. The on-line journal was used to allow students to conveniently maintain their journals while also providing the instructor a more effective way to review, and provide feedback on, the contents. Applying the concepts of an electronic portfolio to computer programming itself is straightforward. It is simple to create a Web document containing listings and descriptions of one's computer programs. The pages within this document may include graphical snapshots of programs "in action" and links to downloadable source code and executable files. The problem with this approach is the amount of effort required by the
Cited by 1Open access
Abu S. M. Masud, C. L. Hwang · Journal of the Operational Research Society · 1981
This paper introduces a new solution method based on Goal Programming for Multiple Objective Decision Making (MODM) problems. The method, called Interactive Sequential Goal Programming (ISGP), combines and extends the attractive features of both Goal Programming and interactive solution approaches for MODM problems. ISGP is applicable to both linear and non-linear problems. It uses existing single objective optimization techniques and, hence, available computer codes utilizing these techniques can be adapted for use in ISGP. The non-dominance of the "best-compromise" solution is assured. The information required from the decision maker in each iteration is simple. The proposed method is illustrated by solving a nutrition problem.
Cited by 146
Keith Hanna · 2002
An interactive graphical environment for supporting the development and use of Haskell applications programs is described. The environment, named Vital, is particularly intended for supporting the open-ended, incremental development style often preferred by non-specialist users in which successive steps of program development are motivated and informed by results so far obtained.Significant features of Vital include: the graphical display of data structures in a format defined by a datatype-indexed stylesheet, the way that evaluation of (possibly infinite) values is demand-driven by the action of the user scrolling around an unbounded workspace, and support for copy-and-paste graphical editing of data structures. This latter allows, for example, the user to modify a complex data structure by point-and-click operations, or to create (by functional evaluation) a regular data structure and then edit values or expressions into it. The effect of each editing operation is immediately reflected in the Haskell program source code.
Cited by 31
Yong Zheng, Jiahua Qian · 2005
Recent research in programming and programming languages has begun to focus more heavily on human factors and to separate hunan-centered issues from the machine-centered issues. This study is an attempt to systematize the recording of programmer errors in software development. By collecting protocol data from the experiments performed during the development of interactive programming environment FPE/1, some insights concerning the relative importance of various programming errors are achieved. These insights are used to directed the development of interactive programming environment to make it more compatible with human perception, memory, communication, and problem solving.
Cited by 0
Μ. Sakawa, Ichiro Nishizaki, Yoshio Uemura · Computers & Mathematics with Applications · 1998
Cited by 105
Pekka Korhonen, Jyrki Wallenius · Applied optimization · 2010
Cited by 6
Melvin Klerer · 1967
The theme of these symposium proceedings is Interactive Systems for Experimental Applied Mathematics. Certainly, there can be little confusion about the basic meaning or broad fundamentals of applied mathematics. However, questions as to the value of the experimental approach toward mathematics are an entirely different matter. The present state-of-the-art is so scant in empirical or theoretical guidelines that this approach must be acknowledged as an expression of faith that a computer, used to explore ill-defined mathematical constructs and problems, might yield powerful insights and a fruitful methodology. The term interactive is difficult to define and I cannot pretend that I fully understand the relevance of the term as applied to some specific systems. However, in some sense, we would suppose that what we mean is close to the definition used by the physicist. When two effects interact, they do so in a nonseparable and usually nonlinear way. Usually, the effect of the interaction is that the whole is not simply equal to the sum of its parts, and that the characteristics of the interacted system can be surprisingly different from the qualities of its constituent parts. Therefore, in the man-machine interaction, we would expect more than in the old process of inputting a well-formulated set of directions with the machine performing in its capacity as an idiot savant. Obviously we can expect that any serious attempt at man-machine interaction will involve on-line response. However, I would not entirely exclude the possibility that significant interaction can occur off-line.
Cited by 1Open access
Soshi Iba, Christiaan J. J. Paredis, Pradeep K. Khosla · Springer tracts in advanced robotics · 2006
Cited by 26
Ulf Norell · ACM SIGPLAN Notices · 2013
In dependently typed languages run-time values can appear in types, making it possible to give programs more precise types than in languages without dependent types. This can range from keeping track of simple invariants like the length of a list, to full functional correctness. In addition to having some correctness guarantees on the final program, assigning more precise types to programs means that you can get more assistance from the type checker while writing them. This is what I focus on here, demonstrating how the programming environment of Agda can help you when developing dependently typed programs.
Cited by 0
Soshi Iba Christiaan, Christiaan J. J. Paredis, Pradeep K. Khosla · 2002
As robots enter the human environment and come in contact with inexperienced users, they need to be able to interact with users in a multi-modal fashion---keyboard and mouse are no longer acceptable as the only input modalities.
Cited by 0
Sho-Huan Simon Tung, R. Kent Dybvig · LISP and Symbolic Computation · 1996
Cited by 3
Alex Gerdes, Johan Jeuring, Bastiaan Heeren · 2012
We introduce an interactive tutor that supports the stepwise development of simple functional programs. Using this tutor, students receive feedback about whether or not they are on the right track, can ask for a hint when they are stuck, and get suggestions about how to refactor their program. Our tutor generates this semantically rich feedback from model solutions, using advanced concepts from software technology. We show how a teacher can add an exercise to the tutor, and fine-tune feedback. We report on an experiment in which we used our tutor.
Cited by 43
E. Keppel, D. Kropp · 1977
A system for Interactive Programming by End-users - IPE - is proposed as a tool for non-programmers to develop, to use and to maintain their application programs.
Cited by 3
Roly Perera · Electronic Notes in Theoretical Computer Science · 2008
Traditional programming languages are algorithmic: they are best suited to writing programs that acquire all their inputs before executing and only produce a result on termination. By contrast most applications are interactive: they maintain ongoing interactions with their environments. Modern systems address this incompatibility by manually extending the execution model of the host language to support interaction, usually by embedding an event-driven state management scheme which executes fragments of imperative code in response to interactions, the job of each executed fragment being to restore the internal consistency of the computation. The downside of this approach to interaction is that it relies heavily on mutable stores and side-effects and mixes application logic in with behaviour which is more properly the responsibility of an execution model. I describe a programming model called declarative interaction which supports interaction directly. The distinguishing feature of the model is its modal construal of state and interaction.
Cited by 3Open access
Iba, Soshi, Paredis, Christiaan J.J., Khosla, Pradeep · KiltHub Repository · 2018
As robots enter the human environment and come in contact with inexperienced users, they need to be able to interact with users in a multi-modal fashion—keyboard and mouse are no longer acceptable as the only input modalities. This paper introduces a novel approach to program a robot interactively through a multi-modal interface. The key characteristic of this approach is that the user can provide feedback interactively at any time—during both the programming and the execution phase. The framework takes a three-step approach to the problem: multi-modal recognition, intention interpretation, and prioritized task execution. The multi-modal recognition module translates hand gestures and spontaneous speech into a structured symbolic data stream without abstracting away the user’s intent. The intention interpretation module selects the appropriate primitives to generate a task based on the user’s input, the system’s current state, and robot sensor data. Finally, the prioritized task execution module selects and executes skill primitives based on the system’s current state, sensor inputs, and prior tasks. The framework is demonstrated by interactively controlling and programming a vacuum-cleaning robot.
Cited by 0Open access
Clapp,Lewis · Defense Technical Information Center (DTIC) · 1971
In an attempt to shed some light on this dynamic new field of time sharing applications, the author has prepared this survey on the state of the art in on-line systems. It is our purpose to help the reader become aware of the important potential of on-line systems, especially as it affects his own areas of specialization and endeavor. In a small way, one hopes to encourage progress in advanced applications of on-line systems by indicating to those developers of new systems what work has gone on before, so that they may build upon this rather than be forced to reinvent the wheel. (Author)
Cited by 0
Pereira, Duarte, Barbosa, Fernanda, Morgado, Carmen · Universidade Nova de Lisboa's Repository (Universidade Nova de Lisboa) · 2024
Publisher Copyright: © 2024 Owner/Author.
Cited by 0Open access
Bøyum, Tom-Olav · Duo Research Archive (University of Oslo) · 2020
Cited by 0Open access
Arthur B. Briggs · 1975
Cited by 0
Iba, Soshi, Paredis, Christiaan J.J., Khosla, Pradeep · KiltHub Repository · 2018
The goal of the Interactive Multi-Modal Robot Programming system is a comprehensive human-machine interface that allows non-experts to compose robot programs conveniently. Two key characteristics of this novel programming approach are that the user can provide feedback interactively at any time through an intuitive interface and that the system infers the user's intent to support interaction. The framework takes a three-step approach to the problem: multi-modal recognition, intention interpretation, and prioritized task execution. The system is demonstrated by interactively controlling and programming a mobile vacuum cleaning robot. The demonstrations are used to exemplify the interactive programming and plan recognition aspects of the research.
Cited by 0Open access