bluuebunny/crossref_metadata_2025 huggingface dataset:
With J
Authors: Reiter Cliff
Published: January 2007

Cellular automata are collections of cells arranged in some manner such that each cell contains a value that is updated from generation to generation according to a local rule. The Game of Life [1-5,7,15] is perhaps the best known cellular automaton. It is based upon a rectangular arrangement of cells that are either 0 or 1, along with simple rules of evolution: if a cell is 0 and has exactly 3 immediate neighbors then it becomes a 1; if a cell is 0 and has exactly 2 or 3 immediate neighbors that are 1, then the cell remains 1; otherwise, the cell becomes or remains 0. The Game of Life is incredibly intriguing, giving rise to complex behavior that is visually stimulating, mathematically interesting and, moreover, it is known to be capable of universal computation. Despite the fact that at a basic level it was designed to model alive and dead cells, it is primarily a toy model in the sense that it does not model any physical behavior well.
Exercises and problems
Authors: Polivka Ray
Published: January 2007

Suppose you are given a series of rectangular boxes laid along the positive x axis. Each box is defined by 3 integer numbers; a left x value, a height along the y axis, and a right x value. For example one triple might be (1 11 5), meaning that the box extends horizontally from x=1 to x=5, with a height on the y axis of 11 units. The rectangular boxes may overlap or intersect as well as stand alone. For example, the three boxes represented by (1 11 5), (2 6 7) and (3 13 9) represent two intersecting boxes, (1 11 5) (3 13 9) and one completely subsumed one (2 6 7).
Real time and embedded (RTE) GENI
Authors: Sha Lui , Agrawala Ashok
Published: January 2007

This is a brief pre-view of the NSF Real Time and Embedded workshop report. Any opinion, finding, conclusion or recommendation expressed in this article are those of the authors and do not necessarily reflect the views of NSF and may differ from the final report on RTE GENI.
A subjective judgment study of polygon based curved surface imagery
Authors: Atherton Peter R. , Caporael Linnda R.
Published: January 2007

In the past computer graphics efforts, several researchers have demonstrated that polygon models can be used to produce images of curved surfaces that appear to be smooth and accurate. However, the authors know of no attempt to appraise such imagery by using multiple human observation ratings.

The effectiveness of curved surface imagery generated from polygon models was investigated in a judgment study. Research subjects evaluated sphere model imagery derived from several polygon densities and shading procedures including flat shading, shade interpolation (Gouraud) and normal interpolation (Phong). Results of the evaluations indicated that little was gained by reducing the average polygon areas below approximately 110 pixels per polygon for spheres of 95 pixel radii displayed on a 512 x 512 resolution monitor. Evaluations for both shade and normal interpolution placed polygon image quality reasonably close to an “ideal” image. Although the evaluations indicated that normal interpolation was slightly superior to the shade interpolation, shade interpolation required significantly less computation. Most significantly, results from this study provide strong support for the notion that polygons can be used effectively to produce smooth shaded imagery of curved surface models.
Where the bugs are
Authors: Spohrer James C. , Soloway Elliot , Pope Edgar
Published: January 2007

In this paper we propose one explanation of why some novice programs are buggier than others. Central to our explanation is the notion of
merged goals/plans
in which multiple goals are achieved in a single integrated plan. Our arguments are based on our theory of the knowledge — plans and goals — used by a novice in creating a program, and an analysis of actual buggy novice programs.
Estimating the distribution of software complexity
within
a program
Authors: Moher Thomas G.
Published: January 2007

This paper proposes an approach to the characterization of complexity within computer software source texts. We estimate the information content of individual program tokens as the basis for a relative ordering of tokens by their 'uncertainty' or 'perculiarity' within the context of the program in which they reside. The analysis method used is in part an extension of software science methods. The information gained from the analysis highlights language usage anomalies and potential errors. This information may be useful in guiding software review activities.

More theoretical work and experimental validation will be necessary before the analysis technique may be used in a productive environment.
The use of logging data in the design of a new text editor
Authors: Good Michael
Published: January 2007

Many different human factors techniques are available to the designer of a new computer system. This case study examines how one technique, the use of logging data, was used throughout the design of a new text editor which is measurably easy to learn and easy to use. Logging data was used in four areas: keyboard design, the initial design of the editor's command set, refinements made later in the design cycle, and the construction of a system performance benchmark.
The evaluation of text editors
Authors: Borenstein Nathaniel S.
Published: January 2007

