ppxscal/embedding_network huggingface dataset:
Comments on &ldquo;The Role of Balloon Help&rdquo; by David Farkas
Authors: John R. Talburt
Venue: ACM SIGDOC Asterisk Journal of Computer Documentation (1993)

My comments are aimed at two levels. The first is a direct response to Balloon Help as an online help facility, particularly from the standpoint of minimalism. The second is a more philosophical level relating to the changing face of computer documentation and the role of SIGDOC.
Algorithms for loading parallel grid files
Authors: Jianzhong Li, Doron Rotem, Jaideep Srivastava
Venue: Proceedings of the 1993 ACM SIGMOD international conference on Management of data (1993)

The paper describes three fast loading algorithms for grid files on a parallel shared nothing architecture. The algorithms use dynamic programming and sampling to effectively partition the data file among the processors to achieve maximum parallelism in answering range queries. Each processor then constructs in parallel its own portion of the grid file. Analytical results and simulations are given for the three algorithms.
Detecting Moving Objects Using the Rigidity Constraint
Authors: William B. Thompson, Pamela Lechleider, Elizabeth R. Stuck
Venue: IEEE Transactions on Pattern Analysis and Machine Intelligence (1993)

A method for visually detecting moving objects from a moving camera using point correspondences in two orthographic views is described. The method applies a simple structure-from-motion analysis and then identifies those points inconsistent with the interpretation of the scene as a single rigid object. It is effective even when the actual motion parameters cannot be recovered. Demonstrations are presented using point correspondences automatically determined from real image sequences.
Algorithm 714: CELEFUNT: a portable test package for complex elementary functions
Authors: W. J. Cody
Venue: ACM Transactions on Mathematical Software (TOMS) (1993)

This paper discusses CELEFUNT, a pakage of Fortran programs for testing complex elementary functions.
Performance analysis of a synchronous, circuit-switched interconnection cached network
Authors: Vipul Gupta, Eugen Schenfeld
Venue: Proceedings of the 8th international conference on Supercomputing (1994)

In many parallel applications, each computation entity (process, thread etc.) switches the bulk of its communication between a small group of other entities. We call this phenomenon switching locality. The Interconnection Cached Network (ICN) is a reconfigurable network especially suited for exploiting switching locality. It consists of many small, fast crossbars interconnected by a large, slow switching crossbar. The large crossbar is used for topology reconfiguration and the smaller crossbars for circuit switching. For a large class of communication patterns displaying switching locality (this includes meshes, tori, trees, rings, pyramids, etc.), it is possible to choose appropriate ICN configurations and assignments of processes to processors such that all communication paths pass through two or less switching components. Much of the previous work on performance analysis of networks has assumed random, uniformly distributed communication and is inapplicable to many real-life parallel applications that lack this uniformity. We develop a methodology to analyze the performance of synchronous, circuit switched networks under different communication traffic patterns. We employ this methodology to study the performance of the ICN in comparison to more popular reconfigurable networks: the delta and the crossbar. We choose two different communication patterns&mdash;a 2-D torus representing a high degree of switching locality and a fully connected graph representing complete absence of such locality. We show that in the presence of locality, the ICN comes very close to matching the crossbar's performance. This, together with the shorter network cycle period of the ICN, makes it more desirable. In the absence of switching locality, the reconfigurability of the ICN allows for a graceful degradation in performance.
Algorithms for orthogonal drawings (abstract)
Authors: Roberto Tamassia
Venue: ACM SIGACT News (1993)

The Andreev-Thurston circle packing theorem is generalized and improved in three ways. First, to arbitrary maps on closed surfaces. Second, we get the simultaneous circle packing of the map and its dual map so that, in the corresponding straight-line representations of the map and the dual, any two edges dual to each other cross at the right angle. The necessary and sufficient condition for a map to have such a primal-dual circle packing representation is that its universal cover is 3-connected (the map has no "planar" 2-separations). Finally, a polynomial time algorithm is obtained that given a map M and a rational number #949; gt; 0 finds an #949;-approximation for the primal-dual circle packing representation of M. In particular, we get a polynomial time algorithm for geodesic convex representation of reduced maps on arbitrary surfaces.
The undecidability of aliasing
Authors: G. Ramalingam
Venue: ACM Transactions on Programming Languages and Systems (TOPLAS) (1994)

Alias analysis is a prerequisite for performing most of the common program analyses such as reaching-definitions analysis or live-variables analysis. Landi [1992] recently established that it is impossible to compute statically precise alias information&mdash;either may-alias or must-alias&mdash;in languages with if statements, loops, dynamic storage, and recursive data structures: more precisely, he showed that the may-alias relation is not recursive, while the must-alias relation is not even recursively enumerable. This article presents simpler proofs of the same results.
Simplifying the modeling of multiple activities, multiple queuing, and interruptions: a new low-level data structure
Authors: Ruth M. Davies, Robert M. O'Keefe, Huw T. O. Davies
Venue: ACM Transactions on Modeling and Computer Simulation (TOMACS) (1993)

