Research Projects
This page provides a basic outline of my research activities, student requirements, research assistantships and ongoing projects. For a more in-depth view, please visit the SLDG Homepage. There you will find more information about my research activities and interests.

Software Defined Radio Synthesis

The ReTarget project is developing tools and techniques for synthesizing software defined radios to multiple implementation targets from a single Rosetta specification.

Sponsors: DARPA, Cadstone, ITTC
Rosetta SDR Specifications
Project Website

Composable Interpreters and Semantics

The InterpreterLib project investigates the use of composable interpreters to develop synthesis and analysis tools for complex languages.

Sponsors: ITTC, Cadstone
Project Website

Raskell Commercialization

The Raskell effort is developing tools for authoring, transforming, and verifying specifications.

Sponsors: ITTC, Cadstone
Project Website

Rosetta Language Definition and Semantics

The P1699 Rosetta Working Group is tasked by the IEEE Design Automation Standards Committee with develop a standard for the Rosetta system-level design language.

Sponsors: IEEE DASC, Cadstone, EDAptive
Project Website

Past Research Projects

  • Dance Representation - Internal
  • Heterogeneous Specification Evaluation - NSF
  • Polytypic Theorem Proving - NSF
  • System-Level Network Security - NSF
  • GENISYS - NASA and EDAptive
  • CART - NAVAIR and EDAptive
  • ESSENCE - AFRL
  • eCIS - NASA and EDAptive
  • Systems Level Design Language (SLDL) - AFRL
  • SLDL Mechanical Study - Air Force MANTECH
  • SOCCER - AFRL and EDAptive
  • MoBIES - DARPA
  • Active Nets - DARPA
  • POMMPT - Air Force MANTECH
  • CEENSS - Air Force MANTECH
  • RASSP - DARPA

Products

  • InterpreterLib interpreter development library
  • Rosetta Language Reference Manual
  • Rhaskell Rosetta Parser and Object Model (Haskell)
  • Prufrock Modular Theorem Prover (Haskell)
  • VSPEC Tool Suite (Obscolete)
  • ActiveSPEC and ActiveNodeSPEC (Obscolete)
  • orbit and gravity (Obscolete)
Research Assistantships
As a rule, Research Assistantships on my projects are awarded starting in the Fall Semester. To receive an assistantship, you must first be admitted into the EECS Department as a Master's or PhD student. I will almost always want to have you in at least one class before making any offer. You may apply for an assistantship any time, but offers will not be made officially until after the admissions process is complete and classes have begun. For more details, visit my RA Information Page.

Periodically I have funds available for Undergraduate Research Assistants. If you are interested in formal methods, verification, synthesis, language semantics, language processors and non-traditional programming models, you might be interested in what I do. I usually advise one or two undergraduate honors projects each year. Please contact me directly if you are interested.

The Lambda Group
The Lambda Group is an informal study group where we talk about things related to language semantics and interpreter implementation. Participation in the group is not limited to my laboratory or my students - anyone who wants to actively participate is welcome. The key here is actively participate. You will be asked to read, discuss and present papers to the group. Visit the SLDG Homepage or the Lambda Group Homepage for more information.