ppxscal/embedding_network huggingface dataset:
A hyperCard tutorial that accommodates different learning styles
Authors: M. K. Eck
Venue: Proceedings of the 17th annual ACM SIGUCCS conference on User Services (1989)

The University is overwhelmed with documents, films, videotapes, cassettes, manuals, and free classes, but not everybody who wants to learn is reading, watching, listening or attending. In a study titled Learning to Use a Word Processor: By Doing, by Thinking, and by Knowing, John Carroll and Robert Mack noticed that some people trying to learn word processing &ldquo;are so busy trying things out, thinking things through, and trying to relate what they already know (or believe they know) to what is going on that they often do not notice the small voice of structured instruction crying out to them from behind the manual and the system interface.&rdquo;1 Different people have different learning styles. Learners who are too busy to listen probably learn best through active experimentation. They won't bother showing up for class. Instead, they'll get the software, start it up, experiment, explore, and putter. One way to reach out to active learners is to adapt the instructional materials. Instead of giving the active learner a painstaking tutorial or a cumbersome reference manual, let her explore the word processor guided only by a few brief pages.2 Unfortunately, &ldquo;word processing&rdquo; is not an intuitive concept. Most word processors are more powerful than helpful. Microsoft Word is a popular word processor for the Macintosh computer. Imagine me the novice confronting the Microsoft Word screen. I want to write my thesis, today. But I can't figure what the margins are or even where the page is, I don't know what to do, I don't know what I should be doing, and when I do something anyway, I don't know what I did, or how to undo it.
Textbook errors in binary searching
Authors: Richard E. Pattis
Venue: ACM SIGCSE Bulletin (1988)

This paper discusses the specification and implementation of binary searching. It begins by presenting a &ldquo;standard&rdquo; set of declarations, a specification, and a binary searching procedure written in Pascal. This procedure does not meet the specification: it contains five errors that also occur in many CS-1 and CS-2 textbooks. We will locate and study these errors, and show alternative procedures that correct them in a simple and understandable way.
Twin grid files: space optimizing access schemes
Authors: Andreas Hutflesz, Hans-Werner Six, Peter Widmayer
Venue: Proceedings of the 1988 ACM SIGMOD international conference on Management of data (1988)

Storage access schemes for points, supporting spatial searching, usually suffer from an undesirably low storage space utilization. We show how a given set of points can be distributed among two grid files in such a way that storage space utilization is optimal. The optimal twin grid file can be built practically as fast as a standard grid file, i.e., the storage space optimality is obtained at almost no extra cost. We compare the performances of the standard grid file, the optimal static twin grid file, and an efficient dynamic twin grid file, where insertions and deletions trigger the redistribution of points among the two grid files. Twin grid files utilize storage space at roughly 90%, as compared with the 69% of the standard grid file. Typical range queries - the most important spatial search operations - can be answered in twin grid files at least as fast as in the standard grid file.
Collaboration in KMS, a shared hypermedia system
Authors: E. Yoder, R. Akscyn, D. McCracken
Venue: Proceedings of the SIGCHI conference on Human factors in computing systems: Wings for the mind (1989)

This paper describes how we use a hypermedia system (KMS) for our collaborative work. Based on our experience with KMS and our previous research with the ZOG system at Carnegie Mellon University, we believe that a shared-database hypermedia system provides a powerful foundation for collaboration. In this paper, we show how the shared-database capability of KMS, plus particular aspects of its data model, address six of the fundamental issues facing designers of collaborative work systems.
Random numbers for simulation
Authors: Pierre L'Ecuyer
Venue: Communications of the ACM (1990)

In the mind of the average computer user, the problem of generating uniform variates by computer has been solved long ago. After all, every computer :system offers one or more function(s) to do so. Many software products, like compilers, spreadsheets, statistical or numerical packages, etc. also offer their own. These functions supposedly return numbers that could be used, for all practical purposes, as if they were the values taken by independent random variables, with a uniform distribution between 0 and 1. Many people use them with faith and feel happy with the results. So, why bother? Other (less naive) people do not feel happy with the results and with good reasons. Despite renewed crusades, blatantly bad generators still abound, especially on microcomputers [55, 69, 85, 90, 100]. Other generators widely used on medium-sized computers are perhaps not so spectacularly bad, but still fail some theoretical and/or empirical statistical tests, and/or generate easily detectable regular patterns [56, 65]. Fortunately, many applications appear quite robust to these defects. But with the rapid increase in desktop computing power, increasingly sophisticated simulation studies are being performed that require more and more &ldquo;random&rdquo; numbers and whose results are more sensitive to the quality of the underlying generator [28, 40, 65, 90]. Sometimes, using a not-so-good generator can give totally misleading results. Perhaps this happens rarely, but can be disastrous in some cases. For that reason, researchers are still actively investigating ways of building generators. The main goal is to design more robust generators without having to pay too much in terms of portability, flexibility, and efficiency. In the following sections, we give a quick overview of the ongoing research. We focus mainly on efficient and recently proposed techniques for generating uniform pseudorandom numbers. Stochastic simulations typically transform such numbers to generate variates according to more complex distributions [13, 25]. Here, &ldquo;uniform pseudorandom&rdquo; means that the numbers behave from the outside as if they were the values of i.i.d. random variables, uniformly distributed over some finite set of symbols. This set of symbols is often a set of integers of the form {0, . . . , m - 1} and the symbols are usually transformed by some function into values between 0 and 1, to approximate the U(0, 1) distribution. Other tutorial-like references on uniform variate generation include [13, 23, 52, 54, 65, 84, 89].
Effectively Labeling Planar Projections of Polyhedra
Authors: L. M. Kirousis
Venue: IEEE Transactions on Pattern Analysis and Machine Intelligence (1990)

