File Download
Links for fulltext
(May Require Subscription)
- Publisher Website: 10.1017/S0956796824000078
- Scopus: eid_2-s2.0-105003632046
- Find via

Supplementary
-
Citations:
- Scopus: 0
- Appears in Collections:
Article: Type-directed operational semantics for gradual typing
| Title | Type-directed operational semantics for gradual typing |
|---|---|
| Authors | |
| Issue Date | 26-Sep-2024 |
| Publisher | Cambridge University Press |
| Citation | Journal of Functional Programming, 2024, v. 34 How to Cite? |
| Abstract | The semantics of gradually typed languages is typically given indirectly via an elaboration into a cast calculus. This contrasts with more conventional formulations of programming language semantics, where the semantics of a language is given directly using, for instance, an operational semantics. This paper presents a new approach to give the semantics of gradually typed languages directly. We use a recently proposed variant of small-step operational semantics called type-directed operational semantics (TDOS). In a TDOS, type annotations become operationally relevant and can affect the result of a program. In the context of a gradually typed language, type annotations are used to trigger type-based conversions on values. We illustrate how to employ a TDOS on gradually typed languages using two calculi. The first calculus, called λBg, is inspired by the semantics of the blame calculus, but it has implicit type conversions, enabling it to be used as a gradually typed language. The second calculus, called λe, explores an eager semantics for gradually typed languages using a TDOS. For both calculi, type safety is proved. For the λBg calculus, we also present a variant with blame labels and illustrate how the TDOS can also deal with such an important feature of gradually typed languages. We also show that the semantics of λBg with blame labels is sound and complete with respect to the semantics of the blame calculus, and that both calculi come with a gradual guarantee. All the results have been formalized in the Coq theorem prover. |
| Persistent Identifier | http://hdl.handle.net/10722/361915 |
| ISSN | 2023 Impact Factor: 1.1 2023 SCImago Journal Rankings: 0.484 |
| DC Field | Value | Language |
|---|---|---|
| dc.contributor.author | Ye, Wenjia | - |
| dc.contributor.author | Dos Santos Oliveira, Bruno Cesar | - |
| dc.date.accessioned | 2025-09-17T00:32:00Z | - |
| dc.date.available | 2025-09-17T00:32:00Z | - |
| dc.date.issued | 2024-09-26 | - |
| dc.identifier.citation | Journal of Functional Programming, 2024, v. 34 | - |
| dc.identifier.issn | 0956-7968 | - |
| dc.identifier.uri | http://hdl.handle.net/10722/361915 | - |
| dc.description.abstract | The semantics of gradually typed languages is typically given indirectly via an elaboration into a cast calculus. This contrasts with more conventional formulations of programming language semantics, where the semantics of a language is given directly using, for instance, an operational semantics. This paper presents a new approach to give the semantics of gradually typed languages directly. We use a recently proposed variant of small-step operational semantics called type-directed operational semantics (TDOS). In a TDOS, type annotations become operationally relevant and can affect the result of a program. In the context of a gradually typed language, type annotations are used to trigger type-based conversions on values. We illustrate how to employ a TDOS on gradually typed languages using two calculi. The first calculus, called λB<sup>g</sup>, is inspired by the semantics of the blame calculus, but it has implicit type conversions, enabling it to be used as a gradually typed language. The second calculus, called λe, explores an eager semantics for gradually typed languages using a TDOS. For both calculi, type safety is proved. For the λB<sup>g</sup> calculus, we also present a variant with blame labels and illustrate how the TDOS can also deal with such an important feature of gradually typed languages. We also show that the semantics of λB<sup>g</sup> with blame labels is sound and complete with respect to the semantics of the blame calculus, and that both calculi come with a gradual guarantee. All the results have been formalized in the Coq theorem prover. | - |
| dc.language | eng | - |
| dc.publisher | Cambridge University Press | - |
| dc.relation.ispartof | Journal of Functional Programming | - |
| dc.rights | This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. | - |
| dc.title | Type-directed operational semantics for gradual typing | - |
| dc.type | Article | - |
| dc.description.nature | published_or_final_version | - |
| dc.identifier.doi | 10.1017/S0956796824000078 | - |
| dc.identifier.scopus | eid_2-s2.0-105003632046 | - |
| dc.identifier.volume | 34 | - |
| dc.identifier.eissn | 1469-7653 | - |
| dc.identifier.issnl | 0956-7968 | - |
