ppxscal/embedding_network huggingface dataset:
Efficient construction of program dependence graphs
Authors: Mary Jean Harrold, Brian Malloy, Gregg Rothermel
Venue: ACM SIGSOFT Software Engineering Notes (1993)

We present a new technique for constructing a program dependence graph that contains a program's control flow, along with the usual control and data dependence information. Our algorithm constructs a program dependence graph while the program is being parsed. For programs containing only structured transfers of control, our algorithm does not require information provided by the control flow graph or post dominator tree and therefore obviates the construction of these auxiliary graphs. For programs containing explicit transfers of control, our algorithm adjusts the partial control dependence subgraph, constructed during the parse, to incorporate exact control dependence information. There are several advantages to our approach. For many programs, our algorithm may result in substantial savings in time and memory since our construction of the program dependence graph does not require the auxiliary graph. Furthermore, since we incorporate control and data flow as well as exact control dependence information into the program dependence graph, our graph has a wide range of applicability. We have implemented our algorithm by incorporating it into the Free Software Foundation's GNU C compiler; currently we are performing experiments that compare our technique with the traditional approach.
End-user object-oriented programming by means of an object-oriented interface
Authors: Robert F. Gordon
Venue: ACM SIGPLAN OOPS Messenger (1994)

An object-oriented interface (OOI) provides the capability of object-oriented programming to the end-user (non-programmer). In this paper, we provide an example of an OOI for the specific application area of simulation modeling. We describe how this OOI provides the end-user with the requisite tools for object-oriented programming in this domain. The end-user programs, compiles, runs, and analyzes the results of simulation models by using the objects and functions provided by the interface. We stipulate that the features associated with object-oriented programming (ie., instantiation, information hiding, inheritance, polymorphism, abstract data types, message-passing, and extensibility) are provided to the end-user by this interface and that they are the very features that make the resulting package powerful and easy to use.
Oriented-scenario dynamics in information systems safety: introduction to propagation paths, channels of risk and &ldquo;revulsion momentum&rdquo;
Authors: Daniel Guinier
Venue: ACM SIGSAC Review (1994)

A holistic and dynamic approach is necessary to understand complex systems behaviour, where a single structural approch is too reductionist. Because Information systems present multiple interactions between hardware, software, and users, risk is inside systems, in the form of faults, and outside systems, when exposed to agents, directly or interconnected with networks. Thus, very few systems are completely free of risk; most of them are close to the limit, regarding certain risks.
The Subconstituent Algebra of an Association Scheme, (Part I)
Authors: Paul Terwilliger
Venue: Journal of Algebraic Combinatorics: An International Journal (1992)

We introduce a method for studying commutative association schemes with &ldquo;many&rdquo; vanishing intersection numbers and/or Krein parameters, and apply the method to the P- and Q-polynomial schemes. Let Y denote any commutative association scheme, and fix any vertex x of Y. We introduce a non-commutative, associative, semi-simple \Bbb {C}-algebra T &equals; T(x) whose structure reflects the combinatorial structure of Y. We call T the subconstituent algebra of Y with respect to x. Roughly speaking, T is a combinatorial analog of the centralizer algebra of the stabilizer of x in the automorphism group of Y.In general, the structure of T is not determined by the intersection numbers of Y, but these parameters do give some information. Indeed, we find a relation among the generators of T for each vanishing intersection number or Krein parameter.We identify a class of irreducible T-moduIes whose structure is especially simple, and say the members of this class are thin. Expanding on this, we say Y is thin if every irreducible T(y)-module is thin for every vertex y of Y. We compute the possible thin, irreducible T-modules when Y is P- and Q-polynomial. The ones with sufficiently large dimension are indexed by four bounded integer parameters. If Y is assumed to be thin, then &ldquo;sufficiently large dimension&rdquo; means &ldquo;dimension at least four&rdquo;.We give a combinatorial characterization of the thin P- and Q-polynomial schemes, and supply a number of examples of these objects. For each example, we show which irreducible T-modules actually occur.We close with some conjectures and open problems.
Linda meets Minix
Authors: P. Ciancarini, N. Guerrini
Venue: ACM SIGOPS Operating Systems Review (1993)

Currently large interest is devoted to the development of systems supporting parallel and distributed programming over a network of workstations. We are exploring operating system support for this kind of programming, that instead is usually implemented at the user process level. We have chosen the Linda model as the basis of a programming system for networks of personal computers running Minix, a Unix-like operating system for personal computers.In this paper we shortly describe the Minix operating system and its services for remote communication based on the Amoeba protocol. We have extended Minix with new communication primitives based on Linda; we show their implementation, describing the new system architecture, and compare the new system with other Linda implementations.
CSCW'92 workshop report: understanding and supporting successful group work in software design
Authors: John Karat, John Bennett
Venue: ACM SIGCHI Bulletin (1993)

