PROGRAMMING LANGUAGES AND SYSTEMS
School of Computing
National University of Singapore
(Web Page Under Construction)
Programming languages is a central and fundamental topic in computer
science which concerns all aspects to do with programming. The
research in the programming language group includes research into
particular programming languages, fundamental research such as type
systems, program analysis and verification of software, paradigms of
programming, and aspects arising from concurrent, parallel and
distributed programing. There is also overlap with software
engineering - work in formal methods is described in the software
engineering portion of this report.
The research can be classified along the following dimensions:
- Theoretical Foundations: models of concurrency, semantics and logics
of programming languages, etc.
- Functional Programming: extension of type systems, enhancing functional
programming languages, etc.
- Constraint Programming: constraint logic programming (CLP),
algorithms for Constraint Satisfaction Problems (CSP),
scheduling and timetabling algorithms, constraint solving frameworks
and systems, etc.
- Program Analysis and Transformations:
abstract interpretation, reasoning about programs
and partial evaluation.
- Formal Methods: verification, model checking and theorem proving
- Dependable Software:
detection of software vulnerabilities,
systematic construction of dependable software,
specification mining
- Programming paradigms:
Principles and Practice of Aspect Oriented Programming
- Applications of Programming Paradigms: applications of constraint
programming to real-life combinatorial problems such as sports scheduling,
rostering, resource allocation, etc.
- Programming for Web 2.0
Selected Publications
Verification and Program Analysis:
- W-N, Chin, H,H, Nguyen, S.Qin, M. Rinard,
Memory Usage Verification for OO Programs, Intl.
Symposium on Static Analysis (SAS), 2005.
- W-N. Chin, S-C. Khoo, S. Qin, C. Popeea, H.H. Nguyen,
Verifying Safety Policies with Size Properties and
Alias Controls,
ACM International Conf. on Software Engineering (ICSE), 2005.
- J. Jaffar, A.E. Santosa and R. Voicu,
A CLP Method for Compositional and Intermittent Predicate Abstraction,
Intl. Conf. on Verification, Model Checking and Abstract
Interpretation (VMCAI), 2006.
- J. Jaffar, A.E. Santosa and R. Voicu,
Relative Safety,
Intl. Conf. on Verification, Model Checking and Abstract
Interpretation (VMCAI), 2006.
-
T.Q. Huynh and A. Roychoudhury,
A Memory Model Sensitive Checker for C\#,
Intl. Symp. on Formal Methods (FM), 2006.
Type systems:
- W-N. Chin, F. Craciun, S-C. Khoo, C. Popeea, A Flow-Based
Approach for Variant Parametric Types, ACM SIGPLAN Conf. on
Object-Oriented Programming, Systems, Languages, and Applications
(OOPSLA), 2006.
- M. Sulzmann, G. J. Duck, S. Peyton Jones and P. J. Stuckey,
Understanding functional dependencies via constraint handling rules,
Journal of Functional Programming, 17(1), 2007.
- M. Sulzmann, M. M. T. Chakravarty, S. Peyton Jones and
K. Donnelly, System F with type equality coercions, ACM SIGPLAN
Workshop on Types in Language Design and Implementation (TLDI), 2007.
- M. Sulzmann, T. Schrijvers and P. J. Stuckey. Principal type
inference for GHC-style multi-parameter type classes, ASIAN Symp. on
Programming Languages and Systems (APLAS), 2006.
- M. Sulzmann,
Extracting programs from type class proofs, In Proc. of
ACM-SIGPLAN International Symp. on
Principle and Practice of Declarative Programming (PPDP), 2006.
Constraint programming:
- S. Halim, R.H.C. Yap and H.C. Lau,
Viz: A Visual Analysis Suite for Explaining Local Search Behavior,
ACM Symposium on User Interface Software and Technology (UIST), 2006
- S. Brand and R.H.C. Yap,
Propagation = Logic + Control,
Intl. Conf. on Logic Programming (ICLP), 2006
- K.C.K. Cheng and R.H.C. Yap,
Maintaining Generalized Arc Consistency on Ad-hoc $n$-ary Boolean Constraints,
European Conf. on Artificial Intelligence (ECAI), 2006
- Y. Zhang and R. H. C. Yap,
Set Intersection and Consistency in Constraint Networks,
Journal of Artificial Intelligence Research, 27, 2006.
- K.C.K. Cheng and R.H.C. Yap,
Applying Ad-hoc Global Constraints with the case Constraint to Still-Life,
Constraints, 11(2--3), 2006
Faculty Members
See also the Software Engineering area for related faculty members.
Student Members (Incomplete)
Page maintained by Andrew E. Santosa