Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Terrence W. Pratt

dblp:20/3293 · DBLP profile ↗
← Back
14ranked-venue papers
9as first author
0since 2021 · last 1993
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Systems, architecture and hardware · 7 · 2 first-authorTheory of computation · 3 · 3 first-authorSoftware engineering, systems software and programming languages · 2 · 1 first-authorHuman-computer interaction and ubiquitous computing · 2 · 2 first-authorArtificial intelligence and machine learning · 1 · 1 first-authorGraphics, computer vision, multimedia, augmented reality and games · 1 · 1 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Computer architecture, parallel and distributed computing, and storage systems
2 papers
Storage systems · 53% High-performance computing · 16% Performance modeling and evaluation · 16%
Software engineering, system software, and programming languages
4 papers
Programming languages and type systems · 76% Compilers and program optimization · 18% Software testing · 7%

Topics — the 9 heaviest of 11, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Storage systems › file systems › distributed file system
parallel file system
0.011991
Performance Measurement of a Parallel Input/Output System for the Intel iPSC/2 Hypercube · SIGMETRICS 1991
Programming languages and type systems
language design
0.021982
Language Concepts for Distributed Processing of Large Arrays · PODC 1982
Control Computations and the Design of Loop Control Structures · IEEE Trans. Software Eng. 1978
Performance modeling and evaluation
benchmarking
0.011991
Performance Measurement of a Parallel Input/Output System for the Intel iPSC/2 Hypercube · SIGMETRICS 1991
High-performance computing
parallel i/o
0.011991
Performance Measurement of a Parallel Input/Output System for the Intel iPSC/2 Hypercube · SIGMETRICS 1991
Parallel and multicore computing
parallel programming models
0.011982
Language Concepts for Distributed Processing of Large Arrays · PODC 1982
Programming languages and type systems
control structures
0.011978
Control Computations and the Design of Loop Control Structures · IEEE Trans. Software Eng. 1978
Programming languages and type systems
program equivalence
0.011971
Kernel Equivalence of Programs and Proving Kernel Equivalence and Correctness by Test Cases · IJCAI 1971
Software testing
test-based verification
0.011971
Kernel Equivalence of Programs and Proving Kernel Equivalence and Correctness by Test Cases · IJCAI 1971
Compilers and program optimization
compiler construction
0.011978
Control Computations and the Design of Loop Control Structures · IEEE Trans. Software Eng. 1978

Methods — techniques the papers use, named apart from their topics

