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

W. Douglas Maurer

dblp:m/WDMaurer · also Ward Douglas Maurer · DBLP profile ↗
← Back
12ranked-venue papers
11as first author
0since 2021 · last 2010
—ORCID · none

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

Software engineering, systems software and programming languages · 5 · 5 first-authorHuman-computer interaction and ubiquitous computing · 3 · 3 first-authorTheory of computation · 2 · 1 first-authorDatabases, data management, data science and information retrieval · 1 · 1 first-authorApplied, interdisciplinary, general and emerging computing · 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.

Software engineering, system software, and programming languages
1 paper
Program analysis · 38% Software maintenance and evolution · 38% Programming languages and type systems · 12%
Computer architecture, parallel and distributed computing, and storage systems
1 paper
Processor architecture and microarchitecture · 100%

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

TopicWeightPapersLastEvidence papers
Program analysis
control flow analysis
0.112006
The Rearranger - A New Assembler Utility · ASE 2006
Software maintenance and evolution › software reengineering
program restructuring
0.112006
The Rearranger - A New Assembler Utility · ASE 2006
Programming languages and type systems › programming paradigms › imperative languages
assembly language
0.012006
The Rearranger - A New Assembler Utility · ASE 2006
Compilers and program optimization › code layout optimization
code reordering
0.012006
The Rearranger - A New Assembler Utility · ASE 2006
Processor architecture and microarchitecture › instruction set architecture › ISA specification
instruction semantics
0.011966
A Theory of Computer Instructions · J. ACM 1966
Processor architecture and microarchitecture
instruction set architecture
0.011966
A Theory of Computer Instructions · J. ACM 1966
Graph algorithms and graph theory › graph traversal
breadth-first search
0.011966
Realizing Complex Boolean Functions with Simple Groups · Inf. Control. 1966
Combinatorics and discrete mathematics
group theory
0.011966
Realizing Complex Boolean Functions with Simple Groups · Inf. Control. 1966
Automata and formal languages › finite automata
sequential machines
0.011966
A Theory of Computer Instructions · J. ACM 1966

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

graph reordering theorem · 0.1formal modeling · 0.0
YearPublicationVenuePosition
2010 Simple section interchange and properties of non-computable functions
W. Douglas Maurer
Sci. Comput. Program.1
2008 Partially defined computer instructions and guards
W. Douglas Maurer
Sci. Comput. Program.1
2007 Generalized structured programs and loop trees
W. Douglas Maurer
Sci. Comput. Program.1
2006 The Rearranger - A New Assembler Utility
abstract
According to a recently discovered theorem, the flow graph of any program, no matter how much "spaghetti code" it contains, may be reordered in such a way that it shows a loop structure. The rearranged program has no backward branches except for loopbacks, which go to the head of some loop from somewhere within that loop. No new vertices or variables are introduced; only the order of the vertices is changed. Rearrangement may be automated, for either low-level or high-level languages. We have constructed a tool, which we call a Rearranger, to act on a description of an assembly language, followed by a program written in that language. A spaghetti-code version of depth-first search has been programmed for Intel, MPS, G3, Motorola 68000, and the IBM mainframe, and successfully rearranged for all these machines
W. Douglas Maurer
ASE1
2006 A theory of computer instructions
W. Douglas Maurer
Sci. Comput. Program.1
2002 The comparative programming languages course: a new chain of development
abstract
The programming language concepts which ought to be presented in the comparative programming languages course (either graduate or undergraduate) are all covered by choosing C++, Java, Perl, and Python as the languages to be compared. These include dynamic typing, object orientation, multiple inheritance, interpreters and compilers, keyword and default parameters, generics, operator overloading, complex numbers, universal hierarchies, exceptions, and garbage collection. We describe such a course, which we have given.
W. Douglas Maurer
SIGCSE1
1980 Multiple micros for education
abstract
The advent of the microcomputer has caused a profound change in our thinking about the teaching of programming. Up to now we have been assuming that a computer is necessarily expensive and must be shared by all students. With the appearance of time-sharing systems, many universities, including The George Washington University, purchased large numbers of terminals for student use; but students were still using a single large or mid-size computer, albeit through several terminals. It is now possible, however, to purchase an entire computer for the price of a terminal. Such a computer is necessarily limited in scope; but it can serve admirably for the teaching of programming at an elementary level, as well as handling certain more advanced tasks. About a year and a half ago, the Computer Committee of the Department of Electrical Engineering and Computer Science, of which I was the chairman, made a decision to purchase sixteen microcomputer systems for student use, primarily for the teaching of BASIC, and secondarily for assembly language and PASCAL.
W. Douglas Maurer
SIGCSE1
1977 The teaching of program correctness
abstract
For the past seven years, including three years at the University of California (Berkeley) and four years at The George Washington University, this author has taught material relating to the correctness of programs in both undergraduate and graduate courses.
W. Douglas Maurer
SIGCSE-11
1973 The validity of return address schemes
W. Douglas Maurer
Inf. Sci.1
1972 On the Definition of the Variables Used and Set by a Computation
W. Douglas Maurer
Math. Syst. Theory1
1966 Realizing Complex Boolean Functions with Simple Groups
Kenneth Krohn, W. Douglas Maurer, John L. Rhodes 0001
Inf. Control.2
1966 A Theory of Computer Instructions
abstract
A computer is a set M (the memory), a set B , a class of maps S : M → B , known as states, and a class @@@@ of maps T : @@@@ → @@@@, known as instructions. Each instruction I has an input region IR ( I ), an output region OR ( I ), and affected regions AR ( M′ , I ), for M′ ⊆ IR ( I ). For example, let I be the instruction ( CLA Y ) on the IBM 7094. If L is the location counter and AC is the accumulator, then IR ( I ) = Y ∪ L and OR ( I ) = AC ∪ L ; if M′ is the address portion of Y , then AR ( M′ , I ) is the address portion of AC . The fundamental properties of all these notions are derived, and computers are related to other models, such as sequential machines. The existence problem (how arbitrarily the input, output and affected regions of an instruction can be specified) is fully settled for countable memory M .
W. Douglas Maurer
J. ACM1