Results 1 - 10
of
13
The Fourth Generation Make
- Proc. USENIX Summer Conference
, 1985
"... Make is a program that is widely used to maintain and update programs and libraries on UNIX* systems. This paper introduces the Fourth Generation Make which embodies major semantic and syntactic enhancements to the standard make program. The enhancements include support for source files distributed ..."
Abstract
-
Cited by 18 (4 self)
- Add to MetaCart
Make is a program that is widely used to maintain and update programs and libraries on UNIX* systems. This paper introduces the Fourth Generation Make which embodies major semantic and syntactic enhancements to the standard make program. The enhancements include support for source files distributed among many directories, an efficient shell interface that allows concurrent execution of update commands, dynamic dependency generation, dependencies on conditional compilation symbols and a powerful new meta language for constructing default rules. A complete rewrite of the standard make code has resulted in a unified software construction program that also provides improved functionality and performance. Improved performance includes an average five to ten times decrease in makfile size and an average two to five times decrease in execution time. It is assumed that the reader is familiar with the features and operation of the standard make. 1 INTRODUCTION Since it first appeared in 1976 ...
cql - A Flat File Database Query Language
- In USENIX Winter 1994 Conference
, 1994
"... cql is a UNIX system tool that applies C style query expressions to flat file databases. In some respects it is yet another addition to the toolbox of programmable file filters: grep [Hume88], sh [Bour78][BK89], awk [AKW88], and perl [Wall]. However, by restricting its problem domain, cql takes adv ..."
Abstract
-
Cited by 9 (3 self)
- Add to MetaCart
cql is a UNIX system tool that applies C style query expressions to flat file databases. In some respects it is yet another addition to the toolbox of programmable file filters: grep [Hume88], sh [Bour78][BK89], awk [AKW88], and perl [Wall]. However, by restricting its problem domain, cql takes advantage of optimizations not available to these more general purpose tools. This paper describes the cql data description and query language, query optimizations, and provides comparisons with other tools. 1 Introduction Flat file databases are common in UNIX system environments. They consist of newline terminated records with a single character that delimits fields within each record. Well known examples are /etc/passwd and /etc/group, and more recently the sablime [CF88] MR databases and cia [Chen89] abstraction databases. There are two basic flat file database operations: update -- delete, add or modify records query -- scan for records based on field selection function For the most...
Distributed Shell over Peer-to-Peer Networks
- In Proceeding of the International Conference on Parallel and Distributed Processing Techniques and Applications, pages 269–275, Las Vegas, NV
, 2003
"... Peer-to-Peer (P2P) networking uses a proliferate and powerful paradigm that replaces the traditional client/server communication model with an arbitrary communication model where all hosts or peers are both clients and servers. While P2P is well known for file sharing we developed a P2P system that ..."
Abstract
-
Cited by 7 (4 self)
- Add to MetaCart
Peer-to-Peer (P2P) networking uses a proliferate and powerful paradigm that replaces the traditional client/server communication model with an arbitrary communication model where all hosts or peers are both clients and servers. While P2P is well known for file sharing we developed a P2P system that provides distributed computing. We have developed and currently use a distributed shell over P2P which is a modified version of GNU-Bash that o#ers the user more computational power by transparently distributing commands over the P2P network. This paper presents the shell over P2P architecture and provides techniques we use to obtain I/O redirection and pipes, parametric computations, cross-file system and heterogeneous computing.
The Shell as a Service
- In USENIX Cincinatti 1993 Summer Conference Proceedings
, 1993
"... Abstract This paper explores the design history of the nmake shell coprocess. Originally a special purpose uniprocessor executor, the coshell has evolved into a general purpose service that automatically executes shell actions on lightly loaded hosts in a local network. A major thrust of this work ..."
Abstract
-
Cited by 4 (1 self)
- Add to MetaCart
Abstract This paper explores the design history of the nmake shell coprocess. Originally a special purpose uniprocessor executor, the coshell has evolved into a general purpose service that automatically executes shell actions on lightly loaded hosts in a local network. A major thrust of this work has been ease of use. The only privilege required for installation, administration or use is rsh access to the local hosts. nmake and GNU-make users can take advantage of network execution with no makefile modifications. Shell level access is similar to but more efficient than rsh and allows host expression matching to replace the explicit host name argument. Also provided is a C programming library interface with five primitive operations that follow the forkexec -wait process model. Beside the speedups attained by parallelizing computations in a homogeneous network, coshell also supports heterogeneous configurations. This presents novel solutions to traditional cross-compilation problems...
An Implementation of the Haskell Language
, 1990
"... This report describes the design and implementation of HASKELL system. The areas implemented are the lexical analysis, parsing, intepretation of the lambda tree, and machine code generation. Because of the size, complexity and novelty of the language many of these areas present particular difficulty ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
This report describes the design and implementation of HASKELL system. The areas implemented are the lexical analysis, parsing, intepretation of the lambda tree, and machine code generation. Because of the size, complexity and novelty of the language many of these areas present particular difficulty. A considarable amount of meta-programming was used in order to tackle the size of the project. Contents Introduction v 1 Lexical Analysis 1 1.1 Technical Overview 1 1.2 General Description 3 1.3 The Layout Rule 4 1.4 Alternative Design 5 1.5 Coding for Speed 6 1.5.1 Token Recognition 7 1.5.2 Character Copying 8 1.5.3 Memory Allocation 9 1.5.4 Symbol Table Updates 9 1.5.5 The Ultimate Combination 9 1.5.6 Performance 10 1.6 Testing 10 2 Parsing 11 2.1 Technical Overview 11 2.2 General Description 12 2.3 Handling the Grammar Ambiguities 13 2.3.1 Definable Operators and Function Applications 13 2.3.2 General 15 2.3.3 September Version 15 2.3.4 April Grammar changes 17 2.3.5 April Version 18 ...
Assignment as the Sole Means of Updating Objects
, 1994
"... this paper, no differentiation is made between functions and procedures. All programs are called routines, some of these may return values. ..."
Abstract
- Add to MetaCart
this paper, no differentiation is made between functions and procedures. All programs are called routines, some of these may return values.
A Compiler for the Tcl Language
, 1993
"... Tcl is a highly dynamic language that is especially challenging to execute efficiently. The dual-language nature of the system enforced by the C callback mechanism makes traditional compilation and optimization unrealistic. In addition, the lack of formal data types (and therefore type checking) pla ..."
Abstract
- Add to MetaCart
Tcl is a highly dynamic language that is especially challenging to execute efficiently. The dual-language nature of the system enforced by the C callback mechanism makes traditional compilation and optimization unrealistic. In addition, the lack of formal data types (and therefore type checking) places severe limits on the ability to provide for efficient data storage at compile time. In this paper, we discuss the many issues involved with compiling Tcl, and present a design for such a system, including the mechanism for embedding a Tcl script into the compiler itself in order to provide user extensibility. The current implementation is presented along with results showing approximately ten times the performance of the existing Tcl interpreter. 1 Introduction 1.1 Overview of the Tcl Language Tcl[Ous93] is designed to address the need for a "scripting" language, providing high-level control over a program. The interface between Tcl and the running program consists of the Tcl runtime l...
Wux: Unix Tools under Windows
- In USENIX Conference Proceedings
, 1994
"... Wux is a port of Unix tools to the Microsoft Windows environment. It is based on a library providing a Unixcompatible set of system calls on top of Windows. Unix-derived tools run in parallel, communicating using the Unix pipe abstraction. All processes are run within an application template that gi ..."
Abstract
- Add to MetaCart
Wux is a port of Unix tools to the Microsoft Windows environment. It is based on a library providing a Unixcompatible set of system calls on top of Windows. Unix-derived tools run in parallel, communicating using the Unix pipe abstraction. All processes are run within an application template that gives them basic Windows compatibility such as input and output windows and an icon. The performance of the system is comparable to that of Unix ports to the PC architecture. 1 Motivation The Unix operating system offers a wide variety of tools that can be used as building blocks or autonomous units for application development. Although these and similar tools can be ported to other environments [KP76, Gor93], their usability is often impaired by the lack of the glue elements available under Unix: multitasking and interprocess communication using pipes. Specifically, tool ports to the widely used MS-DOS system have to rely on serialised process execution and pipes implemented using inefficie...
Software---Practice And Experience, Vol. 24(9), 835--870 (september 1994)
"... this paper, no differentiation is made between functions and procedures. All programs are called routines, some of these may return values ..."
Abstract
- Add to MetaCart
this paper, no differentiation is made between functions and procedures. All programs are called routines, some of these may return values

