Abstract
We present the concept of typelets, a specification technique for dynamic graphical user interfaces (GUIs) based on types. The technique is implemented in a dialect of ML, called MLFi, which supports dynamic types, for migrating type-level information into the object level, so-called type properties, allowing easy specification of, for instance, GUI control attributes, and type paths, which allows for type-safe access to type components at runtime. Through the use of Hindley-Milner style type-inference in MLFi, the features allow for type-level programming of user interfaces. The dynamic behavior of typelets are specified using declarative rules. The technique extends the flat spreadsheet programming model with higher-order rule composition techniques, extensive reuse, and type safety. A layout specification language allows layout programmers (e.g., end-users) to reorganize layouts in a type-safe way without being allowed to alter the rule machinery. The resulting framework is highly flexible and allows for creating highly maintainable modules. It is used with success in the context of SimCorp's high-end performance-critical financial asset-management system with screens containing several hundreds of GUI controls located in group-boxes, sub-tabs, and menu structures and with very complex dependency structures defined using declarative rule composition.
Original language | English |
---|---|
Title of host publication | Practical Aspects of Declarative Languages : 16th International Symposium, PADL 2014, San Diego, CA, USA, January 20-21, 2014. Proceedings |
Editors | Matthew Flatt, Hai-Feng Guo |
Number of pages | 16 |
Publisher | Springer |
Publication date | 2014 |
Pages | 184-199 |
ISBN (Print) | 978-3-319-04131-5 |
ISBN (Electronic) | 978-3-319-04132-2 |
DOIs | |
Publication status | Published - 2014 |
Event | 16th International Symposium on Practical Aspects of Declarative Languages - San Diego, United States Duration: 20 Jan 2014 → 21 Jan 2014 Conference number: 16 |
Conference
Conference | 16th International Symposium on Practical Aspects of Declarative Languages |
---|---|
Number | 16 |
Country/Territory | United States |
City | San Diego |
Period | 20/01/2014 → 21/01/2014 |
Series | Lecture notes in computer science |
---|---|
Volume | 8324 |
ISSN | 0302-9743 |
Keywords
- Faculty of Science
- OCaml
- Functional programming
- User interfaces