performance measurement · 0.0ada package · 0.0abstract data types · 0.0program analysis · 0.0pattern identification · 0.0
YearPublicationVenuePosition
1993 Performance Measurement of the Concurrent File System of the Intel iPSC/2 Hypercube
James C. French, Terrence W. Pratt, Mriganka Das
J. Parallel Distributed Comput.2
1991 Performance Measurement of a Parallel Input/Output System for the Intel iPSC/2 Hypercube
abstract
The Intel Concurrent File System (CFS) for the iPSC/2 hypercube is one of the first production file systems to utilize the declustering of large files across numbers of disks to improve I/O performance. The CFS also makes use of dedicated I/O nodes, operating asynchronously, which provide file caching and prefetching. Processing of I/O requests is distributed between the compute node that initiates the request and the I/O nodes that service the request. The effects of the various design decisions in the Intel CFS are difficult to determine without measurements of an actual system. We present performance measurements of the CFS for a hypercube with 32 compute nodes and four I/0 nodes (four disks). Measurement of read/write rates for one compute node to one I/O node, one compute node to multiple I/O nodes, and multiple compute nodes to multiple I/O nodes form the basis for the study. Additional measurements show the effects of different buffer sizes, caching, prefetching, and file preallocation on system performance.
James C. French, Terrence W. Pratt, Mriganka Das
SIGMETRICS2
1990 Upgrading CS1: an alternative to the proposed COCS survey course
abstract
The January 1989 report of the ACM Task Force on the Core of Computer Science (COCS) presents a critique of the traditional computer science introductory curriculum and suggests a radically different alternative: a three-semester survey course of the whole of the field.This paper presents an overview and critique of the COCS report and suggests an alternative vision of how to upgrade the CSI course.The alternative is based on an evolution from the current CSl to a course with more depth and rigor, and with a sense of history, but without broadening the focus beyond the traditional topics of algorithms, data structures, software methodology and a single high-level programming language.A new text serves as an "existence proof" of the viability of the approach.
Terrence W. Pratt
SIGCSE1
1990 Coverability Graphs for a Class of Synchronously Excuted Unbounded Petri Net
P. David Stotts, Terrence W. Pratt
J. Parallel Distributed Comput.2
1988 Teaching programming: a new approach based on analysis skills
abstract
A new approach is described to the teaching of introductory computer programming and computer science (the CS1 course). The approach is based on a new view of what “programming” is fundamentally about. The central feature of the approach is the teaching of skills in program analysis along with the traditional emphasis on skills in program synthesis. The approach was class tested in an earlier version in 1986, and the difficulties encountered in the class test led to two supporting changes in the course content: (1) data structures are introduced at the beginning of the course, and (2) the concept of program state is introduced as a key element in understanding programs.
Terrence W. Pratt
SIGCSE1
1987 The Pisces 2 Parallel Programming Environment
Terrence W. Pratt
ICPP1
1983 The FEM-2 Design Method
Terrence W. Pratt, Loyce M. Adams, Piyush Mehrotra, John Van Rosendale, Robert G. Voigt, Merrell L. Patrick
ICPP1
1982 Kernel-control tailoring of sequential programs for parallel execution
Mark Furtney, Terrence W. Pratt
ICPP2
1982 Language Concepts for Distributed Processing of Large Arrays
abstract
A large array is an array whose storage is distributed among primary and secondary storage and whose processing may be distributed among several tasks in a distributed system. This paper presents a semantic model (set of language concepts) for representing large arrays in a distributed system in such a way that the performance realities inherent in the distributed storage and processing can be adequately represented. An implementation of the large array concept as an ADA package (abstract data type) is described, as well as a particular tailoring of the concept for the NASA Finite Element Machine. An example application program using the package is also described.
Piyush Mehrotra, Terrence W. Pratt
PODC2
1978 Program Analysis and Optimization through Kernel-Control Decomposition
Terrence W. Pratt
Acta Informatica1
1978 Control Computations and the Design of Loop Control Structures
abstract
The control computation for a loop in a program is that part of the program concerned with the initialization, incrementation, and testing of the variables that determine the flow of control into, through, and out of the loop. The elements of loop control computations are idenified and their role in structuring our understanding of loops is analyzed. It is argued, through examples drawn from a Pascal compiler, that the intelligibility of a loop is closely tied to the accessibility and intelligibility of the loop control computation. It is further argued, from an analysis of all the loops in this compiler, that most loop control computations fail in a few standard patterns, mostly concerned with the sequential processing of elements of data structures. In light of these results, common loop control statements are critiqued. It appears that better loop control structures than the while, repeat-until, and similar statement structures are possible and desirable, and some proposals for better structures are given.
Terrence W. Pratt
IEEE Trans. Software Eng.1
1975 Four Models for the Analysis of Optimization of Program Control Structures
abstract
The analysis of the relation between the structure of a program and the function that it computes requires a decomposition of the program into its components. Traditionally this decomposition has been based on the common division of a program into subprograms, and ultimately into statements, expressions and individual variables and constants. In this paper an alternative decomposition is proposed that is based on the decomposition of a program into a set of kernel elements, those program elements that participate in the direct computation of the outputs of the program, and a set of control elements, those elements that participate in the determination of the execution path. The kernel-control decomposition of a program leads to a series of progressively more abstract program representations, each of which has both theoretical and practical interest. The separation of control structure from kernel and the three abstract models presented here, which are based on this decomposition, are particularly valuable in the analysis and optimization of program control structures. This research summary outlines the major results, which will be reported in full in a journal article.
Terrence W. Pratt
STOC1
1971 Kernel Equivalence of Programs and Proving Kernel Equivalence and Correctness by Test Cases
Terrence W. Pratt
IJCAI1
1971 Pair Grammars, Graph Languages and String-to-Graph Translations
Terrence W. Pratt
J. Comput. Syst. Sci.1