Advertisement

Research and Advances

Garbarge collection for Prolog based on WAM

The Warren abstract machine (WAM) has become a generally accepted standard Prolog implementation technique. Garbage collection is an important aspect in the implementation of any Prolog system. A synopsis of the WAM is presented and then marking and compaction algorithms are shown that take advantage of WAM's unique use of the data areas. Marking and compaction are performed on both the heap and the trail; both use pointer reversal techniques, which obviate the need for extra stack space. However, two bits for every pointer on the heap are reserved for the garbage collection algorithm. The algorithm can work on segments of the heap, which may lead to a significant reduction of the total garbage collection time. The time of the algorithms are linear in the size of the areas.
Research and Advances

MIS careers—a theoretical perspective

MIS personnel historically have exhibited a disturbingly high rate of turnover, and the job of the MIS manager is increasingly oriented to personnel and staffing problems. The MIS careers literature consistently suggests that what is needed to improve this situation is (1) more attention to formal career planning, and (2) the implementation of a dual career ladder system within the DP/IS organization. A look at the broader literature on organizational careers suggests that these suggestions may not in fact make sense. By considering only a subset of the relevant concepts about careers, we have reached conclusions that are quite possibly erroneous, and have made suggestions that will not likely help. Until further research on MIS personnel and their career needs is accomplished, we will have no valid basis for prescribing solutions to MIS careers problems. Suggestions for needed research are outlined.
Research and Advances

Factors of success for end-user computing

A two-phase study concerned with the factors of success associated with the development of computer applications by end users was conducted in 10 large organizations. During the first phase, in-depth interviews were used to refine a preliminary model of the factors of success for user development of computer applications (UDA). In the second phase, a questionnaire was administered to 272 end users experienced in developing applications. Statistical tests of the relationships in the model indicated that all but one of the derived hypotheses were substantiated. The result of this study is a field-verified model of the factors of success of UDA that provides a basis for implementation of UDA practices and policies in organizations, as well as for further research in end-user computing.
Research and Advances

On visual formalisms

The higraph, a general kind of diagramming object, forms a visual formalism of topological nature. Higraphs are suited for a wide array of applications to databases, knowledge representation, and, most notably, the behavioral specification of complex concurrent systems using the higraph-based language of statecharts.
Research and Advances

Distributed programming in Argus

Argus—a programming language and system developed to support the implementation and execution of distributed programs—provides mechanisms that help programmers cope with the special problems that arise in distributed programs, such as network partitions and crashes of remote nodes.
Research and Advances

Special section on operating systems

This special collection of articles examines recent research in operating systems, focusing on particular systems and projects that are seminal and representative. The areas these articles cover include distributed operating systems, heterogeneous computer systems, distributed programming, and real-time systems.
Research and Advances

The V distributed system

The V distributed System was developed at Stanford University as part of a research project to explore issues in distributed systems. Aspects of the design suggest important directions for the design of future operating systems and communication systems.
Research and Advances

Practical in-place merging

We present a novel, yet straightforward linear-time algorithm for merging two sorted lists in a fixed amount of additional space. Constant of proportionality estimates and empirical testing reveal that this procedure is reasonably competitive with merge routines free to squander unbounded additional memory, making it particularly attractive whenever space is a critical resource.

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