A well-known method for interpreting planar projections (images) of three-dimensional polyhedra is to label their lines by the Clowes-Huffman scheme. However, the question of whether there is such a labeling has been shown to be NP-complete. A linear-in-time algorithm is given that answers the labelability question under the assumption that some information is known about those edges of the polyhedron both of whose faces are visible. In many cases, this information can be derived from the image itself. Moreover, the algorithm has an effective parallel version, i.e. with polynomially many processors it can be executed in time polynomial in log n.
Database Operations in a Cube-Connected Multicomputer System
Authors: C. K. Baru, O. Frieder
Venue: IEEE Transactions on Computers (1989)

Distributed memory architectures, specifically hypercubes, for parallel database processing are treated. The cube interconnects support-efficient data combination for the various database operations, and nonuniform data distributions are handled by dynamically redistributing data utilizing these interconnections. Selection and scalar aggregation operations are easily supported. An algorithm for the join operation is discussed in some detail. The cube is compared with another multicomputer database machine, SM3, and the performance of the join operation in these systems is described. The join performance in a cube is comparable to that in SM3 even when the cube is assumed to have a nonuniform data distribution.
Stabbing pairwise disjoint translates in linear time
Authors: P. Egyed, R. Wenger
Venue: Proceedings of the fifth annual symposium on Computational geometry (1989)

In general, finding a line stabber for a family of n objects in the plane takes &ohgr;(n log n) time. However, we show how to find a line stabber for a family of n pairwise disjoint convex translates in the plane in linear time. Our algorithm still runs in optimal &Ogr; (n log n) time when the translates are not pairwise disjoint.
Progressive project assignments in computer courses
Authors: Robert Leeper
Venue: ACM SIGCSE Bulletin (1989)

This paper presents a method of design for projects in computer courses that tends to enable all students in the class to achieve their maximum potential. Each project is structured at three progressive levels of difficulty corresponding to three prospective grades A, B, and C. The B-level is an extension of the C-level and the A-level is an extension of the B-level. Each student starts at the C-level and progresses as far as possible and is scored accordingly.
On Computing the Combinatorial Power of SW-Banyan Networks
Authors: R. S. Roberts, S. C. Kothari
Venue: IEEE Transactions on Computers (1989)

The problem of calculating the combinatorial power of certain SW-banyan networks is related to a problem of enumerating certain matrices. Examples of two- and three-stage networks are used to demonstrate the technique. In each case, a polynomial-time algorithm is found to solve the problem. The results are presented for each case and certain asymptotic behavior is noted.
Parallel Sorting in Two-Dimensional VLSI Models of Computation
Authors: I. D. Scherson, S. Sen
Venue: IEEE Transactions on Computers (1989)

The gradual refinement of a general approach to two-dimensional sorting, the shear-sort algorithm, to more sophisticated and specialized sorting algorithms on mesh-connected computers is described. The analysis of the shear-sort algorithm gives rise to a novel perspective of two-dimensional sorting, which seems to be a very powerful tool for developing efficient algorithms. The same methods can be extended for sorting in higher dimensions, for example, in the three-dimensional mesh. The concept of clean and dirty rows can be modified to clean and dirty planes (or hyperplanes for dimensions greater than three). Although only two schemes (purely recursive and iterative) are explicitly described, the reader may construct his own algorithm using similar technique and slight modifications. Designing an O(n) algorithm for sorting on a mesh becomes much simpler using the techniques developed.
Incremental generation of parsers
Authors: J. Heering, P. Klint, J. Rekers
Venue: Proceedings of the ACM SIGPLAN 1989 Conference on Programming language design and implementation (1989)

