<?xml version="1.0" encoding="utf-8"?>
<TEI xmlns="http://www.tei-c.org/ns/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:hal="http://hal.archives-ouvertes.fr/" xmlns:gml="http://www.opengis.net/gml/3.3/" xmlns:gmlce="http://www.opengis.net/gml/3.3/ce" version="1.1" xsi:schemaLocation="http://www.tei-c.org/ns/1.0 http://api.archives-ouvertes.fr/documents/aofr-sword.xsd">
  <teiHeader>
    <fileDesc>
      <titleStmt>
        <title>HAL TEI export of hal-01883524</title>
      </titleStmt>
      <publicationStmt>
        <distributor>CCSD</distributor>
        <availability status="restricted">
          <licence target="https://creativecommons.org/publicdomain/zero/1.0/">CC0 1.0 - Universal</licence>
        </availability>
        <date when="2026-05-17T05:46:01+02:00"/>
      </publicationStmt>
      <sourceDesc>
        <p part="N">HAL API Platform</p>
      </sourceDesc>
    </fileDesc>
  </teiHeader>
  <text>
    <body>
      <listBibl>
        <biblFull>
          <titleStmt>
            <title xml:lang="en">Static interpretation of higher-order modules in Futhark: functional GPU programming in the large</title>
            <author role="aut">
              <persName>
                <forename type="first">Martin</forename>
                <surname>Elsman</surname>
              </persName>
              <idno type="halauthorid">1429527-0</idno>
              <affiliation ref="#struct-265655"/>
            </author>
            <author role="aut">
              <persName>
                <forename type="first">Troels</forename>
                <surname>Henriksen</surname>
              </persName>
              <idno type="halauthorid">368465-0</idno>
              <affiliation ref="#struct-265655"/>
            </author>
            <author role="aut">
              <persName>
                <forename type="first">Danil</forename>
                <surname>Annenkov</surname>
              </persName>
              <email type="md5">3918f728910946f5b1df250eb6779fea</email>
              <email type="domain">gmail.com</email>
              <idno type="idhal" notation="numeric">1036893</idno>
              <idno type="halauthorid" notation="string">1429528-1036893</idno>
              <affiliation ref="#struct-495900"/>
              <affiliation ref="#struct-489559"/>
            </author>
            <author role="aut">
              <persName>
                <forename type="first">Cosmin</forename>
                <surname>Oancea</surname>
              </persName>
              <idno type="halauthorid">1429529-0</idno>
              <affiliation ref="#struct-265655"/>
            </author>
            <editor role="depositor">
              <persName>
                <forename>Danil</forename>
                <surname>Annenkov</surname>
              </persName>
              <email type="md5">3918f728910946f5b1df250eb6779fea</email>
              <email type="domain">gmail.com</email>
            </editor>
            <funder ref="#projeurop-98959"/>
            <funder>Danish Council for Strategic Research (DSF) grant no. 10-092299 (HIPERFIT research center)</funder>
            <funder>CoqHoTT ERC Grant 637339</funder>
          </titleStmt>
          <editionStmt>
            <edition n="v1" type="current">
              <date type="whenSubmitted">2018-10-02 13:44:36</date>
              <date type="whenModified">2026-01-19 16:46:18</date>
              <date type="whenReleased">2018-10-03 09:37:16</date>
              <date type="whenProduced">2018-09-01</date>
              <date type="whenEndEmbargoed">2018-10-02</date>
              <ref type="file" target="https://inria.hal.science/hal-01883524v1/document">
                <date notBefore="2018-10-02"/>
              </ref>
              <ref type="file" subtype="author" n="1" target="https://inria.hal.science/hal-01883524v1/file/ICFP18-modules.pdf" id="file-1885894-1915883">
                <date notBefore="2018-10-02"/>
              </ref>
              <ref type="externalLink" target="http://dl.acm.org/ft_gateway.cfm?id=3236792&amp;type=pdf"/>
            </edition>
            <respStmt>
              <resp>contributor</resp>
              <name key="656365">
                <persName>
                  <forename>Danil</forename>
                  <surname>Annenkov</surname>
                </persName>
                <email type="md5">3918f728910946f5b1df250eb6779fea</email>
                <email type="domain">gmail.com</email>
              </name>
            </respStmt>
          </editionStmt>
          <publicationStmt>
            <distributor>CCSD</distributor>
            <idno type="halId">hal-01883524</idno>
            <idno type="halUri">https://inria.hal.science/hal-01883524</idno>
            <idno type="halBibtex">elsman:hal-01883524</idno>
            <idno type="halRefHtml">&lt;i&gt;Proceedings of the ACM on Programming Languages&lt;/i&gt;, 2018, 2 (ICFP), pp.97:1--97:30. &lt;a target="_blank" href="https://dx.doi.org/10.1145/3236792"&gt;&amp;#x27E8;10.1145/3236792&amp;#x27E9;&lt;/a&gt;</idno>
            <idno type="halRef">Proceedings of the ACM on Programming Languages, 2018, 2 (ICFP), pp.97:1--97:30. &amp;#x27E8;10.1145/3236792&amp;#x27E9;</idno>
            <availability status="restricted">
              <licence target="https://about.hal.science/hal-authorisation-v1/">HAL Authorization<ref corresp="#file-1885894-1915883"/></licence>
            </availability>
          </publicationStmt>
          <seriesStmt>
            <idno type="stamp" n="UNIV-NANTES">Université de Nantes</idno>
            <idno type="stamp" n="CNRS">CNRS - Centre national de la recherche scientifique</idno>
            <idno type="stamp" n="INRIA">INRIA - Institut National de Recherche en Informatique et en Automatique</idno>
            <idno type="stamp" n="EC-NANTES">Ecole Centrale de Nantes</idno>
            <idno type="stamp" n="INRIA-RENNES">INRIA Rennes - Bretagne Atlantique</idno>
            <idno type="stamp" n="OPENAIRE">OpenAIRE</idno>
            <idno type="stamp" n="INRIA_TEST">INRIA - Institut National de Recherche en Informatique et en Automatique</idno>
            <idno type="stamp" n="UNAM">l'unam - université nantes angers le mans</idno>
            <idno type="stamp" n="TESTALAIN1">TESTALAIN1</idno>
            <idno type="stamp" n="INRIA2">INRIA 2</idno>
            <idno type="stamp" n="LS2N">Laboratoire des Sciences du Numérique de Nantes</idno>
            <idno type="stamp" n="LS2N-GALLINETTE" corresp="LS2N">LS2N-GALLINETTE</idno>
            <idno type="stamp" n="LS2N-GALLINETTE-IMTA">Equipe Gallinette</idno>
            <idno type="stamp" n="IMTA_DAPI">IMT Atlantique - Département automatique, productique et informatique</idno>
            <idno type="stamp" n="LS2N-IMTA">LS2N - IMT Atlantique</idno>
            <idno type="stamp" n="INRIA-RENGRE">INRIA-RENGRE</idno>
            <idno type="stamp" n="IMT-ATLANTIQUE" corresp="INSTITUT-MINES-TELECOM">IMT-ATLANTIQUE</idno>
            <idno type="stamp" n="INSTITUTS-TELECOM">composantes instituts telecom </idno>
            <idno type="stamp" n="NANTES-UNIVERSITE">Nantes Université</idno>
            <idno type="stamp" n="UNIV-NANTES-AV2022">Université de Nantes</idno>
            <idno type="stamp" n="NU-CENTRALE">École Centrale de Nantes</idno>
            <idno type="stamp" n="INRIAARTDOI">INRIAARTDOI</idno>
            <idno type="stamp" n="INSTITUT-MINES-TELECOM">Institut Mines Telecom</idno>
          </seriesStmt>
          <notesStmt>
            <note type="audience" n="2">International</note>
            <note type="popular" n="0">No</note>
            <note type="peer" n="1">Yes</note>
          </notesStmt>
          <sourceDesc>
            <biblStruct>
              <analytic>
                <title xml:lang="en">Static interpretation of higher-order modules in Futhark: functional GPU programming in the large</title>
                <author role="aut">
                  <persName>
                    <forename type="first">Martin</forename>
                    <surname>Elsman</surname>
                  </persName>
                  <idno type="halauthorid">1429527-0</idno>
                  <affiliation ref="#struct-265655"/>
                </author>
                <author role="aut">
                  <persName>
                    <forename type="first">Troels</forename>
                    <surname>Henriksen</surname>
                  </persName>
                  <idno type="halauthorid">368465-0</idno>
                  <affiliation ref="#struct-265655"/>
                </author>
                <author role="aut">
                  <persName>
                    <forename type="first">Danil</forename>
                    <surname>Annenkov</surname>
                  </persName>
                  <email type="md5">3918f728910946f5b1df250eb6779fea</email>
                  <email type="domain">gmail.com</email>
                  <idno type="idhal" notation="numeric">1036893</idno>
                  <idno type="halauthorid" notation="string">1429528-1036893</idno>
                  <affiliation ref="#struct-495900"/>
                  <affiliation ref="#struct-489559"/>
                </author>
                <author role="aut">
                  <persName>
                    <forename type="first">Cosmin</forename>
                    <surname>Oancea</surname>
                  </persName>
                  <idno type="halauthorid">1429529-0</idno>
                  <affiliation ref="#struct-265655"/>
                </author>
              </analytic>
              <monogr>
                <idno type="localRef">ACL+</idno>
                <idno type="halJournalId" status="VALID">120491</idno>
                <idno type="issn">2475-1421</idno>
                <title level="j">Proceedings of the ACM on Programming Languages</title>
                <imprint>
                  <publisher>ACM</publisher>
                  <biblScope unit="volume">2</biblScope>
                  <biblScope unit="issue">ICFP</biblScope>
                  <biblScope unit="pp">97:1--97:30</biblScope>
                  <date type="datePub">2018-09-01</date>
                </imprint>
              </monogr>
              <idno type="doi">10.1145/3236792</idno>
              <ref target="https://github.com/melsman/modules" type="seeAlso"/>
            </biblStruct>
          </sourceDesc>
          <profileDesc>
            <langUsage>
              <language ident="en">English</language>
            </langUsage>
            <textClass>
              <keywords scheme="author">
                <term xml:lang="en">Coq formal proof</term>
                <term xml:lang="en">Modules / packages</term>
                <term xml:lang="en">modules</term>
                <term xml:lang="en">compilers</term>
                <term xml:lang="en">functional languages</term>
                <term xml:lang="en">GPGPU</term>
                <term xml:lang="en">Modularity</term>
                <term xml:lang="en">Fomalisation</term>
                <term xml:lang="en">Parallel programming languages</term>
                <term xml:lang="en">Semantics</term>
              </keywords>
              <classCode scheme="https://dl.acm.org/ccs" n="ACM2012.E.1.0.1.6"/>
              <classCode scheme="https://dl.acm.org/ccs" n="ACM2012.E.1.0.0.0"/>
              <classCode scheme="https://dl.acm.org/ccs" n="ACM2012.E.2.3.5"/>
              <classCode scheme="halDomain" n="info">Computer Science [cs]</classCode>
              <classCode scheme="halDomain" n="info.info-pl">Computer Science [cs]/Programming Languages [cs.PL]</classCode>
              <classCode scheme="halTypology" n="ART">Journal articles</classCode>
              <classCode scheme="halOldTypology" n="ART">Journal articles</classCode>
              <classCode scheme="halTreeTypology" n="ART">Journal articles</classCode>
            </textClass>
            <abstract xml:lang="en">
              <p>We present a higher-order module system for the purely functional data-parallel array language Futhark.The module language has the property that it is completely eliminated at compile time, yet it serves asa powerful tool for organizing libraries and complete programs. The presentation includes a static and adynamic semantics for the language in terms of, respectively, a static type system and a provably terminatingelaboration of terms into terms of an underlying target language. The development is formalised in Coqusing a novel encoding of semantic objects based on products, sets, and finite maps. The module languagefeatures a unified treatment of module type abstraction and core language polymorphism and is rich enoughfor expressing practical forms of module composition.</p>
            </abstract>
          </profileDesc>
        </biblFull>
      </listBibl>
    </body>
    <back>
      <listOrg type="structures">
        <org type="laboratory" xml:id="struct-265655" status="VALID">
          <orgName>Department of Computer Science [Copenhagen]</orgName>
          <orgName type="acronym">DIKU</orgName>
          <desc>
            <address>
              <addrLine>Nørre Campus ; Universitetsparken 5 ; DK-2100 Copenhagen Ø</addrLine>
              <country key="DK"/>
            </address>
            <ref type="url">http://www.diku.dk/english/</ref>
          </desc>
          <listRelation>
            <relation active="#struct-579313" type="direct"/>
            <relation active="#struct-460939" type="indirect"/>
          </listRelation>
        </org>
        <org type="researchteam" xml:id="struct-495900" status="OLD">
          <idno type="RNSR">201722488Z</idno>
          <orgName>Gallinette : vers une nouvelle génération d'assistant à la preuve</orgName>
          <orgName type="acronym">LS2N - équipe GALLINETTE</orgName>
          <date type="start">2017-05-01</date>
          <date type="end">2018-04-30</date>
          <desc>
            <address>
              <country key="FR"/>
            </address>
            <ref type="url">https://www.inria.fr/equipes/gallinette</ref>
          </desc>
          <listRelation>
            <relation active="#struct-419153" type="direct"/>
            <relation active="#struct-300009" type="indirect"/>
            <relation active="#struct-473973" type="direct"/>
            <relation active="#struct-97058" type="indirect"/>
            <relation active="#struct-93263" type="indirect"/>
            <relation active="#struct-111023" type="indirect"/>
            <relation name="UMR6004" active="#struct-441569" type="indirect"/>
            <relation active="#struct-481355" type="indirect"/>
            <relation active="#struct-302102" type="indirect"/>
          </listRelation>
        </org>
        <org type="department" xml:id="struct-489559" status="VALID">
          <orgName>Département Automatique, Productique et Informatique</orgName>
          <orgName type="acronym">IMT Atlantique - DAPI</orgName>
          <date type="start">2017-03-21</date>
          <desc>
            <address>
              <addrLine>IMT Atlantique - Campus de Nantes - La Chantrerie - 4, rue Alfred Kastler - CS 20722 - 44307 NANTES Cedex 3</addrLine>
              <country key="FR"/>
            </address>
          </desc>
          <listRelation>
            <relation active="#struct-481355" type="direct"/>
            <relation active="#struct-302102" type="indirect"/>
          </listRelation>
        </org>
        <org type="regrouplaboratory" xml:id="struct-579313" status="VALID">
          <orgName>Faculty of Science [Copenhagen]</orgName>
          <desc>
            <address>
              <addrLine>Bülowsvej 171870 Frederiksberg CCopenhagen</addrLine>
              <country key="DK"/>
            </address>
            <ref type="url">https://www.science.ku.dk/english/</ref>
          </desc>
          <listRelation>
            <relation active="#struct-460939" type="direct"/>
          </listRelation>
        </org>
        <org type="institution" xml:id="struct-460939" status="VALID">
          <idno type="IdRef">026458748</idno>
          <idno type="ROR">https://ror.org/035b05819</idno>
          <orgName>Københavns Universitet = University of Copenhagen = Université de Copenhague</orgName>
          <orgName type="acronym">UCPH</orgName>
          <date type="start">1479-01-01</date>
          <desc>
            <address>
              <addrLine>Nørregade 10, 1165 København, Danemark</addrLine>
              <country key="DK"/>
            </address>
            <ref type="url">http://www.ku.dk</ref>
          </desc>
        </org>
        <org type="laboratory" xml:id="struct-419153" status="VALID">
          <idno type="RNSR">198018249C</idno>
          <idno type="ROR">https://ror.org/04040yw90</idno>
          <orgName>Centre Inria de l'Université de Rennes</orgName>
          <desc>
            <address>
              <addrLine>Campus de beaulieu35042 Rennes cedex</addrLine>
              <country key="FR"/>
            </address>
            <ref type="url">http://www.inria.fr/centre/rennes</ref>
          </desc>
          <listRelation>
            <relation active="#struct-300009" type="direct"/>
          </listRelation>
        </org>
        <org type="institution" xml:id="struct-300009" status="VALID">
          <idno type="ROR">https://ror.org/02kvxyf05</idno>
          <orgName>Institut National de Recherche en Informatique et en Automatique</orgName>
          <orgName type="acronym">Inria</orgName>
          <desc>
            <address>
              <addrLine>Domaine de VoluceauRocquencourt - BP 10578153 Le Chesnay Cedex</addrLine>
              <country key="FR"/>
            </address>
            <ref type="url">http://www.inria.fr/en/</ref>
          </desc>
        </org>
        <org type="laboratory" xml:id="struct-473973" status="OLD">
          <idno type="IdRef">203637585</idno>
          <idno type="RNSR">201722241F</idno>
          <idno type="ROR">https://ror.org/02snf8m58</idno>
          <orgName>Laboratoire des Sciences du Numérique de Nantes</orgName>
          <orgName type="acronym">LS2N</orgName>
          <date type="start">2017-01-01</date>
          <date type="end">2021-12-31</date>
          <desc>
            <address>
              <addrLine>Université de Nantes – faculté des Sciences et Techniques (FST)2 Chemin de la HoussinièreBP 92208, 44322 Nantes Cedex 3</addrLine>
              <country key="FR"/>
            </address>
            <ref type="url">https://www.ls2n.fr</ref>
          </desc>
          <listRelation>
            <relation active="#struct-97058" type="direct"/>
            <relation active="#struct-93263" type="indirect"/>
            <relation active="#struct-111023" type="direct"/>
            <relation name="UMR6004" active="#struct-441569" type="direct"/>
            <relation active="#struct-481355" type="direct"/>
            <relation active="#struct-302102" type="indirect"/>
          </listRelation>
        </org>
        <org type="regrouplaboratory" xml:id="struct-97058" status="OLD">
          <orgName>Université de Nantes - UFR des Sciences et des Techniques</orgName>
          <orgName type="acronym">UN UFR ST</orgName>
          <date type="end">2021-12-31</date>
          <desc>
            <address>
              <addrLine>2, rue de la Houssinière - BP 92208 - 44322 Nantes cedex 3</addrLine>
              <country key="FR"/>
            </address>
            <ref type="url">http://www.sciences-techniques.univ-nantes.fr/</ref>
          </desc>
          <listRelation>
            <relation active="#struct-93263" type="direct"/>
          </listRelation>
        </org>
        <org type="institution" xml:id="struct-93263" status="OLD">
          <idno type="IdRef">026403447</idno>
          <idno type="ROR">https://ror.org/03gnr7b55</idno>
          <orgName>Université de Nantes</orgName>
          <orgName type="acronym">UN</orgName>
          <date type="end">2021-12-31</date>
          <desc>
            <address>
              <addrLine>1, quai de Tourville - BP 13522 - 44035 Nantes cedex 1</addrLine>
              <country key="FR"/>
            </address>
            <ref type="url">http://www.univ-nantes.fr/</ref>
          </desc>
        </org>
        <org type="institution" xml:id="struct-111023" status="OLD">
          <idno type="IdRef">03063525X</idno>
          <idno type="ISNI">0000000122039289</idno>
          <idno type="ROR">https://ror.org/03nh7d505</idno>
          <orgName>École Centrale de Nantes</orgName>
          <orgName type="acronym">ECN</orgName>
          <date type="end">2021-12-31</date>
          <desc>
            <address>
              <addrLine>1 rue de la Noë - BP 92101 - 44321 Nantes cedex 3</addrLine>
              <country key="FR"/>
            </address>
            <ref type="url">http://www.ec-nantes.fr/</ref>
          </desc>
        </org>
        <org type="regroupinstitution" xml:id="struct-441569" status="VALID">
          <idno type="IdRef">02636817X</idno>
          <idno type="ISNI">0000000122597504</idno>
          <idno type="ROR">https://ror.org/02feahw73</idno>
          <orgName>Centre National de la Recherche Scientifique</orgName>
          <orgName type="acronym">CNRS</orgName>
          <date type="start">1939-10-19</date>
          <desc>
            <address>
              <country key="FR"/>
            </address>
            <ref type="url">https://www.cnrs.fr/</ref>
          </desc>
        </org>
        <org type="institution" xml:id="struct-481355" status="VALID">
          <idno type="IdRef">202743233</idno>
          <idno type="ROR">https://ror.org/030hj3061</idno>
          <orgName>IMT Atlantique</orgName>
          <orgName type="acronym">IMT Atlantique</orgName>
          <date type="start">2017-01-01</date>
          <desc>
            <address>
              <addrLine>Campus Brest : Technopôle Brest-Iroise CS 8381829238 BREST Cedex 3 -Campus Nantes : 4, rue Alfred Kastler- La chantrerie 44300 NANTES -Campus Rennes :  2 Rue de la Châtaigneraie, 35510 CESSON SEVIGNE</addrLine>
              <country key="FR"/>
            </address>
            <ref type="url">https://www.imt-atlantique.fr</ref>
          </desc>
          <listRelation>
            <relation active="#struct-302102" type="direct"/>
          </listRelation>
        </org>
        <org type="regroupinstitution" xml:id="struct-302102" status="VALID">
          <idno type="IdRef">192427156</idno>
          <idno type="ISNI">000000012202567X</idno>
          <idno type="ROR">https://ror.org/025vp2923</idno>
          <idno type="Wikidata">Q27962533</idno>
          <orgName>Institut Mines-Télécom [Paris]</orgName>
          <orgName type="acronym">IMT</orgName>
          <date type="start">2012-03-01</date>
          <desc>
            <address>
              <addrLine>19 Place Marguerite Perey, 91120 Palaiseau</addrLine>
              <country key="FR"/>
            </address>
            <ref type="url">https://www.imt.fr/</ref>
          </desc>
        </org>
      </listOrg>
      <listOrg type="projects">
        <org type="europeanProject" xml:id="projeurop-98959" status="VALID">
          <idno type="number">637339</idno>
          <idno type="program">ERC-2014-STG</idno>
          <idno type="call">ERC-2014-STG</idno>
          <orgName>CoqHoTT</orgName>
          <desc>Coq for Homotopy Type Theory</desc>
          <date type="start">2015-06-01</date>
          <date type="end">2021-05-31</date>
        </org>
      </listOrg>
    </back>
  </text>
</TEI>