Most conventional discrete-event simulation software assumes a simple progression of entities through queues and activities. Such software cannot cope easily with modeling systems where entities can be present in more than one queue, can be involved in more than one activity (i.e., scheduled for more than one event), or can be interrupted while queuing or taking part in an activity in order to join another queue or take part in a different activity. Low-level data structures to address these problems have been implemented in Pascal by extending an existing suite of Pascal procedures, call Pascal_SIM. The problems and their solutions are discussed in the context of machine breakdown in a production system. Comparisons between the use of the new structures and the existing ones showed some gain in computational efficiency and considerable improvement in ease of modeling. The generality of the data structure is considered.
Impact of mobility on distributed computations
Authors: B. R. Badrinath, Arup Acharya, Tomasz Imieliński
Venue: ACM SIGOPS Operating Systems Review (1993)

The integration of mobile/portable computers within existing static networks introduces a new set of issues to distributed computations. A mobile host can connect to the network from different locations at different times; distributed algorithms therefore, cannot rely on the assumption that a participant maintains a fixed and universally known location in the network at all times. Mobile hosts communicate with the rest of the network via a wireless broadcast medium and portable computers such as laptops and palmtops, often operate in a "disconnected" or "doze" mode to conserve battery power. These unique physical features of a mobile computing environment need to be considered as well, while designing distributed algorithms for such systems.
Translating an AdaPT partition to Ada9X
Authors: S. J. Goldsack, A. A. Holzbacher-Valero, R. Volz, R. Waldrop
Venue: ACM SIGAda Ada Letters (1993)

This paper shows how the concept of Partitions introduced in the work of an earlier workshop [Gargaro 90a] as a possible feature to support the development of secure distributed systems in Ada9x is closely related to the abstract data type packages in the new form of Ada and can benefit from the inheritance features of the new language.It is considered that the close relationship of objects supported in the object-oriented features of the new Ada and the partitions introduced in the earlier work should be exploited in the Ada9x distribution model.
Metadatabase solutions for enterprise information integration problems
Authors: Cheng Hsu, Laurie Rattner
Venue: ACM SIGMIS Database (1993)

The success of modern information technology in the past decades has brought about the proliferation of systems dedicated to individual groups of applications and functions. This proliferation, in turn, has led to the need for enterprise-wide management and integration of information, and has triggered major efforts such as systems integration, re-engineering, and computer integrated manufacturing. Nonetheless, achieving such integration remains a challenge.To effectively manage information resources and to coordinate processing at a global level requires concepts and technologies that overcome the difficult problems arising from, among other things, combining data with knowledge and managing concurrent multi-database systems. The metadatabase approach offers fresh promise to solve some of these fundamental problems. The basic functionalities and architecture of the metadatabase model are described in this paper. Several examples central to information management are also included to illustrate how the metadatabase approach can be deployed to better manage enterprise-wide information resources.
Evaluation methods in visualization: combating the Emperor's new clothes phenomenon
Authors: Deirdre A. McConathy
Venue: ACM SIGBIO Newsletter (1993)

So the Emperor walked in procession under the fine canopy, and all the people in the streets and standing at the windows cried, "Oh, how wonderful the Emperor's new clothes look! What a fine cloak he's wearing over his coat! How well they suit him!" For no one wanted people to think he couldn't see anything. That would have meant he was either stupid or unfit for his job. None of the Emperor's other clothes had ever been so greatly admired. "But the Emperor has no clothes on!" said a child."Listen to the little innocent!" said the child's father.But the people began passing what the child had said on to each other."The emperor has no clothes! The child over there says the Emperor has no clothes on!" Finally all the people were shouting, "The Emperor has no clothes on!" And the Emperor cringed, for he thought in his heart they were right, but he said to himself, "I must hold out until the end of the procession." So he bore himself even more proudly than before, and the chamberlains went on carrying the train that wasn't there at all.
Iterators: signs of weakness in object-oriented languages
Authors: Henry G. Baker
Venue: ACM SIGPLAN OOPS Messenger (1993)

The appearance of iterators in an object-oriented language appears to be inversely related to the power of the language's intrinsic control structures. Iterator classes are used for the sole purpose of enumerating the elements of an abstract collection class without revealing its implementation. We find that the availability of higher-order functions and function closures eliminates the need for these ad hoc iterator classes, in addition to providing the other benefits of "mostly functional programming". We examine a purely functional iteration protocol for the difficult task of comparing the collections of leaves on two non-isomorphic trees---the so-called "samefringe" problem---and find that its type signature requires recursive (cyclic) functional types. Although higher-order "member functions" and recursive (cyclic) functional types are unusual in object-oriented languages, they arise quite naturally and provide a satisfying programming style.
A note on &ldquo;Diagnosabilities of hypercubes under the pessimistic one-step diagnosis strategy&rdquo;
Authors: Dajin Wang
Venue: ACM SIGARCH Computer Architecture News (1993)

