An examination of case studies shows that the use of voice recognition technology is appropriate and feasible for programming environments. These can include operating system level commands creating a standard user in...
详细信息
An examination of case studies shows that the use of voice recognition technology is appropriate and feasible for programming environments. These can include operating system level commands creating a standard user interface. Also, for a structured language such as Pascal, voice editing or dictation of such programs is feasible. Also noted is the importance of data acquisition using voice input, since the amounts of data seem to keep growing and to arrive in many different formats. A simplified diagram of software design for the use of voice recognition technology for programming environments is presented.< >
Digital Equipment's Paris Research Laboratory started to investigate the use of FPGA-based reconfigurable hardware accelerators in 1988. We call them PAMs for Programmable Active Memories. Over the past six years,...
详细信息
Digital Equipment's Paris Research Laboratory started to investigate the use of FPGA-based reconfigurable hardware accelerators in 1988. We call them PAMs for Programmable Active Memories. Over the past six years, we have designed and implemented four generations of PAM hardware and four generations of PAM programming environments. Several dozen people, ranging from inexperienced students to senior hardware designers, have used our systems. A wide range of applications belonging to several important application domains have demonstrated the interest of these novel computing devices. In this paper we present the software lessons we draw from this collective experience.< >
Blocks-based programming environments offer an alternative program representation to textual source code that simplifies the considerations of syntax for novices. This position paper raises the question of whether add...
详细信息
ISBN:
(纸本)9781467383684
Blocks-based programming environments offer an alternative program representation to textual source code that simplifies the considerations of syntax for novices. This position paper raises the question of whether additional affordances related to transparency of data, transparency of semantics, and liveness of execution can be consistently added to these environments to obtain some significant advantages for these novice programmers.
Structured program editors can lower the entry barrier for beginning computer science students by preventing syntax errors. However, when editors force programs to be executable after every edit, a rigid development p...
详细信息
Structured program editors can lower the entry barrier for beginning computer science students by preventing syntax errors. However, when editors force programs to be executable after every edit, a rigid development process results. We explore the use of a separate edit-time grammar that is more permissive than the runtime grammar. This helps achieve a balance between structured editing and flexibility, particularly in live development environments. JPie is a graphical programming environment that applies this separation to the live development of Java applications. We present the design goals for JPie's edit-time grammar and describe how its implementation supports a balance between structure and flexibility. As further illustration of the benefits of a relaxed edit-time grammar, we present "mixed-mode editing," an integration of textual and graphical editing for added flexibility.
This contribution presents several software environments as a 3-D DCT (three-dimensional discrete cosine transform) calculation tool. The 3-D DCT calculation is made using the 3-D DCT separability property, such that ...
详细信息
This contribution presents several software environments as a 3-D DCT (three-dimensional discrete cosine transform) calculation tool. The 3-D DCT calculation is made using the 3-D DCT separability property, such that the whole coder is divided into three 1-D DCT calculations by using transpose buffers. Velocity of the 1-D DCT calculation is tested in Matlab and C with a program structure discussion and the video rate results presented as well. One input block with 8/spl times/8/spl times/8 elements of 8 bits each is processed in 9.1 ms in Matlab and in 0.016 ms in C.
In this paper we discuss some of the central challenges to rigorously studying blocks-based programming. We categorize these challenges into four groups: design, context, evaluation, and trajectory. For each category,...
详细信息
ISBN:
(纸本)9781467383684
In this paper we discuss some of the central challenges to rigorously studying blocks-based programming. We categorize these challenges into four groups: design, context, evaluation, and trajectory. For each category, we breakdown specific issues we confront as researchers in trying to isolate the blocks-based modality and outline our own strategies for addressing them. Throughout, we draw on our own experience as designers, educators, and researchers, along with past and current work, to provide guidance on ways to address these challenges and share insights our approach has yielded.
New software technologies, including the World Wide Web, may seem far removed from the tasks facing test program set (TPS) developers, but they promise to revolutionize the way TPS data is organized, presented, and us...
详细信息
New software technologies, including the World Wide Web, may seem far removed from the tasks facing test program set (TPS) developers, but they promise to revolutionize the way TPS data is organized, presented, and used. This paper will describe how an integrated TPS development and execution environment can capitalize on these new technologies to improve test programming efficiency.
Standard desktop computer applications are becoming increasingly sophisticated, allowing competent users to gain greater levels of efficiency through powerful capabilities. Examples are wide ranging - from simple tail...
详细信息
Standard desktop computer applications are becoming increasingly sophisticated, allowing competent users to gain greater levels of efficiency through powerful capabilities. Examples are wide ranging - from simple tailoring of Web-browsers so that frequently used links appear on the toolbar, to writing code to customize the behaviour of a word processor. These interface features promise benefits of end-user programming to those who can access them. To help people access these features, many programming environments have been developed to make programming more accessible. Despite this plethora of developmental research, there has been surprisingly little analytical work in characterising and comparing the capabilities of the environments. This paper presents a methodological analysis of programming environments - particularly educational ones - to shine light on how different languages are used to support three fundamental programming activities. The analysis reveals how programming environments use different languages for the three tasks. We discover that programming environments can be more usable by displaying multiple languages for program representation, but only displaying multiple representations risks creating three cognitive gulfs. To avoid these gulfs, our taxonomy describes why every representation must be editable. Our taxonomy also describes why all languages should be animated when a program is executed. We intend this taxonomy and analysis to be useful for anyone who is building or evaluating a programming environment.
The authors describe a high level language for specifying programming environments for programming languages that are based on directed attributed graphs. The high level language allows the specifier to describe views...
详细信息
The authors describe a high level language for specifying programming environments for programming languages that are based on directed attributed graphs. The high level language allows the specifier to describe views of portions of a program written in such a graph-based language, the editing operations used to create the program, animations of the execution of the program, and sufficient detail of the execution semantics to support the animations. The use of the specification language is demonstrated with a simple example of a graph-based language. The automatic generation of the programming environment is described for such graph based languages from descriptions made in the specification language. The specification language is based on using a grammar to describe the components of the graph based language and using a first-order logic based language to describe state changes in editing, execution, and animation.< >
This paper describes WappenLite-a Web application framework for lightweight educational programming environments. In particular, this paper focuses on the back-end (nonuser-interface) components of the framework.
This paper describes WappenLite-a Web application framework for lightweight educational programming environments. In particular, this paper focuses on the back-end (nonuser-interface) components of the framework.
暂无评论