Kind inference for the FreeST programming language
FreeST is a message-passing concurrent functional programming language where messages are exchanged on channels governed by context-free session types. Thus far, FreeST only distinguishes two kinds of types: arbitrary types and session types. We introduce explicit channel closing operators — close a...
Saved in:
| Published in: | Journal of logical and algebraic methods in programming Vol. 148; p. 101083 |
|---|---|
| Main Authors: | , , |
| Format: | Journal Article |
| Language: | English |
| Published: |
Elsevier Inc
01.01.2026
|
| Subjects: | |
| ISSN: | 2352-2208 |
| Online Access: | Get full text |
| Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
| Summary: | FreeST is a message-passing concurrent functional programming language where messages are exchanged on channels governed by context-free session types. Thus far, FreeST only distinguishes two kinds of types: arbitrary types and session types. We introduce explicit channel closing operators — close and wait — together with their corresponding types — Close and Wait — which call for a third kind of types, that of channel types. Type variable declaration is usually annotated with its kind. We provide a sound and complete algorithm for kind inference and prove that it terminates yielding the most general kind. |
|---|---|
| ISSN: | 2352-2208 |
| DOI: | 10.1016/j.jlamp.2025.101083 |