Fifteen people participated in the one day workshop held at CSCW'92 in Toronto on October 31, 1992. The workshop announcement invited experienced practitioners and reflective researchers to submit short position papers as background for discussion. The focus was on how people doing software design activities in groups can be effectively supported. Our overall objective was to create a dialog within which we could characterize a microcosm of group work that takes place during the complex activity of design. If we could develop some understanding of design aspects, we could then identify different types of support and interventions that might be helpful. In this way each of us as individuals in our subsequent work might increase the probability of outcomes considered successful in terms of both design team results and design team processes.
Full-screen, scrollable APL2 spreadsheet input/output editor
Authors: Peter A. W. Lewis
Venue: ACM SIGAPL APL Quote Quad (1993)

A full-screen, scrollable, spreadsheet-like editor based on IBM's APL2 32-bit interpreter for 386/486-based microcomputers is described. It is used for entering, examining, analyzing, editing and printing data. Mixed numeric and character arrays can be read in from or written out to formatted DOS files (ASCII) or comma-delimited DOS files. Alternatively, a bulk mode input facility allows for rapid direct data entry, or data can be entered, examined and edited cell-by-cell in the usual way. A facility for coding missing values is also provided. No numerical coding of the data is needed. Columns, rows or blocks of data can be highlighted in a chosen color, shadowed, moved or copied. In addition, APL functions entered on the command line can use the blocks as input or output. The full notational and computational power of APL is available. Major-to-minor (lexicographic) sorts can be performed on selected columns, and conditional or unconditional frequency tabulations and cross-tabulations of selected columns can be performed. Output from these statistical calculations is obtained as a new spreadsheet, or equivalently, as an APL2 matrix. In particular, two-way cross-tabulations of multiple columns are laid out in the spreadsheet like draftsmen's plots to facilitate investigation and explanation of multivariate categorical data.
Abstract debugging of higher-order imperative languages
Authors: François Bourdoncle
Venue: Proceedings of the ACM SIGPLAN 1993 conference on Programming language design and implementation (1993)

Abstract interpretation is a formal method that enables the static determination (i.e. at compile-time) of the dynamic properties (i.e. at run-time) of programs. We present an abstract interpretation-based method, called abstract debugging, which enables the static and formal debugging of programs, prior to their execution, by finding the origin of potential bugs as well as necessary conditions for these bugs not to occur at run-time. We show how invariant assertions and intermittent assertions, such as termination, can be used to formally debug programs. Finally, we show how abstract debugging can be effectively and efficiently applied to higher-order imperative programs with exceptions and jumps to non-local labels, and present the Syntox system that enables the abstract debugging of the Pascal language by the determination of the range of the scalar variables of programs.
Linear Operators Preserving Complex Orthogonal Equivalence on Matrices
Authors: Roger A. Horn, Chi-Kwong Li, Dennis I. Merino
Venue: SIAM Journal on Matrix Analysis and Applications (1994)

Two complex matrices $A$ and $B$ are said to be (complex) orthogonally equivalent if there exist (complex) orthogonal matrices $Q_1$ and $Q_2$ such that $A = Q_{1}BQ_{2}$. In this note the authors obtain characterization of linear operators that preserve complex orthogonal equivalence.
The evolution of Forth
Authors: Elizabeth D. Rather, Donald R. Colburn, Charles H. Moore
Venue: ACM SIGPLAN Notices (1993)

Forth is unique among programming languages in that its development and proliferation has been a grass-roots effort unsupported by any major corporate or academic sponsors. Originally conceived and developed by a single individual, its later development progressed under two significant influences: professional programmers who developed tools to solve application problems and then commercialized them, and the interests of hobbyists concerned with free distribution of Forth. These influences have produced a language markedly different from traditional programming languages.
The Dutch national flag problem revisited as an introductory abstract data type
Authors: Kathie A. Yerion
Venue: ACM SIGCSE Bulletin (1994)

In Computer Science 2 or Data Structures courses, a major topic is the concept of an abstract data type (ADT). Students often have difficulty grasping this concept in the beginning because of the abstractness of "a data object with operations performed on the object." [2] An abstract data type based on a robot sorting pebbles gives students much needed concreteness for their initial exposure.
Automating improvements to the quality of your code
Authors: Thomas S. Radi
Venue: ACM SIGAda Ada Letters (1994)

One aspect of code quality is a design (or a set of source code) that contains only things that are relevant to the solution of the problem at hand. There are no redundant or superfluous entities. In a "good" (high quality) design everything has a purpose, and its purpose is clear. Code quality can be improved by eliminating redundant and unnecessary declarations. This paper provides a technique that can help improve code quality. It identifies several anomalies that can exist in source code, provides a means of identifying the anomalies, and suggests methods to eliminate or minimize the impact of the anomalies.
A Weighted Nearest Neighbor Algorithm for Learning with Symbolic Features
Authors: Scott Cost, Steven Salzberg
Venue: Machine Learning (1993)

