Year: 2020
Type: preprint
Abstract: We describe a design for generics in Go inspired by previous work on Featherweight Java by Igarashi, Pierce, and Wadler. Whereas subtyping in Java is nominal, in Go it is structural, and whereas generics in Java are defined via erasure, in Go we use monomorphisation. Although monomorphisation is widely used, we are one of the first to formalise it. Our design also supports a solution to The Expression Problem.
Source: arXiv (Cornell University)
Language: English
Subfield: Artificial Intelligence
Field: Computer Science
Domain: Physical Sciences
Open Access status: green
Awards: From Data Types to Session Types---A Basis for Concurrency and Distribution, Conversation-Based Governance for Distributed Systems by Multiparty Session Types, Turtles: Protocol-Based Foundations for Distributed Multiagent Systems, Session Types for Reliable Distributed Systems (STARDUST), Border Patrol: Improving Smart Device Security through Type-Aware Systems Design, G6348741101, Exploiting Parallelism through Type Transformations for Hybrid Manycore Systems, POST: Protocols, Observabilities and Session Types, AppControl: Enforcing Application Behaviour through Type-Based Constraints, NOVA Laboratory for Computer Science and Informatics
OpenAlex ID: W4298089507