Three text editors were studied using the editor evaluation methodology developed by Roberts and Moran [3, 4]. The results are presented as an extension of the studies by Roberts and Moran, with comparisons to the editors they studied earlier. In addition, supplementary measurements were taken that suggest minor flaws in the Roberts and Moran methodology. Further problems with the methodology are discussed, with an eye toward improving the methodology for future use. Although three significant problems with the methodology are reported, the problems are interesting primarily as lessons for the design of future evaluation methodologies. The Roberts and Moran methodology remains largely useful for the purposes for which it was designed.
When does an abbreviation become a word? and related questions
Authors: Grudin Jonathan , Barnard Phil
Published: January 2007

An experiment is reported in which subjects previously naive to text editing learned to use a set of editing commands. Some subjects used abbreviations from the beginning. Others began by using full command names, then switched to the (optional) use of abbreviations, either of their own devising or of our selection. We found significant differences in the number and nature of the errors produced by subjects in the different conditions. People who created their own abbreviations did most poorly, and did not appear to learn from this experience. Those who used abbreviations from the start were more likely to fall into error through misrecalling the referent names. The results suggest aspects of the underlying cognitive representations, with implications for the design of software interfaces.
Computer human factors in computer interface design (panel session)
Authors: Moran Thomas , Olson Judith Reitman , Wixon Dennis , Whiteside John , Mack Robert
Published: January 2007

Human factors psychologists contribute in many ways to improving human-computer interaction. One contribution involves evaluating existing or prototype systems, in order to assess usability and identify problems. Another involves contributing more directly to the design of systems in the first place: that is, not only evaluating systems but bringing to bear empirical methods and theoretical considerations that help specify what are plausible designs in the first place. The goal of this panel is to discuss four case studies emphasizing this role of cognitive human factors, and identify relevant methods and theoretical considerations.

The panelists will present examples of prototypes or products to whose design they contributed, with the aim of characterizing the problem (or problems) they tried to solve, the approach to identifying a design solution for that problem, and evidence that the approach was useful.

Robert Mack will discuss an editor prototype designed to get novices started doing meaningful work quickly and helping them to continue acquiring new skills, with virtually no explicit instruction. The prototype is being designed in large part by identifying key novice problems and expectations, and trying to design the interface to better accommodate these expectations. The first goal of getting novices started relatively quickly has been achieved but problems remain as novices try to acquire further text-editing skill. These problems — and solutions to them — are being identified through a process of iterative design and evaluation.

Dennis Wixon will discuss implications for designing usable interfaces of the User-Derived-Interface project (Good, M., Whiteside, J., Wixon, D. and Jones, S., 1984). The project involved a simulation of a restricted natural language interface for an electronic mail system. The design process was driven by the behavioral goal of getting users started relatively quickly with little or no instruction or interface aids. Actual user interaction with the simulation coupled with iterative design and evaluation provided interface specifications. This prototype illustrates a number of techniques for bringing usability into the software engineering process.

These presentations will discuss the role of empirical methods such as
verbal protocol techniques
for identifying user problems with existing computer systems (e.g., Lewis, 1982; Mack, Lewis & Carroll, 1983; Douglas & Moran, 1983), including variations aimed at identifying user expectations that may be able to guide design (e.g., Mack, 1984);
interface simulations
for studying user interactions again with the aim of letting user behavior guide interface design (e.g., Kelley, 1984; Good, Whiteside, Wixon & Jones, 1984), and
iterative design and evaluation
of interfaces, aimed at achieving behavioral goals (e.g., Carroll & Rosson, 1984; Gould & Lewis, 1983).
Knowledge-based help systems
Authors: Fischer Gerhard , Lemke Andreas , Schwab Thomas
Published: January 2007

Our research goals are to understand the nature of, construct and evaluate intelligent interfaces as knowledge-based systems. In this paper we demonstrate the need for help systems as an essential part of human-computer communication. Help strategies are based on a model of the task (to understand what the user is doing or which goals he/she
1
wants to achieve) and a model of the user (to guarantee that these systems are non-intrusive and that they pay attention to the needs of individual users).

We illustrate that passive and active help systems have to be constructed as knowledge-based systems. Two operational systems (PASSIVIST and ACTIVIST) are described to show the usefulness of this approach.
Design alternatives for user interface management sytems based on experience with COUSIN
Authors: Hayes Philip J. , Szekely Pedro A. , Lerner Richard A.
Published: January 2007

User interface management systems (UIMSs) provide user interfaces to application systems based on an abstract definition of the interface required. This approach can provide higher-quality interfaces at a lower construction cost. In this paper we consider three design choices for UIMSs which critically affect the quality of the user interfaces built with a UIMS, and the cost of constructing the interfaces. The choices are examined in terms of a general model of a UIMS. They concern the sharing of control between the UIMS and the applications it provides interfaces to, the level of abstraction in the definition of the information exchanged between user and application, and the level of abstraction in the definition of the sequencing of the dialogue. For each choice, we argue for a specific alternative. We go on to present COUSIN, a UIMS that provides graphical interfaces for a variety of applications based on highly abstracted interface definitions. COUSIN'S design corresponds to the alternatives we argued for in two out of three cases, and partially satisfies the third. An interface developed through, and run by COUSIN is described in some detail.
User performance with command, menu, and iconic interfaces
Authors: Whiteside John , Jones Sandra , Levy Paula S. , Wixon Dennis
Published: January 2007

