Rex L. Page
School of Computer Science - University of Oklahoma
200 Felgar Street - Room 144
Norman OK 73019-6151
(405)325-5408 - (405)325-4044 Fax
page@ou.edu - http://www.cs.ou.edu/faculty_staff/page.htm
Education
AB, Mathematics, Stanford University, 1966
PhD, Mathematics, University of California, San Diego, 1970
 
Experience
More than two decades in university teaching, research, and administration
    Teaching software engineering, applied logic, programming languages, numerical methods, ...
    Research in software engineering, high performance computing, equation-based programming, ...
 
Eighteen years in industrial software design, development, and supervision
    Software for medical imaging, embedded systems, reservoir engineering, seismic analysis, ...
 
Employment
1999-            School of Computer Science, University of Oklahoma, Norman, Oklahoma, Professor
1999- INDEC Systems, Capitola, California, Consulting Member of Technical Staff
1997-1999 Eclipse International, Mountain View, California, Senior Member of Technical Staff
1994-1997 School of Computer Science, University of Oklahoma, Norman, Oklahoma, Director and Professor
1982-1994 Amoco Production Company, Business Processes Reengineering, Houston (1993-1994), Research Supervisor, Tulsa Research Center (1982-1993)
1988-1992 Department of Mathematical and Computer Sciences, University of Tulsa, Tulsa, Oklahoma, Adjunct Professor
1970-1982 Department of Computer Science, Colorado State University, Fort Collins, Colorado, Professor( 1981-1982), Associate Professor (1975-1981), Assistant Professor (1970-1975)
 
Teaching innovations
Applied Logic for Hardware and Software, use of formal logic in practical verification of correctness properties of digital circuits and software (ripple carry adder, list operations, numeric algorithms, sorting, AVL search trees, ...), course development supported by a three-year grant from the National Science Foundation, results showed a statistically significant, positive effect on student performance in subsequent coursework

Software Engineering I and II, concentrates on software engineering processes, design, and quality, integrates the use of mechanical logic into the practice of software design and implementation, leading to software with correctness properties known to a mathematical certainty, course development supported by a two-year grant from the National Science Foundation, working in collaboration with Matthias Felleisen at Northeastern University, who is supported by a separate, concurrent grant

Mentoring of students
NSF-supported Research Experience for Undergraduates programs involving numerous students in the 2000-2004 time period
 
Computer Science capstone course, 1994-1997, 1999-present, including working with potential employers to help students start careers
 
Faculty advisor for local chapter of ACM, a computer science professional organization, several tours of duty

Faculty advisor for Programming Competition Team, which participates annually in the ACM International Programming Contest, 1994-1997, 2007 (won South Central Region 1996, team then went on to the top-level, international competition)

Advisor for numerous undergraduate honors theses, MS theses, and exchange student projects

Publications
Functional Programming and Theorem Proving for Undergraduates: A Progress Report, Proceedings of the ACM SIGPLAN 2008 Workshop on Functional and Declarative Programming in Education, Victoria, B.C., Canada (Sep 21, 2008) (with Carl Eastlund and Matthias Felleisen) 21-29
 
Engineering software correctness, J. of Functional Programming 17, 6 (November 2007) 675-686
 
ACL2 in DrScheme, Proceedings of the Sixth International Workshop on the ACL2 Theorem Prover and its Applications, Seattle Washington (Aug 15-16, 2006) (with Dale Vaillancourt and Matthias Felleisen) 107-116
 
