Experimental Languages Group
Loyola Marymount University
Ray Toal, Director
A working group of Loyola Marymount
University Computer Science
The Experimental Languages Group (xlg) does research and development on
programming language design. Rather than asking questions about design patterns
for solving problems, the group is interested in patterns of
language design and questions about languages themselves, such as:
- Is the language's syntax minimalistic (like Lisp) or sophisticated?
- How are control structures specified? Curly braces, marker ends,
indentation, with a two-dimensional layout, or perhaps graphically?
- Is the text word-oriented or does it make heavy use of symbols and punctuation?
- Is the language extensible? Does it employ macros? Does it allow embeddings of other languages?
- Are advanced control structures, such as concurrency, intrinsic to the language
or does the language sport a small core with most functionality in (external) libraries?
- What kind of paradigms are naturally expressed? Functional, logic, relational, etc.?
Is it easy to mix paradigms?
- Does the language make it easy or hard to create immutable collections?
- Is typing static or dynamic? Strong or weak? Manifest or implicit?
- How are modules, with interfaces and information hiding, supported? Are there
special structures to hold state? Does the language rely on closures?
- Does the language allow introspection? Dynamic compilation? Can pieces of programs
be generated at run time?
In addition to studying, classifying, and suggesting improvements to
existing languages, the group collaborates on the design and implementation
of new research languages.
The group is also looking into alternative methods for specifying syntax
and semantics, novel approaches to compiler generation, machine-assisted
program correctness proofs, and efficient implementations.