Performance and subjective reactions of 76 users of varying levels of computer experience were measured with 7 different interfaces representing command, menu, and iconic interface styles. The results suggest three general conclusions:

there are large usability differences between contemporary systems,

there is no necessary tradeoff between ease of use and ease of learning,

interface style is not related to performance or preference (but careful design is).

Difficulties involving system feedback, input forms, help systems, and navigation aids occurred in all styles of interface: command, menu, and iconic. New interface technology did not solve old human factors problems.
Speech recognition and manner of speaking in noise and in quiet
Authors: Rollins Ann M.
Published: January 2007

Currently speech recognition is accomplished by matching spoken utterances with reference patterns of words that were spoken by an individual at an earlier time. Recognition is highly dependent upon background noise. The purpose of this study was to assess the extent to which subjects “manner” of speaking in noise, as separate from the noise itself, affected recognition. Subjects generated reference patterns in quiet and in noise and then spoke lists of digits in quiet and in noise for the speech system to recognize. Noise was delivered over earphones so it would not go into the speech recognition system through the microphone. Training and recognition were done from tape recordings, with the playback level of the tape was always set to the same, intermediate level. The data suggest that manner of speaking, for about half of the subjects is very different in noise compared with quiet. The data also imply that if recognition will be done in both quiet and noise, the safest alternative is to start out with patterns generated in noise.
Why is synthetic speech harder to remember than natural speech?
Authors: Waterworth John A.
Published: January 2007

Previous research has demonstrated that synthetic speech is less well recalled than natural speech. Luce et al (1983) concluded that this was because synthetic speech increases the effort involved in encoding and/or rehearsal of presented information. Results of the experiments described here, which involved ordered recall of lists of ten words spoken in either a synthetic or a natural voice, with repetition of the words as a measure of successful encoding, indicate that most of the memory deficit with synthetic speech is due to encoding difficulties, rather than problems with item retention. There is evidence that encoding synthetic speech involves more processing capacity than does encoding natural speech, but that once it is encoded it is stored just as efficiently.
A quantitative model of the learning and performance of text editing knowledge
Authors: Polson Peter G. , Kieras David E.
Published: January 2007

A model of manuscript editing, implemented as a simulation program, is described in this paper. The model provides an excellent, quantitative description of learning, transfer, and performance data from two experiments on text editing methods. Implications of the underlying theory for the design process are briefly discussed.
Behavioral experiments on handmarkings
Authors: Gould John D. , Salaun Josiane
Published: January 2007

Handmarkings, e.g., handwritten proofeditors' marks, can be used as direct editing commands to an interactive computer system. Three exploratory experiments studied the potential value of handmarkings for editing text and pictures. Results showed that circles are the most frequently used scoping mark and arrows are the most frequently used operator and target indicators. Experimental comparisons showed that handmarkings have the potential to be faster than keyboards and mice for editing tasks. But their ultimate value will depend upon the style and details of their user interface implementation.
Whiter (or wither) UIMS?
Authors: Olsen Dan R. , Green Mark , Lantz Keith A. , Schulert Andrew , Sibert John L.
Published: January 2007

The subject of User Interface Management Systems (UIMS) has been a topic of research and debate for the last several years. The goal of such systems has been to automate the production of user interface software. The problem of building quality user interfaces within available resources is a very important one as the demand for new interactive programs grows. Prototype UIMSs have been built and some software packages are presently being marketed as such. Many papers have been published on the topic.

There still, however, remain a number of unanswered questions. Is a UIMS an effective tool for building high quality user interfaces or is the run-time cost of abstracting out the user interface too high? Why are there not more UIMSs available and why are they not more frequently used? Is simple programmer productivity alone sufficient motivation for learning and adopting yet another programming tool? What is the difference, if any, between a “user interface toolbox”, a windowing system and a UIMS? What are the differences between a UIMS and the screen and editor generators found in fourth generation languages? In fact, exactly what is a UIMS?

In order to discuss these questions and to reassess the state of the UIMS art, SIGGRAPH sponsored a workshop on these issues (proceedings will be published in Computer Graphics in 1987). The panelists represent four subgroups who have each addressed these problems from different points of view.
An operational semantics and type safety prooffor multiple inheritance in C++
Authors: Wasserrab Daniel , Nipkow Tobias , Snelting Gregor , Tip Frank
Published: January 2007

