Software Open Access
Griesemer, Robert; Hu, Raymond; Kokke, Wen; Lange, Julien; Taylor, Ian Lance; Toninho, Bernardo; Wadler, Philip; Yoshida, Nobuko
<?xml version='1.0' encoding='utf-8'?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:adms="http://www.w3.org/ns/adms#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dct="http://purl.org/dc/terms/" xmlns:dctype="http://purl.org/dc/dcmitype/" xmlns:dcat="http://www.w3.org/ns/dcat#" xmlns:duv="http://www.w3.org/ns/duv#" xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:frapo="http://purl.org/cerif/frapo/" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:gsp="http://www.opengis.net/ont/geosparql#" xmlns:locn="http://www.w3.org/ns/locn#" xmlns:org="http://www.w3.org/ns/org#" xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:prov="http://www.w3.org/ns/prov#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:schema="http://schema.org/" xmlns:skos="http://www.w3.org/2004/02/skos/core#" xmlns:vcard="http://www.w3.org/2006/vcard/ns#" xmlns:wdrs="http://www.w3.org/2007/05/powder-s#"> <rdf:Description rdf:about="https://doi.org/10.5281/zenodo.4048298"> <rdf:type rdf:resource="http://www.w3.org/ns/dcat#Dataset"/> <dct:type rdf:resource="http://purl.org/dc/dcmitype/Software"/> <dct:identifier rdf:datatype="http://www.w3.org/2001/XMLSchema#anyURI">https://doi.org/10.5281/zenodo.4048298</dct:identifier> <foaf:page rdf:resource="https://doi.org/10.5281/zenodo.4048298"/> <dct:creator> <rdf:Description> <rdf:type rdf:resource="http://xmlns.com/foaf/0.1/Agent"/> <foaf:name>Griesemer, Robert</foaf:name> <foaf:givenName>Robert</foaf:givenName> <foaf:familyName>Griesemer</foaf:familyName> <org:memberOf> <foaf:Organization> <foaf:name>Google</foaf:name> </foaf:Organization> </org:memberOf> </rdf:Description> </dct:creator> <dct:creator> <rdf:Description> <rdf:type rdf:resource="http://xmlns.com/foaf/0.1/Agent"/> <foaf:name>Hu, Raymond</foaf:name> <foaf:givenName>Raymond</foaf:givenName> <foaf:familyName>Hu</foaf:familyName> <org:memberOf> <foaf:Organization> <foaf:name>University of Hertfordshire</foaf:name> </foaf:Organization> </org:memberOf> </rdf:Description> </dct:creator> <dct:creator> <rdf:Description> <rdf:type rdf:resource="http://xmlns.com/foaf/0.1/Agent"/> <foaf:name>Kokke, Wen</foaf:name> <foaf:givenName>Wen</foaf:givenName> <foaf:familyName>Kokke</foaf:familyName> <org:memberOf> <foaf:Organization> <foaf:name>University of Edinburgh</foaf:name> </foaf:Organization> </org:memberOf> </rdf:Description> </dct:creator> <dct:creator> <rdf:Description> <rdf:type rdf:resource="http://xmlns.com/foaf/0.1/Agent"/> <foaf:name>Lange, Julien</foaf:name> <foaf:givenName>Julien</foaf:givenName> <foaf:familyName>Lange</foaf:familyName> <org:memberOf> <foaf:Organization> <foaf:name>Royal Holloway, University of London</foaf:name> </foaf:Organization> </org:memberOf> </rdf:Description> </dct:creator> <dct:creator> <rdf:Description> <rdf:type rdf:resource="http://xmlns.com/foaf/0.1/Agent"/> <foaf:name>Taylor, Ian Lance</foaf:name> <foaf:givenName>Ian Lance</foaf:givenName> <foaf:familyName>Taylor</foaf:familyName> <org:memberOf> <foaf:Organization> <foaf:name>Google</foaf:name> </foaf:Organization> </org:memberOf> </rdf:Description> </dct:creator> <dct:creator> <rdf:Description> <rdf:type rdf:resource="http://xmlns.com/foaf/0.1/Agent"/> <foaf:name>Toninho, Bernardo</foaf:name> <foaf:givenName>Bernardo</foaf:givenName> <foaf:familyName>Toninho</foaf:familyName> <org:memberOf> <foaf:Organization> <foaf:name>Universidade Nova de Lisboa and NOVA-LINCS</foaf:name> </foaf:Organization> </org:memberOf> </rdf:Description> </dct:creator> <dct:creator> <rdf:Description> <rdf:type rdf:resource="http://xmlns.com/foaf/0.1/Agent"/> <foaf:name>Wadler, Philip</foaf:name> <foaf:givenName>Philip</foaf:givenName> <foaf:familyName>Wadler</foaf:familyName> <org:memberOf> <foaf:Organization> <foaf:name>University of Edinburgh</foaf:name> </foaf:Organization> </org:memberOf> </rdf:Description> </dct:creator> <dct:creator> <rdf:Description> <rdf:type rdf:resource="http://xmlns.com/foaf/0.1/Agent"/> <foaf:name>Yoshida, Nobuko</foaf:name> <foaf:givenName>Nobuko</foaf:givenName> <foaf:familyName>Yoshida</foaf:familyName> <org:memberOf> <foaf:Organization> <foaf:name>Imperial College London</foaf:name> </foaf:Organization> </org:memberOf> </rdf:Description> </dct:creator> <dct:title>Featherweight Go (Artifact)</dct:title> <dct:publisher> <foaf:Agent> <foaf:name>Zenodo</foaf:name> </foaf:Agent> </dct:publisher> <dct:issued rdf:datatype="http://www.w3.org/2001/XMLSchema#gYear">2020</dct:issued> <dcat:keyword>Go</dcat:keyword> <dcat:keyword>Generics</dcat:keyword> <dcat:keyword>Monomorphisation</dcat:keyword> <dct:issued rdf:datatype="http://www.w3.org/2001/XMLSchema#date">2020-09-24</dct:issued> <dct:language rdf:resource="http://publications.europa.eu/resource/authority/language/ENG"/> <owl:sameAs rdf:resource="https://zenodo.org/record/4048298"/> <adms:identifier> <adms:Identifier> <skos:notation rdf:datatype="http://www.w3.org/2001/XMLSchema#anyURI">https://zenodo.org/record/4048298</skos:notation> <adms:schemeAgency>url</adms:schemeAgency> </adms:Identifier> </adms:identifier> <dct:isVersionOf rdf:resource="https://doi.org/10.5281/zenodo.4048297"/> <dct:description><p>This paper presents Featherweight Go (FG) and Featherweight Generic Go (FGG), a core calculus of Go and a proposal for extending it with F-bounded polymorphism. The calculi are in the same vein as Featherweight Java (FJ), but where Featherweight Generic Java (FGJ) was translated into FJ via erasure, FGG translates into FG via monomorphization (which is also formalized). The two calculi are proven sound using the normal progress and preservation arguments. Additionally a bisimulation is shown to exist between a FGG program and its monomorphization (if it exists); in other words that monomorphization preserves the semantics of the program.<br> <br> The artifact consists of an implementation of type checkers and interpreters for FG and FGG, as well as a monomorphization procedure (including the check if it is possible). It includes the examples from the paper, and a comparison using the Go compiler as reference. Type preservation and bisimulation for these programs are tested dynamically. Additionally, the same is tested for all well-typed programs up to a certain size (which are generated in a manner similar to property-based testing).</p></dct:description> <dct:accessRights rdf:resource="http://publications.europa.eu/resource/authority/access-right/PUBLIC"/> <dct:accessRights> <dct:RightsStatement rdf:about="info:eu-repo/semantics/openAccess"> <rdfs:label>Open Access</rdfs:label> </dct:RightsStatement> </dct:accessRights> <dcat:distribution> <dcat:Distribution> <dct:license rdf:resource="https://creativecommons.org/licenses/by-nc-nd/4.0/legalcode"/> <dcat:accessURL rdf:resource="https://doi.org/10.5281/zenodo.4048298"/> </dcat:Distribution> </dcat:distribution> <dcat:distribution> <dcat:Distribution> <dcat:accessURL rdf:resource="https://doi.org/10.5281/zenodo.4048298"/> <dcat:byteSize>1225013680</dcat:byteSize> <dcat:downloadURL rdf:resource="https://zenodo.org/record/4048298/files/oopsla20-artifact27.tgz"/> <dcat:mediaType>application/x-tar</dcat:mediaType> </dcat:Distribution> </dcat:distribution> </rdf:Description> </rdf:RDF>
All versions | This version | |
---|---|---|
Views | 195 | 195 |
Downloads | 24 | 24 |
Data volume | 29.4 GB | 29.4 GB |
Unique views | 179 | 179 |
Unique downloads | 23 | 23 |