John Self

Research Project:

My dissertation involved designing a methodology for understanding executions of concurrent programs using techniques combining both trace-based dynamic analysis and static concurrency analysis. To demonstrate my approach I implemented a prototype tool called SADCPU (Static Concurrency Analysis as an aid to Dynamic Concurrent Program Understanding.)

While at UCI I implemented AFLEX, a lexical analyzer generator based on the GNU flex utlity, but written in Ada and generates Ada code. I continue to do some maintenance of this, as well as a corresponding YACC-like parser generation tool called AYACC, that is also written in Ada and generates Ada code.

Current Career

I am a Senior Principal Engineer at BAE SYSTEMS in Rancho Bernardo, CA, near San Diego. I am in software engineering, working with multilanguage programs (mixed Ada and C++), distributed systems (CORBA and RPC), and Graphical User Interfaces (X/Motif.)

I have also been an occasional instructor for the UCI Extension Information Technologies Program , teaching UNIX related courses.

Other Interests:

Bicycling, weights, running, tennis, sailing, skiing, movies.
Department of Information and Computer Science,
University of California, Irvine CA 92717-3425