We present an operational semantics and type safety proof for multiple inheritance in C++. The semantics models the behaviour of method calls, field accesses, and two forms of casts in C++ class hierarchies exactly, and the type safety proof was formalized and machine-checked in Isabelle/HOL. Our semantics enables one, for the first time, to understand the behaviour of operations on C++ class hierarchies without referring to implementation-level artifacts such as virtual function tables. Moreover, it can - as the semantics is executable - act as a reference for compilers, and it can form the basis for more advanced correctness proofs of, e.g., automated program transformations. The paper presents the semantics and type safety proof, and a discussion of the many subtleties that we encountered in modeling the intricate multiple inheritance model of C++.
Jennifer Widom speaks out
Authors: Winslett Marianne
Published: January 2007

Welcome to this installment of ACM SIGMOD Record's series of interviews with distinguished members of the database community. I'm Marianne Winslett, and today we are at the Department of Computer Science at the University of Illinois at Urbana-Champaign. I have here with me Jennifer Widom, who is a professor of Computer Science at Stanford University. Jennifer's research currently focuses on data provenance, management of uncertainty, queries over web services, and data streams. Jennifer is a member of the National Academy of Engineering, is an ACM Fellow, and is a former Guggenheim Fellow. Before joining Stanford, Jennifer worked at IBM Almaden Research Center. Jennifer's PhD is from Cornell. So, Jennifer, welcome!
On checkpointing and heavy-tails in unreliable computing environments
Authors: Bossie Craig , Fiorini Pierre M.
Published: January 2007

