 |
Areas of Research Concentration
Research Areas
• Algorithms and Theory
• Augmentative Technology for the Handicapped
• Computer Networks and Distributed Systems
• Computer Science Education
• Computer Security and Information Assurance
• Computer Vision and Information Visualization
• Databases
• High-Performance and Grid Computing, Cyberinfrastructure, and Computational Science
• Knowledge Representation, Computational Linguistics, and Cognitive Science
• Medical Applications and Bioinformatics
• Multimedia Databases and Information Retrieval
• Pattern Recognition, Machine Learning, and Data Mining
• Programming Languages and Software Systems
• VLSI and Computer Architecture
Research Centers, Labs, and Groups Home Pages
• Center for Unified Biometrics and Sensors
• Center of Excellence for Document Analysis and Recognition
• Center of Excellence in Information Systems Assurance Research and Education
• Bioinformatics Research Group
• Database and Multimedia Research Group
• Distributed Systems Research Group
• Knowledge Media Lab
• Laboratory for Advanced Network Design, Evaluation, and Research
• Language Research Group
• Logical Foundations of Databases Research Group
• Multimedia Information Retrieval
• MultiStore Research Group
• Security, Dependability, and Test Design Automation (SPIDER)
• SNePS Research Group
Facilities
• About Facilities
• Labs
• Special-Purpose Computing
• Research Computing
• Faculty/Staff Computing
• Infrastructure
Departmental Technical Reports
• Technical Report Archive
• Technical Reports submission instructions
• CSE Library and Research Resources
|
 |
 |
 |
Programming Languages and Software Systems
The field of programming languages
is concerned with concepts, notations, methodologies, tools, and environments
for the construction of robust, efficient, maintainable, and evolvable
software. Researchers in this field are interested in paradigms such as
object-oriented, concurrent, and declarative programming; domain-specific
languages; distributed and network programming issues; methodologies for
large-scale development of software; and formal foundations (semantics,
analysis, verification, testing, etc.) for all aspects of software engineering
and programming languages.
Faculty
Laboratories and Research
Groups
- Language
Research Group
Director: Bharat Jayaraman
The current focus of the group is on languages that support high-level,
declarative, and visual modeling of complex systems. Research projects
are in the areas of object-oriented modeling, constraint-based design,
interactive program visualization, and domain-specific languages for
applications in engineering and organizational modeling. In previous
research, we have developed the theoretical foundations and experimental
systems for a family of set-oriented programming languages.
The Language Research group is developing
interactive visualization techniques for procedural and object-oriented
programs. Our tools allow the user to visualize clearly the run-time
state of programs with recursion, higher-order functions, dynamic objects,
inheritance, and so forth. A novel feature of the tools is that they
support forward as well as reverse execution. They are a valuable aid
for teaching and visual debugging.
Also in development is a novel object-oriented paradigm, called Constrained
Objects (Cob), for compositional modeling of complex systems, especially
engineering structures such as gears, trusses, and circuits. The environment
provides tools for authoring the classes of constrained objects using
a new variation of UML, called CUML (Constraint-based UML); visual interfaces
that are customized to the application domain, translators for mapping
diagrams into executable Cob programs, and a computational engine featuring
constraint satisfaction, optimization, and relaxation for executing
programs. Together, the modeling and execution tools offer an improved
approach to computer-aided design and simulation.
|
 |
 |
 |

 | Did You Know |
 |
|
 |