In the past, nearest neighbor algorithms for learning from examples have worked best in domains in which all features had numeric values. In such domains, the examples can be treated as points and distance metrics can use standard definitions. In symbolic domains, a more sophisticated treatment of the feature space is required. We introduce a nearest neighbor algorithm for learning in domains with symbolic features. Our algorithm calculates distance tables that allow it to produce real-valued distances between instances, and attaches weights to the instances to further modify the structure of feature space. We show that this technique produces excellent classification accuracy on three problems that have been studied by machine learning researchers: predicting protein secondary structure, identifying DNA promoter sequences, and pronouncing English text. Direct experimental comparisons with the other learning algorithms show that our nearest neighbor algorithm is comparable or superior in all three domains. In addition, our algorithm has advantages in training speed, simplicity, and perspicuity. We conclude that experimental evidence favors the use and continued development of nearest neighbor algorithms for domains such as the ones studied here.
Merging application-centric and data-centric approaches to support transaction-oriented multi-system workflows
Authors: Y. Breitbart, A. Deacon, H.-J. Schek, A. Sheth, G. Weikum
Venue: ACM SIGMOD Record (1993)

Workflow management is primarily concerned with dependencies between the tasks of a workflow, to ensure correct control flow and data flow. Transaction management, on the other hand, is concerned with preserving data dependencies by preventing execution of conflicting operations from multiple, concurrently executing tasks or transactions. In this paper we argue that many applications will be served better if the properties of transaction and workflow models are supported by an integrated architecture. We also present preliminary ideas towards such an architecture.
Bonded arity Datalog (≠) queries on graphs
Authors: Foto N. Afrati
Venue: Proceedings of the thirteenth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems (1994)

We show that there are Datalog( &ne; ) queries on graphs (i.e., the extensional database contains a single binary relation) that require recursively defined predicates of arbitrarily large width. More specifically, we prove that fixed subgraph homeomorphism queries require width of recursively defined predicates which is at least equal to the number of arcs in the pattern graph.
Practice makes use: using information technologies before implementation and the effect on acceptance by end users
Authors: William A. Kleintop, Gary Blau, Steven C. Currall
Venue: Proceedings of the 1994 computer personnel research conference on Reinventing IS : managing information technology in changing organizations: managing information technology in changing organizations (1994)

This paper reports the results of a study on the effects of practice, a form of on the job training, on the pre-implementation attitudes and on post-implementation use of an information technology. The successful use of information technologies by end users is dependent on many variables including training of end users. Providing support to workers by training them to use information technologies can have positive effects for the implementation process. Training may directly effect workers' attitudes toward the information technologies making it more likely that they will voluntarily and persistently use the technologies. This research found practice before implementation of an electronic mail system in a business setting to be the best predictor of end users' perceptions that the system was easy to use and useful. The results also showed practice to be the best predictor of actual use of the electronic mail system by end users after its implementation. By providing employees the opportunity to practice skills necessary to use information technologies, managers may be making an investment in training that provides high returns in use of information technologies.
Algorithms for drawing trees (abstract)
Authors: Peter Eades
Venue: ACM SIGACT News (1993)

In several application areas of software engineering intermediate and final products of the design activity are represented by means of diagrams. Diagrams present several advantages over other representations, since they are an aid to clear thinking (a diagram is better that a thousand words). Diagrams are external representations of organization charts, data and function schemas, structure of procedure calls, pieces of code, etc. A diagram is characterized by a meaning (the "piece of reality" it draws), and a syntax, expressed by: a graphic grammar, that defines the types of symbols and connections allowed, aesthetic criteria adopted in drawing the diagram. an underlying diagram model (e.g. hierarchical, planar, connected, etc). In software engineering tools, diagram are manipulated by several functions, such as beautification, modification, refinement, merging of several diagrams, animation, etc. Each one of such functions is characterized by specific algorithms needed for the final activity of diagram drawing. E.g. when we beautify a diagram we are interested to achieve some aesthetic criteria that were previously not respected; when we refine a diagram into a more detailed one, we are interested to maintain monotonicity of shape. Producing incrementally such a library by dynamically tailoring and merging paradigmatic algorithms, results in a new and interesting research area.
The MC88110 implementation of precise exceptions in a superscalar architecture
Authors: Nasr Ullah, Matt Holle
Venue: ACM SIGARCH Computer Architecture News (1993)