In this paper, we discuss checkpointing issues that should be considered whenever jobs execute in unreliable computing environments. Specifically, we show that if proper check-pointing procedures are not properly implemented, then under certain conditions, job completion time distributions exhibit properties of
heavy-tail
or
power-tail
distributions (hereafter referred to as power-tail distributions (PT), which can lead to highly-variable and long completion times.
Improving distributed system performance using machine availability prediction
Authors: Mickens James W. , Noble Brian D.
Published: January 2007

In a distributed system, a set of networked machines provides a highly available service to remote clients. Traditional distributed systems like AFS [2] make a clear distinction between clients and servers. Client machines may be poorly administered, cheaply constructed, often offline, and possibly malicious. In contrast, servers are expected to be well-administered and almost always online. Highly available servers ensure the availability and reliability of the distributed service.
Cross-layer power control in wireless networks
Authors: Giannoulis Anastasios , Tsoukatos Konstantinos P. , Tassiulas Leandros
Published: January 2007

We introduce a power control algorithm that exploits queue length information to achieve maximum data throughput in single-hop CDMA wireless networks. The algorithm operates in real-time, i.e., executes a single iteration per data transmission. A variant of the algorithm employing the exponential scheduling rule steers queue length ratios to desired targets.
Software-based instruction caching for embedded processors
Authors: Miller Jason E. , Agarwal Anant
Published: January 2007

While hardware instruction caches are present in virtually all general-purpose and high-performance microprocessors today, many embedded processors use SRAM or scratchpad memories instead. These are simple array memory structures that are directly addressed and explicitly managed by software. Compared to hardware caches of the same data capacity, they are smaller, have shorter access times and consume less energy per access. Access times are also easier to predict with simple memories since there is no possibility of a "miss." On the other hand, they are more difficult for the programmer to use since they are not automatically managed.In this paper, we present a software system that allows all or part of an SRAM or scratchpad memory to be automatically managed as a cache. This system provides the programming convenience of a cache for processors that lack dedicated caching hardware. It has been implemented for an actual processor and runs on real hardware. Our results show that a software-based instruction cache can be built that provides performance within 10% of a traditional hardware cache on many benchmarks while using a cheaper, simpler, SRAM memory. On these same benchmarks, energy consumption is up to 3% lower than it would be using a hardware cache.
High school graduate refines gyromouse interface for virtual reality
Authors: Duncan Matt , Kelley Matthew , Jacobson Jeffrey
Published: January 2007

Matt Duncan was a graduating senior at Yorktown High School in Arlington Virginia when he visited our university for a three-week for-credit internship. The goal was for him to learn about 3D graphic design and interaction design while helping us develop our Virtual Reality (VR) technology. The result was beneficial for everyone. He learned how to build virtual environments and to compare and refine VR navigation and selection techniques though collaboration with users. We got a virtual obstacle course for VR navigation training and a very intuitive interaction for VR navigation with the Gyromouse.
Construction of rankings on partial derivatives
Authors: Golubitsky Oleg
Published: January 2007

In differential algebra [1], rankings on partial derivatives play the same role as admissible term orders in the theory of Gröbner bases. In fact, an admissible term order is a particular case of a ranking on partial derivatives of a single differential indeterminate. The introduction of a ranking allows to select leading derivatives in differential polynomials, define a pseudo-reduction relation, and consider autoreduced sets; the latter are the a tool for representing differential ideals.
Complex medical processes as context for embedded systems
Authors: Avrunin George S. , Clarke Lori A. , Henneman Elizabeth A. , Osterweil Leon J.
Published: January 2007

Many embedded systems are intended for use in complex and highly concurrent processes with multiple human agents. In these cases, the requirements for the system depend critically on the details of the process. If certification is to be useful for such systems, it must take the details of the process into account. In this paper, we describe some current research involving the formal definition and analysis of complex medical processes. We discuss the ways in which this work may provide a basis for a more complete understanding of the behavior of medical devices in the context of the processes in which they are used, and thus for certification methods for sophisticated embedded systems.
Towards formally verifiable resource bounds for real-time embedded systems
Authors: Hammond Kevin , Ferdinand Christian , Heckmann Reinhold
Published: January 2007

This paper describes ongoing work aimed at the construction of formal cost models and analyses that are capable of producing verifiable guarantees of resource usage (space, time and ultimately power consumption) in the context of real-time embedded systems. Our work is conducted in terms of the domain-specific language Hume, a language that combines functional programming for computations with finite-state automata for specifying reactive systems. We describe an approach in which high-level information derived from source-code analysis can be combined with worst-case execution time information obtained from abstract interpretation of low-level binary code. This abstract interpretation on the machine-code level is capable of dealing with complex architectural effects including cache and pipeline properties in an accurate way.
Gender, achievement, and persistence in an undergraduate computer science program
Authors: Katz Sandra , Allbritton David , Aronis John , Wilson Christine , Soffa Mary Lou
Published: January 2007

The proportion of computer science (CS) bachelor's degree recipients who are women has consistently been small and is declining. This study investigates factors that predict performance and persistence in an undergraduate CS program and explores why even high-achieving students leave the undergraduate "CS pipeline." The factors that predict achievement and retention sometimes interact in complex, unexpected ways. Male students who earned less than a B in an introductory CS course were more likely to take the next course in the curriculum than were women who earned less than a B. Achievement is a factor in even high-achieving students' decision to leave CS; loss of interest can accompany loss of confidence. Level of achievement was predicted by various background factors including Scholastic Aptitude Test scores, the number of Calculus courses taken before entering the CS program, amount of access to a computer at home, prior computing experience, and having a mentor or role model during high school. Most of these factors also predicted persistence beyond the first two courses required for a CS major. Curiously, women in the introductory CS course who reported having low exposure to specific programming skills outperformed women who reported having a high level of programming experience. The reverse was true of men. Further investigation provided evidence that women who develop programming skills while in high school might do so at the expense of developing other skills that strongly predict CS achievement, particularly math skills.
An improved IDL compiler for optimizing CORBA applications
Authors: Zalila Bechir , Hugues Jérôme , Pautet Laurent
Published: January 2007

Building CORBA distributed applications for embedded and real-time systems has brought a number of requirements to be satisfied (small footprint, determinism...). A large part of the distributed application code is generated automatically from its IDL (Interface Definition Language) specification using an IDL compiler. Thus the IDL compiler has to be flexible in order to generate optimized code and to easily support new optimizations. In this paper, we present an IDL compiler architecture which is more amenable to generate optimized code. Then, we list some optimizations we implemented on the code generated by IAC (IDL Ada Compiler): the new IDL compiler and on PolyORB, our middleware, to make distributed applications suited for embedded real-time systems.
The harmonic or geometric mean
Authors: Citron Daniel , Hurani Adham , Gnadrey Alaa
Published: January 2007

For several decades, computer scientists have been arguing which mean is more appropriate for summarizing computer performance: the harmonic or the geometric. We show that many test cases used in the past to discredit one mean or the other are either artificial or incidental. Changing only one of the benchmarks may result in totally different conclusions.In addition, we conclude that for the SPEC CPU2000 benchmark suite, the choice of averaging has very little influence on the relative standing of different machines. Therefore, the decision to purchase one system rather then another should not be influenced by the type of averaging used.
At depths with computer graphics
Authors: Westman Hans
Published: January 2007

Welcome to the third issue of the ACM-SIGGRAPH "Computer Graphics" e-quarterly!
Visualising the invisible
Authors: Rowland Chris , Flack Steve
Published: January 2007

Our first feature article, written by Chris Rowland and Steve Flack, finds its origin from research activities in development at the School of Media Arts and Imaging, University of Dundee, Scotland. Most often, computer graphics is identified as the imagery created for movies and video games. Not so at the depths of Scapa Bay, where digital imagery is helping preserve wartime history while also saving the environment though sonar scanners and the 3D modeling and animation software package, Maya.
Database theory column
Authors: Van den Bussche Jan
Published: January 2007

The 25th edition of the ACM SIGMOD-SIGACT-SIGART Symposium on Principles of Databases (PODS), took place from 26 to 29 June 2006, at the Renaissance Chicago Hotel in Chicago. As usual since 1991, the symposium was organized jointly with the ACM SIGMOD International Conference on Management of Data. While SIGMOD focuses on practical aspects of database systems, PODS focuses on the theory of such systems. The joint organization stimulates interaction between systems and theory research.
Google™ - "do no evil"
Authors: Clear Tony
Published: January 2007

I suppose any company with a motto of "do no evil", sets a pretty unachievable standard. But for "
Google
™
the good
', the corporate image is rapidly becoming more tarnished. Quite apart from the controversial debates about supporting censorship in China, we are seeing the increasing tensions between Google as the liberal promoter of scientific neutrality, and Google as the global, corporate juggernaut. What is becoming apparent is the need for online search engines to adopt a moral and ethical code relating to the use of information as both a raw material and a fertile mine collated from other sources.
Associate-degree transfer curriculum in computer engineering
Authors: Campbell Robert D.
Published: January 2007

Computer Engineering (CE) curricula guidelines for undergraduate baccalaureate-degree programs were finalized and approved in 2004, published under the title
Curriculum Guidelines for Undergraduate Degree Programs in Computer Engineering
. That work was the result of a joint task force of the ACM and IEEE-CS. The baccalaureate report, together with accompanying materials, appear at http://www.computer.org/education/.
What is IFIP?
Authors: Turner A. Joe
Published: January 2007

I serve as ACM's representative to Technical Committee 3 (TC3) of IFIP, the International Federation for Information Processing. TC3 is concerned with education relative to computing, and ACM's representative to TC3 is supported by SIGCSE. SIGCSE Chair Henry Walker has suggested that as one step in fostering mutually beneficial activities between SIGCSE and TC3, it would be beneficial to include some information in
Inroads
about IFIP and its TC3. This column is the first of a series that is intended to acquaint SIGCSE members with IFIP and TC3, and we begin with an overview of IFIP.
Empirical study of novice programming with plans and objects
Authors: Ebrahimi A. , Schweikert C.
Published: January 2007

Empirical studies conducted at two colleges (traditional and online) indicate that students have difficulty with plan integration, understanding of the object-oriented paradigm, and incorporating OOP concepts into problem solving. When novices are taught OOP at an early stage, they tend to spend more time trying to understand objects and less time on problem solving. Currently, OOP compounds the problems novices face when learning programming. To reinforce more effectively OOP concepts, plans, and problem solving for novices, we propose a Plan-Object Paradigm and design of WPOL.
Teach graphics using excel in place of a graphing calculator
Authors: Lorenzen Torben , Sattar Abdul
Published: January 2007

Excel spreadsheets were developed to teach the underlying math in a computer graphics course including reviewing basic linear algebra operations, tracing a series of OpenGL transformations, and creating Bezier curves and surfaces with forward differences. Each spreadsheet contains an English overview of the mathematical process and the numerical result of each sub step thus providing a high level of abstraction. Double clicking a numerical result shows the underlying equation and operands used. The authors recommend using Excel in place of a graphing calculator in a computer graphics course.
Develop a shopping mart web application
Authors: Sattar Abdul , Lorenzen Torben
Published: January 2007

The authors' junior/senior CS class at Bridgewater State College implemented a web site similar to the shopping mart found at AMAZON.COM. The application was broken into four assignments which included an email address verifier written in Java, a 5 page GUI front-end to the web site written in Hypertext Markup Language (HTML), Java Script and Cascading Style Sheet (CSS), a rudimentary web browser, and a module implementing server-side functionality to update an Access database.
Research perspectives on the objects-early debate
Authors: Lister Raymond , Berglund Anders , Clear Tony , Bergin Joe , Garvin-Doxas Kathy , Hanks Brian , Hitchner Lew , Luxton-Reilly Andrew , Sanders Kate , Schulte Carsten , Whalley Jacqueline L.
Published: January 2007

In March 2004, SIGCSE members contributed to a mailing list discussion on the question of whether programming should be taught objects first or imperative first. We analyse that discussion, exploring how the CS community debates the issue and whether contributors' positions are supported by the research literature on novice programmers. We applied four distinct research methods to the discussion: cognitive science, rhetorical analysis in the critical tradition, phenomenography and biography. We identify the cognitive claims made in the email discussion and find there is not a consensus in the research literature as to whether the objects first approach or the imperative approach is harder to learn. From the rhetorical analysis, we find that the discussion was not so much a debate between OO-first versus imperative-first, but instead was more for and against OO-first. Our phenomenographic analysis identified and categorized the underlying complexity of the discussion. We also applied a biographical method to explore the extent to which the participants' views are shaped by their own prior experience. The paper concludes with some reflections upon paradigms, and the manner in which the CS discipline community defines itself.
New directions in multilingual information access
Authors: Gey Fredric C. , Kando Noriko , Lin Chin-Yew , Peters Carol
Published: January 2007

This workshop attempted to present the state-of-the-art in multilingual information access (MLIA) research and development, including cross-language information retrieval and question-answering and multilingual, multi-document summarization. Our goal was to delineate current research areas as well as suggest new areas for future research and development. The workshop also focused on practical issues of scalability and practical application of MLIA in digital libraries and web portals. In addition to an invited keynote, 17 research and position papers were selected for the proceedings which may be found at http://ucdata.berkeley.edu/sigir2006-mlia.htm.
The future evolution of Fortran
Authors: Schonfelder Lawrie
Published: January 2007

This is a working paper of ISO/IEC JTC1/SC22/WG5 that was presented to the WG5 meeting at Lund (Sweden) in June 1991.
Book review: Quantitative Analysis of Computer Systems by C.H.C. Leung (Wiley, 1988)
Authors: Finkel David
Published: January 2007

This book is, according to the author, "designed for final year undergraduates in computer sciences, or conversion course MSc students." It presumes some background in elementary probability theory, although this material is reviewed early in the book.
Performance variation across benchmark suites
Authors: Ponder Carl
Published: January 2007

The performance ratio between two systems tends to vary across different benchmarks. Here we study this variation as a "signature" or "fingerprint" of the systems under consideration. This "fingerprint" can be used to guess the performance of programs not represented in a benchmark suite, assess the breadth and credibility of the benchmark suite, and infer details of the system design.
The mismatch between technology planning and user needs
Authors: Paris Arthur E.
Published: January 2007

The professional and trade literature about computing as work activity obscures key features of the daily context in which computing technology is used. Organizational managers and their superiors in charge of this technology lack a clear understanding of the mundane context of people's work and computer use. Consequently, they
mis
understand the issues surrounding its use and adoption, and, absent a more realistic view, will be unable to deliver on their and its promises of significantly improved productivity.
An accidental translator from Smalltalk to ANSI C
Authors: Nash C. , Haebich W.
Published: January 2007

Smalltalk's great advantage over all of its competitors is the sophistication of its environment and the elegance of its implementation of the Object-Oriented paradigm. One of its disadvantages is that Smalltalk applications cannot be separated from the Smalltalk environment. The completeness of the environment as opposed to its insularity, appear to represent a natural trade-off. This paper describes an initially limited attempt to resolve the trade-off, for the purposes of a particular application, which subsequently grew in scope.
Book review: Multiprocessor Performance by Erol Gelenbe (John Wiley & Sons, 1989)
Authors: Finkel David
Published: January 2007

This book begins with a survey of the different approaches to paralletizing computation: vector or array processors, loosely-coupled distributed systems, and multiprocessor systems. The author then states his principal thesis, that only multiprocessor systems offer the potential for unlimited processing power in the machines of the future. Since the impetus for designing multiprocessor systems is to improve performance, it is obviously crucial to evaluate the performance of these systems. This is the task set out for the rest of the book.
Performance objectives—how to define them
Authors: Johari Shyam
Published: January 2007

The successful development of a product demands that product performance objectives be clearly defined and agreed to as early as possible during the product development cycle, typically during the product requirements phase. Unless clearly defined and uniformly understood, performance objectives can be subject to varied interpretation as product nears completion. Why? Because all parties (e.g., Product Marketing, Product Management, and Product Development) involved have their own performance perspective. How to clearly define the product performance objectives would be the thrust of this note.
Technical summary of the second IEEE workshop on workstation operating systems
Authors: Cabrera Luis-Felipe
Published: January 2007

The broad spectrum of universities, industrial research laboratories, and computer companies represented at the Second IEEE Workshop on Workstation Operating Systems provided a rich snapshot of current activities in operating systems. There were representatives of 19 operating system research projects among the participants and several from commercial offerings. The attendees came from seven countries on three continents: North America, Europe, and South America.Since the last Workshop in 1987, there have been more advances in hardware than in software functions. Software standards continue to emerge in the areas of operating system interfaces, page description languages, window management interfaces, and communication protocols. New software applications exist in the areas of multimedia and multi-node computing. Object-oriented technology is already present in running systems and gaining importance. The areas that the participants perceived needing most future work were operating system abstractions, workstation operation, system responsiveness, input output, network services, management of clusters of workstations, and failure handling.While processor speeds, main memory access speeds, memory density, and secondary storage capacity continue to increase fast, disk seek times have decreased only slightly, and the bandwidth of most local-area networks has not increased at all. FDDI networks are just beginning to be deployed. The software is adjusting to this hardware scenario by using caching at multiple levels of the systems.In the last two years large main memories at individual computing nodes and multi-node computer installations have become common. It is expected that most future computing nodes will have substantial local storage and that high-bandwidth networks will enable the support of continuous media like vocie and video. Input output, to disks, to networks, and to user-oriented devices, is expected to become the central problem in future systems.
Algernon—a tractable system for knowledge-representation
Authors: Crawford J. M. , Kuipers B. J.
Published: January 2007

Access-Limited Logic (ALL) is a theory of knowledge representation which formalizes the access limitations inherent in a network structured knowledge-base. Where a deductive method such as resolution would retrieve all assertions that satisfy a given pattern, an access-limited logic retrieves only those assertions reachable by following an available access path. The time complexity of inference in ALL is a polynomial function of the size of the
accessible portion
of the knowledge-base, rather than an exponential function of the size of the entire knowledge-base (as in much past work). Access-Limited Logic, though incomplete, still has a well defined semantics and a weakened form of completeness, Socratic Completeness, which guarantees that for any fact which is a logical consequence of the knowledge-base, there is a series of preliminary queries and assumptions after which a query of the fact will succeed.
Implementing Telos
Authors: Kramer Bryan M. , Chaudhri Vinay K. , Koubarakis Manolis , Topaloglou Thodoros , Wang Huaiqing , Mylopoulos John
Published: January 2007

This paper describes experiences in implementing Telos [MBJK90, TK89], a knowledge representation scheme developed at the University of Toronto. In a nutshell, Telos is a hybrid of an object-centered representation for representing entities, a logic-based language for representing deductive rules and integrity constraints, and an interval-based language for representing time. The language is unique for its tight integration of temporal knowledge and for its meta-level capabilities which include a class/metaclass hierarchy and a reflective inference engine.
JOSIE
Authors: Nado Robert , Baalen Jeffrey Van , Fikes Richard
Published: January 2007

We present an overview of an implemented knowledge system development tool, called JOSIE, that provides a general framework for integrating specialized representation and reasoning facilities. In our presentation we emphasize the problematic issues that arise when integrating specialized representations and the distinctive features of the facilities included in the system. The current system includes assertion, retraction, and query facilities using a predicate-calculus style interface language, a default sentential representation for the interface language, an inference rule language and forward chaining interpreter based on the interface language, a justification-based truth maintenance system that supports restricted nonmonotonic proofs, a frame-based specialized representation system that provides arbitrarily nested slot descriptions and default slot values, and a constraint language and reasoner within the frame system that provides both constraint propagation and symbolic solution of linear equations via Gaussian elimination.
Book review: Knowledge Representation and Defeasible Reasoning. Edited by Henry E. Kyburg, Jr., Ronald P. Loui, and Greg N. Carlson (Kluwer Academic Press)
Authors: Riedesel Joel
Published: January 2007

This book is a collection of papers stemming from a meeting held in Rochester in the spring of 1987. The meeting brought together people from three areas: Artificial Intelligence, Philosophy, and Computational Linguistics. From the introduction:The idea behind the meeting ... was to bring all three groups together for the purpose not merely of exchanging ideas ... but for the purpose of exchanging technology, theorems, axioms --- the stuff of which substantive, permanent, scientific progress is made.
Book review: Introduction to Common Lisp by Taiichi Yuasa and Masami Hagiya (Academic Press, 1987) and Common Lisp Drill by Taiichi Yuasa (Academic Press, 1988); Both texts translated into English by Richard Weyhrauch and Yasuko Kitajima
Authors: Fitz Michael J.
Published: January 2007

"Introduction to Common Lisp (sic)" is a textbook that professes to teach the basics of Common LISP using Kyoto Common LISP as the dialect of choice. In his preface, Author Taiichi Yuasa states that his book is "... designed to explain Common Lisp in a way that can be understood by beginners." He further states that "The knowledge you will acquire from this book will be enough for you to write reasonable Lisp programs." The jacket blurb additionally states that the book "... can be used as a beginning text for undergraduate and graduate students in computer science ..." The companion volume to "Introduction to Common Lisp", "Common Lisp Drill", is a workbook-like collection of exercises keyed to the text of "Introduction to Common Lisp". It is, according to its back-cover blurb, "... perfectly suited as an independent tutorial for learning Common Lisp." This review will examine these claims, along with some other issues.
3,000,000 Queens in less than one minute
Authors: Sosic Rok , Gu Jun
Published: January 2007

The
n
- queens problem is a classical combinatorial search problem. In this paper we give a linear time algorithm for this problem. The algorithm is an extension of one of our previous local search algorithms [3, 4, 6]. On an IBM RS 6000 computer, this algorithm is capable of solving problems with 3,000,000 queens in approximately 55 seconds.