An LR-based parser generator for arbitrary context-free grammars is described, which generates parsers by need and processes grammar modifications by updating already existing parsers. We motivate the need for these techniques in the context of interactive language definition environments, present all required algorithms, and give measurements comparing their performance with that of conventional techniques.
Recognizing 3-D Objects Using Surface Descriptions
Authors: T.-J. Fan, G. Medioni, R. Nevatia
Venue: IEEE Transactions on Pattern Analysis and Machine Intelligence (1989)

The authors provide a complete method for describing and recognizing 3-D objects, using surface information. Their system takes as input dense range date and automatically produces a symbolic description of the objects in the scene in terms of their visible surface patches. This segmented representation may be viewed as a graph whose nodes capture information about the individual surface patches and whose links represent the relationships between them, such as occlusion and connectivity. On the basis of these relations, a graph for a given scene is decomposed into subgraphs corresponding to different objects. A model is represented by a set of such descriptions from multiple viewing angles, typically four to six. Models can therefore be acquired and represented automatically. Matching between the objects in a scene and the models is performed by three modules: the screener, in which the most likely candidate views for each object are found; the graph matcher, which compares the potential matching graphs and computes the 3-D transformation between them; and the analyzer, which takes a critical look at the results and proposes to split and merge object graphs.
An architecture for expert user interface and design management
Authors: J. Lowgren
Venue: Proceedings of the 2nd annual ACM SIGGRAPH symposium on User interface software and technology (1989)

From a user interface point of view, expert systems are different from applications in general in that the reasoning process of the system often defines the dialogue structure. This has several advantages, but there may also be problems due to the lack of separation between functionality and user interface. This paper investigates the possibility of treating an expert system user interface as separate from the reasoning process of the system, and the consequences thereof. We propose that an expert system user interface can be seen as a combination of two different structures; the surface dialogue, comprising mainly lexical and syntactical aspects, and the session discourse which represents the interaction between user and system on a discourse level. A proposed architecture for a software tool managing these two structures is presented and discussed, with particular emphasis on the session discourse manager.
A model for the design of high performance protocols for a networked computing environment
Authors: Gary D. Law
Venue: Proceedings of the 1988 ACM SIGSMALL/PC symposium on ACTES (1988)

The advent of high bandwidth local area networks means that it is now possible to interconnect large numbers of devices with widely differing processing capabilities in such a manner that the various devices may closely interact. Before such a system may be realised, it is necessary to define a set of conventions to govern the way in which the network nodes interact with each other. The Triadic Network Model is introduced to describe the interactions between personal computers and high performance computers over a general purpose network by using a third classification of devices, whose purpose is to support the operation of the network as a distributed system. The model is not restricted to any particular network or operating system, but may form the interface between the two. Hence, the use of a protocol set based on this model enables the provision of a uniform interface to the applications software. Some of the principles of a protocol set developed from the Triadic Network Model are presented in the paper.
Using semantic knowledge of transactions to increase concurrency
Authors: Abdel Aziz Farrag, M. Tamer Özsu
Venue: ACM Transactions on Database Systems (TODS) (1989)

When the only information available about transactions is syntactic information, serializability is the main correctness criterion for concurrency control. Serializability requires that the execution of each transaction must appear to every other transaction as a single atomic step (i.e., the execution of the transaction cannot be interrupted by other transactions). Many researchers, however, have realized that this requirement is unnecessarily strong for many applications and can significantly increase transaction response time. To overcome this problem, a new approach for controlling concurrency that exploits the semantic information available about transactions to allow controlled nonserializable interleavings has recently been proposed. This approach is useful when the cost of producing only serializable interleavings is unacceptably high. The main drawback of the approach is the extra overhead incurred by utilizing the semantic information. We examine this new approach in this paper and discuss its strengths and weaknesses. We introduce a new formalization for the concurrency control problem when semantic information is available about the transactions. This semantic information takes the form of transaction types, transaction steps, and transaction break-points. We define a new class of &ldquo;safe&rdquo; schedules called relatively consistent (RC) schedules. This class contains serializable as well as nonserializable schedules. We prove that the execution of an RC schedule cannot violate consistency and propose a new concurrency control mechanism that produces only RC schedules. Our mechanism assumes fewer restrictions on the interleavings among transactions than previously introduced semantic-based mechanisms.
Development of job-job step scheduler for NAL numerical simulator
Authors: S. Hatayama, M. Tsuchiya, Y. Shinkai, H. Morishige
Venue: Proceedings of the 1988 ACM/IEEE conference on Supercomputing (1988)