We point out an unconsidered case in the proof for Theorem 3 in [4] and provide the proof for that case. To this end, a new property of n-hypercube is observed and made use of.
Shortest paths in the plane with polygonal obstacles
Authors: James A. Storer, John H. Reif
Venue: Journal of the ACM (JACM) (1994)

We present a practical algorithm for finding minimum-length paths between points in the Euclidean plane with (not necessarily convex) polygonal obstacles. Prior to this work, the best known algorithm for finding the shortest path between two points in the plane required &OHgr;(n2 log n) time and O(n2) space, where n denotes the number of obstacle edges. Assuming that a triangulation or a Voronoi diagram for the obstacle space is provided with the input (if is not, either one can be precomputed in O(n log n) time), we present an O(kn) time algorithm, where k denotes the number of &ldquo;islands&rdquo; (connected components) in the obstacle space. The algorithm uses only O(n) space and, given a source point s, produces an O(n) size data structure such that the distance between s and any other point x in the plane (x) is not necessarily an obstacle vertex or a point on an obstacle edge) can be computed in O(1) time. The algorithm can also be used to compute shortest paths for the movement of a disk (so that optimal movement for arbitrary objects can be computed to the accuracy of enclosing them with the smallest possible disk).
Bootstrap: Fine-Tuning Process Assessment
Authors: Volkmar Haase, Richard Messnarz, Günter Koch, Hans Jürgen Kugler, Paul Decrinis
Venue: IEEE Software (1994)

Bootstrap was a project done as part of the European Strategic Program for Research in Information Technology. Its goal was to develop a method for software-process assessment, quantitative measurement, and improvement. In executing that goal, Bootstrap enhanced and refined the Software Engineering Institute's process-assessment method and adapted it to the needs of the European software industry-including nondefense sectors like banking, insurance, and administration. This adaptation provided a method that could be applied to a variety of software-producing units, small to medium software companies or departments that produce software within a large company. Although the Bootstrap project completed in 1993, its attribute-based method for assessing process maturity continues to evolve. The authors describe the elements of the method, how it can be used to determine readiness for ISO 9001 certification, and how it was applied in two instances to substantially improve processes.
Concurrent Error Detection on Programmable Systolic Arrays
Authors: Richard Hughey
Venue: IEEE Transactions on Computers (1993)

Two concurrent error detection (CED) methods are presented. The methods, skewed replicated computation streams and interleaved replicated computation streams, are both well-suited for shared register and other systolic arrays. They allow software tradeoffs between time- and space-multiplexing with no special hardware. The methods can be automatically applied to any systolic program.
Synthesis of real time acceptors
Authors: Amr F. Fahmy, Alan W. Biermann
Venue: Journal of Symbolic Computation (1993)