Discrete Mathematics Using a Computer, Second Edition, Springer, 2006 (with John O'Donnell and Cordelia Hall)
 
Engineering software correctness, Proceedings of the ACM SIGPLAN 2005 Workshop on Functional and Declarative Programming in Education, Tallinn, Estonia (September 25, 2005) 39-46
 
Software is discrete mathematics, Proceedings of the Eighth International Conference on Functional Programming, Uppsala, Sweden (August 25-27, 2003) 79-86
 
Functional programming ... and where you can put it, ACM SIGPLAN Notices 36, 9 (September 2001) 19-24
 
Windows CE for embedded systems, Embedded Systems Conference, Sep 26-30, 1999, San Jose, CA, Miller-Freeman, 1999
 
Modules and Procedure in Fortran 90, Computer Standards and Interfaces 18, 4 (August 1996) 333- 347
 
Special Issue on High Performance Functional Computing (ed.), Scientific Programming 5, 2 (Summer 1996) (with R. Oldehoeft)
 
Experience with a large scientific application in a functional language, Proc. 1993 Conference on Functional Programming Languages and Computer Architecture, Copenhagen, Denmark (June 1993) 3-11 (with B. Moe)
 
Distributed random number generation, J. of Functional Programming 2, 2 (April 1992) 203-212 (with F. Burton)
 
Symbolic Computing with Lisp and Prolog, Wiley, 1988 (with R. A. Mueller)
 
Parallel computation, functional programming, and Fortran 8x, Hypercube Multiprocessors 1986, (Michael T. Heath, ed.) SIAM, 1986, 57-69 (with L. Barasch)
 
Eager evaluation of functional programs and a supporting interconnection structure, Proc. of the Third International Conference on Distributed Computing Systems, Hollywood, Florida (October 1982) (with D. Grit)
 
If-then-else as a concurrency inhibitor in eager-beaver evaluation of recursive programs, Proc. 1981 Conference on Functional Programming Languages and Computer Architecture, Portsmouth, New Hampshire (October 1981) 179-181 (with M. Conant and D. Grit)
 
Deleting irrelevant tasks in an expression-oriented multiprocessor system, ACM Transactions on Programming Languages and Systems 3, 1 (January 1981) 49-59 (with D. Grit)
 
A multiprocessor computer system for parallel evaluation of applicative programs, J. of Digital Systems 4, 2 (Summer, 1980) (with D. Grit)
 
Using BASIC, West Publishing Company, 1981 (second edition, 1984) (with R. L. Didday)
 
Performance of a multiprocessor for applicative programs, Proc. of the International Symposium on Computer Performance Modeling, Measurement, and Evaluation, Toronto, Ontario, 1980 (with D. Grit)
 
Fortran 77 for Humans, West Publishing Company, St Paul, 1980 (second edition, 1983; third edi tion, 1986) (with R. L. Didday)
 
Fortran for Business People, West Publishing Company, St Paul, 1978 (with R. L. Didday, Mark Wayne, and Roger Hayen)
 
A multiprocessor computer system for parallel evaluation of recursive programs, Proc. of the First Annual Rocky Mountain Symposium on Microcomputers (August 1977) 92-160
 
WATFIV for Humans, West Publishing Company, St Paul, 1975 (with R. L. Didday)
 
Fortran for Humans, West Publishing Company, St Paul, 1974 (second edition, 1977; third edition, 1981; fourth edition, 1984) (with R. L. Didday)
 
Remark on algorithm 425: Generation of random correlated normal variables, Communications of the Association for Computing Machinery 17, 6 (June 1974) 325
 
A minimal spanning tree clustering method, Communications of the Association for Computing Machinery 17, 6 (June 1974) 321-323
 
On computing some extremal positive definite functions, Mathematics of Computation 27, 122 (April 1973) 345-353
 
Review of Applied Numerical Methods by Carnahan, Luther and Wilkes. J. Quality Technology, October 1971
 
Research Contracts and Grants
Integrating Mechanized Logic into the Software Engineering Curriculum, National Science Foundation, Principal Investigator, $100,000, 2007-2009 (a collaborative NSF project with Matthias Felleisen, Northeastern University, who is the PI on a separate $100,000 grant with for the same period - the two efforts have an integrated plan of work)
 
Formal Methods Education and Programming Effectiveness, National Science Foundation, ITR Program, Principal Investigator, $200,000, 2000-2003
 
Fellowship Program in Computer Science at the University of Oklahoma, United States Department of Education, Principal Investigator (with S. Lakshmivarahan), $358,000, 1995-1998
 
Influence of System Components on Performance of Distributed Multiprocessor Computer Systems, National Science Foundation, Principal Investigator (with D. Grit), $141,000, 1980-1982
 
Evaluating Speed-up in Parallel Evaluation of Recursive Programs, National Science Foundation, Principal Investigator (with D. Grit), $114,000, 1978-1980
 
Examination a Parallel Processor Compiler for Numerical Analysis Problems and Development of Instructional Programs, Control Data Corporation, Co-investigator, $35,000, 1980-1981
 
Road Design System, USDA Forest Service, Principal Investigator, $106,000, 1978-1981