Advertisement

Opinion

Technical correspondence

The column, “Benchmarks for LAN Performance Evaluation,” by Larry Press (Aug. 1988, pp. 1014-1017) presented a technique for quickly benchmarking the performance of LANs in an office environment. Our interest was peaked since office automation is growing in importance. As a result, an empirical analysis of the Press benchmark programs was conducted. The results indicated that these benchmarking programs were appropriate for the benchmarking of LANs in an office environment.
Research and Advances

Biosphere 2 nerve system

Biosphere 2 (Earth being Biosphere 1) is an experiment in closed system ecology. It is a steel and glass structure about the size of three football fields and has a volume of more than three million cubic feet. The purpose of the project is to demonstrate the viability of materially closed ecosystems—a sort of bioregenerative life support system—where water, air, and food are recycled. Later this year, eight people, called Biospherians, will be sealed inside Biosphere 2 for two years with only power and information being exchanged with the outside. A major part of this project is an expert system-based environmental control and monitoring system called the “Nerve System.”
Research and Advances

The philosophy of Lisp

We consider here the importance of an overall systems viewpoint in avoiding computer-related risks. According to Webster's, a system is a regularly interacting or interdependent group of items forming a unified whole. In computer systems, one person's components may be another person's system, and one person's system may in turn be one of another person's components. That is, each layer of abstraction may have it own concept of a system. We speak of a memory system, a multiprocessor system, a distributed system, a multisystem system, a networked system, and so on. A system design can most effectively be considered as a unified whole when it is possible to analyze the interdependent subsystems individually and then to evaluate, reason about, and test the behavior of the entire system based on the interactions among the subsystems. This is particularly true of distributed systems that mask the presence of distributed storage, processing, and control. At each layer of abstraction, it is desirable to design (sub)systems that are context-free, but in reality there may be subtle interactions that must be accommodated—particularly those involving the operating environment.
Research and Advances

The Metal system

Siemens Nixdorf Information Systems has created a machine translation system called Metal that supports the following language pairs: German-English; English-German; German-Spanish; French-Dutch; Dutch-French. (Work on other language pairs is underway.
Research and Advances

Delivering the goods with Lisp

Lisp has long had a reputation for the efficacy of its development environment. It is used in academia and by some R&D groups in industry; and, compared with conventional languages, it is hardly ever used in real applications in the real world. It will always be perceived as a rather arcane esoteric language if it does not successfully leave the ivory towers and start delivering the goods where it really matters—at the sharp end in industry.
Research and Advances

CLOS: integrating object-oriented and functional programming

Lisp has a long history as a functional language,* where action is invoked by calling a procedure, and where procedural abstraction and encapsulation provide convenient modularity boundaries. A number of attempts have been made to graft object-oriented programming into this framework without losing the essential character of Lisp—to include the benefits of data abstraction, extensible type classification, incremental operator definition, and code reuse through an inheritance hierarchy. The Common Lisp Object System (CLOS) [3], a result of the ANSI standardization process for Common Lisp, represents a marriage of these two traditions. This article explores the landscape in which the major object-oriented facilities exist, showing how the CLOS solution is effective within the two contexts.
Research and Advances

CLIM: the Common Lisp interface manager

The essence of an application is a set of objects and a set of operations on those objects. The essence of the behavior of an application's user interface is similar to Lisp's read-eval-print loop: the user specifies what he or she wants to do (perhaps via a menu or a dialog or a direct manipulation), the application performs the operation, and then the result of that operation is displayed. The Common Lisp Interface Manager (CLIM) is a system for constructing portable users interfaces in a way that directly connects the objects and operations of an application to the objects of its user interface.
Opinion

How the Nintendo generation learns

Recently, I was chatting with my son, Daniel (age 7) about Nintendo. I asked him if he could bring it in to school for show and tell and he was horrified! “No,” he exclaimed, “that's not for learning.” Well, what do you, dear reader, think about that? Is Nintendo for learning? No one is watching/listening … go ahead … admit it … You don't really like Nintendo. (Of course, when you play Tetris, that is exercising problem-solving skills. Right.) And, afterall, you didn't use all that technology in school, and you learned just fine. So, why do “kids these days” need all this new multimedia technology, anyhow? That technology just makes it fun and easy to learn—it's just glitz. And as for calculators.....
Research and Advances

LispView: leverage through integration

Although Lisp was the host for many of the first graphical user interface (GUI) packages, popular activity in this area has shifted to more primitive but widely used languages such as C and C++. One explanation for this shift is that while Lisp's strength in rapid prototyping and development led to the initial progress, it also tended to inspire an imperialist attitude: applications were often crafted exclusively in Lisp, even when part of the application could make use of an existing conventional language library. We believe the ideal way to construct a CommonLisp GUI package today is to integrate proven C libraries with an object-oriented Lisp framework.
Research and Advances

Real-time knowledge-based control systems

This special section is the outgrowth of a workshop on real-time knowledge-based control systems, held during the 1990 national conference of the American Association for Artificial Intelligence (AAAI). The workshop was motivated by the recognition that constructing robotic systems capable of autonomous, flexible, intelligent behavior is an inherently interdisciplinary task. In particular, professionals from the fields of artificial intelligence (AI), control theory, process control and real-time scheduling were invited. To facilitate communication among these fields, the workshop organizers decided to focus on software design principles for real-time systems, and so sought out those who had built working systems and could express their experiences in terms of techniques they had tested and/or refuted.
Practice

A storage and access manager for ill-structured data

Database management systems are powerful tools for processing large volumes of structured, or normalized, data. Much of the data to be stored in computer systems, however, differs from normalized data in both its logical uses and the storage structure required for its effective management. For instance, Van Rijsbergen (1979) distinguishes database retrieval from information retrieval (IR)—the retrieval of references to text—by comparing the following logical characteristics of IR systems to database management systems: IR Systems employ partial (vs. exact) matching; they are built on an underlying probabilistic (vs. deterministic) model; they classify information on a polythetic (vs. monothetic) basis, and queries are incompletely (vs. completely) specified. Similarly, other forms of relatively ill-structured data such as semantic networks [15]—which require property inheritance, and production rules—which must be joined in logical chains also differ in their logical use from normalized record structures.

Shape the Future of Computing

ACM encourages its members to take a direct hand in shaping the future of the association. There are more ways than ever to get involved.

Get Involved

Communications of the ACM (CACM) is now a fully Open Access publication.

By opening CACM to the world, we hope to increase engagement among the broader computer science community and encourage non-members to discover the rich resources ACM has to offer.

Learn More