A real time acceptor A is defined here to be a program that reads a finite sequence of symbols and performs one computational step after each such symbol. At the end of the sequence, the program outputs a single symbol, yes or no, indicating whether or not the input sequence has been accepted. The language accepted by A will be denoted @?(A). This paper is concenred with the problem of automatically constructing real time acceptors given finite subsets of their behaviors. A data structure, D, is defined here as a state machine. The machine can have a finite or infinite number of states. The input alphabet is the set of instructions that can be issued to D. The output alphabet is the set of test values of the states of D. The definition is very natural and provides a graphical representation of data structures. A real time acceptor consists of a pair of state machines; a finite state machine called the control structure, C, and a data structure, D. The behavior graph, B, of an acceptor A will be defined as a state machine that accepts @?(A). B may contain a finite or infinite number of states depending on the language. We prove that @?(B)=@?(M"C" "x" "D where M"C" "." "D is the product machine of C and D. The problem of automatic construction of a real time acceptor over some data structure D given its behavior B, can now be formalized as finding a decomposition of B into C and submachine of the given D. We present an algorithm for identification in the limit of a real time acceptor over any given data structure given an initial portion of its behavior. Several examples of synthesized acceptors are given.
An exploration of the impact of individual and group factors on programmer productivity
Authors: Donald R. Chand, Raghava G. Gowda
Venue: Proceedings of the 1993 ACM conference on Computer science (1993)

This paper reports on an empirical study that explores the impact of individual and group factors on programmer productivity. Programmer productivity is modeled as a function of Individual Characteristics, Group Cohesiveness and Leader Behavior. Individual Characteristics are measured in terms of years of college education, training, and months of experience in a language at the site. Group Cohesiveness is measured in terms of person to group attraction, person to person attraction, and person to leader attraction. Leader Behavior is measured in terms of production emphasis which is the application of pressure for productive output. Programmer productivity is measured in terms of lines of code (LOC), executable lines of code (ELOC), and Halstead's effort. This study found that person to group attraction, person to person attraction, person to leader attraction, years of college education, training, and programmer's experience at the organization do not correlate to productivity measures in a statistically significant way. The implications of these finding are explored.
Experiences using the ParaScope Editor: an interactive parallel programming tool
Authors: Mary W. Hall, Timothy J. Harvey, Ken Kennedy, Nathaniel McIntosh, Kathryn S. McKinley, Jeffrey D. Oldham, Michael H. Paleczny, Gerald Roth
Venue: ACM SIGPLAN Notices (1993)

The ParaScope Editor is an interactive parallel programming tool that assists knowledgeable users in developing scientific Fortran programs. It displays the results of sophisticated program analyses, provides a set of powerful interactive transformations, and supports program editing. This paper summarizes experiences of scientific programmers and tool designers using the ParaScope Editor. We evaluate existing features and describe enhancements in three key areas: user interface, analysis, and transformation. many existing features prove crucial to successful program parallelization. They include interprocedural array side-effect analysis and program and dependence view filtering. Desirable functionality includes improved program navigation based on performance estimation, incorporating user assertions in analysis and more guidance in selecting transformations. These results offer insights for the authors of a variety of programming tools and parallelizing compilers.
A design space for multimodal systems: concurrent processing and data fusion
Authors: Laurence Nigay, Joëlle Coutaz
Venue: Proceedings of the INTERACT '93 and CHI '93 conference on Human factors in computing systems (1993)

Multimodal interaction enables the user to employ different modalities such as voice, gesture and typing for communicating with a computer. This paper presents an analysis of the integration of multiple communication modalities within an interactive system. To do so, a software engineering perspective is adopted. First, the notion of &ldquo;multimodal system&rdquo; is clarified. We aim at proving that two main features of a multimodal system are the concurrency of processing and the fusion of input/output data. On the basis of these two features, we then propose a design space and a method for classifying multimodal systems. In the last section, we present a software architecture model of multimodal systems which supports these two salient properties: concurrency of processing and data fusion. Two multimodal systems developed in our team, VoicePaint and NoteBook, are used to illustrate the discussion.
Coordinating rule-based software processes with ESP
Authors: Paolo Ciancarini
Venue: ACM Transactions on Software Engineering and Methodology (TOSEM) (1993)

ESP is a language for modeling rule-based software processes that take place in a distributed software development environment. It is based on PoliS, an abstract coordination model that relies on Multiple Tuple Spaces, i.e., collections of tuples a la Linda. PoliS extends Linda aiming at the specification and coordination of logically distributed systems. ESP (Extended Shared Prolog) combines the PoliS mechanisms to deal with concurrency and distribution, with the logic-programming language Prolog, to deal with rules and deduction. Such a combination of a coordination model and a logic language provides a powerful framework in which experiments about rule-based software process programming can be performed and evaluated.
Composition based object-oriented software development (COOSD) methodology and supporting tools (abstract)
Authors: Jan Bosch
Venue: ACM SIGPLAN OOPS Messenger (1993)

At the University of Twente, the Netherlands, we have been developing methods and techniques in the area of object oriented analysis and design. Our major contribution is the so-called Composition Based Object Oriented Software Development (COOSD) methodology, which includes methods, computational models, and supporting tools. We have applied this methodology in about 20 pilot studies and we have been organizing tutorials in Europe. The supporting tools, organized in an Integrated CASE tool environment, support the developer both in the analysis and in the design process, whereafter automatic translation of the design, described in a high-level object oriented language, called SINA, to C++ is offered.
The IEEE standard for software maintenance
Authors: Salvatore Mamone
Venue: ACM SIGSOFT Software Engineering Notes (1994)

Maintenance, traditionally the last phase of the Software Life Cycle, is usually overlooked, under documented, and never appreciated. Maintenance is usually thought of as "something that's done after the work is done" and is usually delegated to junior programmers. As a result the modified system can many times contain more defects that the original system.This article will describe the Software Maintenance Standard and how it can provide the foundation for better control of Maintenance.
A history of C++: 1979&ndash;1991
Authors: Bjarne Stroustrup
Venue: The second ACM SIGPLAN conference on History of programming languages (1993)

This paper outlines the history of the C++ programming language. The emphasis is on the ideas, constraints, and people that shaped the language, rather than the minuitiae of language features. Key design decisions relating to language features are discussed, but the focus is on the overall design goals and practical constraints. The evolution of C++ is traced from C with Classes to the current ANSI and ISO standards work and the explosion of use, interest, commercial activity, compilers, tools, environments, and libraries.