In this paper we present the concepts and functions of the job-job step scheduler which is the kernel of the software packages developed for the management of the NAL Numerical Simulator (NS). This scheduler is partially responsible for the high operating ratio of supercomputers in NS, while there is some guarantee of job turnaround.
Two learning schemes in information retrieval
Authors: C. T. Yu, H. Mizuno
Venue: Proceedings of the 11th annual international ACM SIGIR conference on Research and development in information retrieval (1988)

Two methods are given to improve weighting schemes by using relevance information of a set of queries. The first method is to estimate parameter values of two independence models in information retrieval &mdash; the binary independence model and the non-binary independence model. The parameters estimated here are used to calculate optimal weights for terms in a different set of queries. Performance of this estimation is compared to the inverse document frequency method, the cosine measure, and the statistical similarity measure. The second method is to learn optimal weights of the non-binary independence model adaptively by a learning formula. Experiments are performed on three different document collections CISI, MEDLARS, and CRN4NUL for both methods, and results are reported. Both methods show improvements compared to the existing weighting schemes. Experimental results show that the second method gives slightly better performance than the first one, and has simpler implementation.
The art of navigating through hypertext
Authors: Jakob Nielsen
Venue: Communications of the ACM (1990)

Hypertext (3), (19), (25) is becoming a popular approach to many computer applications, especially those dealing with the on-line presentation of large amounts of loosely structured information such as on-line documentation or computer-aided learning. There are still many issues concerning hypertext that remain to be resolved, however, many of which are in the user interface area. One of the major usability problems with hypertext is the user's risk of disorientation while navigating the information space. For example, our studies [23] showed that 56 percent of the readers of a document written in one of the most popular commercial hypertext systems agreed fully or partly with the statement I was often confused about &lsquo;where I was. &rsquo; To investigate a number of user interface options in hypertext systems we designed a prototype system in the form of a hypertext report on events at the 1987 hypertext workshop. This system was implemented on an Apple Macintosh with Hypercard as the programming system. (To get a feel for our hypertext system, the reader is encouraged to review Figures 1 to 10 which contain screen dumps of a session with the system and thus constitute a kind of printed demonstration or guided tour.) Hypertext is a very dynamic form of human-computer interaction and can only be fully appreciated in an interactive environment. However, even these figures give a much better understanding of the system than a traditional textual description could give.
An address gneration unit for array accessing
Authors: Tsong-Chih Hsu, Ling-Yang Kung
Venue: ACM SIGARCH Computer Architecture News (1989)

Most current systems have an undesirable large semantic gap in that the objects and operations reflected in their architectures are not closely reflected to the objects and operations provided in programming languages [1]. Far more effort than in the past should be spend on the design of novel computer architectures, supporting modern software concepts better than the traditional Von Neumann designs, or with other words, which can narrow the semantic gap. In this paper we propose an address generation unit for array accessing. One major research effort in this research may be to narrow this semantic gap between architecture and array concepts.
Spin-out: the Chinese rings in the classroom
Authors: Brian A. Rudolph
Venue: ACM SIGCSE Bulletin (1988)

A new puzzle marketed under the name of Spin-Out is presented as a modernization of the Chinese Rings puzzle. An integration of the puzzle into the second programming course is then detailed as an aid in teaching recursive programming.
Trace Analysis for Conformance and Arbitration Testing
Authors: G. V. Bochmann, R. Dssouli, J. R. Zhao
Venue: IEEE Transactions on Software Engineering (1989)

The authors explore a testing approach where the concern for selecting the appropriate test input provided to the implementation under test (IUT) is separated as much as possible from the analysis of the observed output. Particular emphasis is placed on the analysis of the observed interactions of the IUT in order to determine whether the observed input/output trace conforms to the IUT's specification. The authors consider this aspect of testing with particular attention to testing of communication protocol implementations. Various distributed test architectures are used for this purpose, where partial input/output traces are observable by local observers at different interfaces. The error-detection power of different test configurations is determined on the basis of the partial trace visible to each local observer and their global knowledge about the applied test case. The automated construction of trace analysis modules from the formal specification of the protocol is also discussed. Different transformations of the protocol specification may be necessary to obtain the reference specification, which can be used by a local or global observer for checking the observed trace. Experience with the construction of an arbiter for the OSI (open systems interconnection) transport protocol is described.
Postscript, Bezier curves, and chinese characters
Authors: W. E. Ellis
Venue: Proceedings of the 17th conference on ACM Annual Computer Science Conference (1989)

The PostScript page description language is designed to allow the production of graphical layouts on a page. In particular, the capability to use four points to describe a B&eacute;zier curve simplifies the layout of rather complex graphical objects. Advantage has been taken of this feature to develop a system for drawing Chinese characters. This article gives the general structure of the PostScript language, defines and gives examples of B&eacute;zier curves, and describes an interactive program that allows the layout of Chinese characters by a combination of B&eacute;zier curves.