This paper describes the precise exception model of the MC88110 symmetric superscalar microprocessor. The MC88110 is a superscalar, pipelined processor that contains multiple exection units and allows out-of order execution of instructions. The MC88110 implements fully precise exceptions and presents the architecturally correct state to an exception handling routine in a manner that minimizes exception response latency. The interrupt latency timings in the MC88110 are described, and several examples of short and long latencies are provided.
Controversies about privacy and open information in CSCW: a panel report from CSCW'92 conference
Authors: Jonathan P. Allen
Venue: ACM SIGCHI Bulletin (1993)

Concerns about the privacy implications of computer-supported cooperative work technologies are on the rise. The celebrated benefits of CSCW technologies often stem from their ability to collect or provide greater access to potentially sensitive information about individual behavior, a fact not lost on CSCW developers and researchers concerned with promoting both systems use and humanistic values. In response to these concerns, the CSCW '92 conference included a day-long workshop on privacy issues in CSCW, organized by Andrew Clement of the University of Toronto, and a plenary panel discussion of privacy and open information issues in CSCW, moderated by Rob Kling of the University of California, Irvine.
Host migration transparency in IP networks: the VIP approach
Authors: Fumio Teraoka, Mario Tokoro
Venue: ACM SIGCOMM Computer Communication Review (1993)

Increasing portability of computers will require users in the future to access the network regardless of location. Host migration transparency will be an essential feature of wide area network environments. We proposed the concept of virtual network and the propagating cache method to achieve host migration transparency [12]. We also established the feasibility of Virtual Internet Protocol (VIP), derived from Internet Protocol (IP), as an example of a virtual network protocol. In this paper, we define VIP in detail and describe how VIP achieves host migration transparency in IP networks. We also show two VIP implementation approaches: 1) VIP as a sublayer; and 2) VIP as an IP option. By modifying an operating systems kernel in each case, we implement VIP using both approaches. We then compare both implementations in terms of overhead, backward compatibility, and other metrics. The measured performance indicates that VIP can provide host migration transparency in IP networks with negligible overhead.
The limits of expert performance using hierarchic marking menus
Authors: Gordon Kurtenbach, William Buxton
Venue: Proceedings of the INTERACT '93 and CHI '93 conference on Human factors in computing systems (1993)

A marking menu allows a user to perform a menu selection by either popping-up a radial (or pie) menu, or by making a straight mark in the direction of the desired menu item without popping-up the menu. A hierarchic marking menu uses hierarchic radial menus and &ldquo;zig-zag&rdquo; marks to select from the hierarchy. This paper experimentally investigates the bounds on how many items can be in each level, and how deep the hierarchy can be, before using a marking to select an item becomes too slow or prone to errors.
Concerning SIGDOC 92: text transformation and the world of multimedia documentation
Authors: Brad Mehlenbacher
Venue: ACM SIGDOC Asterisk Journal of Computer Documentation (1993)

Maes, Goutier, and van der Linden (1992, pp. 175--182) begin their SIGDOC 92 paper with a sentence that, I believe, best captures the spirit of last year's Ottawa conference: "It can confidently be assumed that in the coming decades a growing number of readers will be confronted with a growing number and a growing variety of reading situations in which information is offered online" (p. 175). Focusing on the implications of this assertion, this article reviews the 40 research papers presented at last year's SIGDOC 92 conference sponsored by The Association for Computing Machinery, Northern Telecom and Bell-Northern Research. Also, this overview should act as an introduction to this year's 11th Annual International Conference, SIGDOC 93, for researchers and practitioners unfamiliar with the Special Interest Group on Systems Documentation, its contributors, and their research on how to better produce accurate, complete, and understandable documentation.
A model of I/S partnering relationships
Authors: Robert Klepper
Venue: ACM SIGCPR Computer Personnel (1994)

Outsourcing is becoming a more important way of providing Information System (I/S) services in organizations. Outsourcing relationships between a client and vendor which are long-lasting, involve coordinated client-vendor activity, and investment by both parties are known as partnerships. This paper proposes a model that can be used to analyze the forces that foster partnering arrangements in I/S outsourcing relationships. After it is tested the model will be useful to I/S personnel making outsourcing decisions and managing relationships with outsourcing vendors.
The parallel complexity of simple logic programs
Authors: Foto Afrati, Christos H. Papadimitriou
Venue: Journal of the ACM (JACM) (1993)

We consider logic programs with a single recursive rules, whose right-hand side consists of binary relations forming a chain. We give a complete characterization of all programs of this form that are computable in NC (assuming that P &ne; ). Our proof uses ideas from automata and language theory, and the combinatorics of strings.
A comment on the Eispack machine epsilon routine
Authors: Tim Hopkins, John Slater
Venue: ACM SIGNUM Newsletter (1993)

We analyze the algorithm used to generate the value for the machine epsilon in the Eispack suite of routines and show that it can fail on a binary floating-point system. The comments in the code describing the conditions under which this method will work are not restrictive enough and we provide a replacement set of assumptions. We conclude by suggesting how the algorithm may be modified to overcome most of the shortcomings.