<?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-00758607</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-18T20:08:30+02:00"/>
      </publicationStmt>
      <sourceDesc>
        <p part="N">HAL API Platform</p>
      </sourceDesc>
    </fileDesc>
  </teiHeader>
  <text>
    <body>
      <listBibl>
        <biblFull>
          <titleStmt>
            <title xml:lang="en">Game Developers Need Lua AiR </title>
            <title xml:lang="en" type="sub">Static Analysis Of Lua Using Interface Models</title>
            <author role="aut">
              <persName>
                <forename type="first">Paul</forename>
                <surname>Klint</surname>
              </persName>
              <idno type="halauthorid">146101-0</idno>
              <affiliation ref="#struct-111222"/>
            </author>
            <author role="aut">
              <persName>
                <forename type="first">Loren</forename>
                <surname>Roosendaal</surname>
              </persName>
              <idno type="halauthorid">675520-0</idno>
              <affiliation ref="#struct-530989"/>
            </author>
            <author role="aut">
              <persName>
                <forename type="first">Riemer</forename>
                <surname>van Rozen</surname>
              </persName>
              <idno type="halauthorid">885338-0</idno>
              <affiliation ref="#struct-111222"/>
            </author>
            <editor role="depositor">
              <persName>
                <forename>Jurgen</forename>
                <surname>Vinju</surname>
              </persName>
              <email type="md5">3aa2584a29286c03fd4a23031c88ca08</email>
              <email type="domain">vinju.org</email>
            </editor>
          </titleStmt>
          <editionStmt>
            <edition n="v1" type="current">
              <date type="whenSubmitted">2017-07-04 18:22:45</date>
              <date type="whenModified">2026-01-11 17:42:17</date>
              <date type="whenReleased">2017-07-04 18:23:56</date>
              <date type="whenProduced">2012-09-26</date>
              <date type="whenEndEmbargoed">2017-07-04</date>
              <ref type="file" target="https://inria.hal.science/hal-00758607v1/document">
                <date notBefore="2017-07-04"/>
              </ref>
              <ref type="file" subtype="author" n="1" target="https://inria.hal.science/hal-00758607v1/file/978-3-642-33542-6_69_Chapter.pdf" id="file-1556242-1608668">
                <date notBefore="2017-07-04"/>
              </ref>
              <ref type="externalLink" target="https://link.springer.com/content/pdf/10.1007%2F978-3-642-33542-6_69.pdf"/>
            </edition>
            <respStmt>
              <resp>contributor</resp>
              <name key="156129">
                <persName>
                  <forename>Jurgen</forename>
                  <surname>Vinju</surname>
                </persName>
                <email type="md5">3aa2584a29286c03fd4a23031c88ca08</email>
                <email type="domain">vinju.org</email>
              </name>
            </respStmt>
          </editionStmt>
          <publicationStmt>
            <distributor>CCSD</distributor>
            <idno type="halId">hal-00758607</idno>
            <idno type="halUri">https://inria.hal.science/hal-00758607</idno>
            <idno type="halBibtex">klint:hal-00758607</idno>
            <idno type="halRefHtml">&lt;i&gt;ICEC 2012 - 11th International Confernece on Entertainment Computing&lt;/i&gt;, Sep 2012, Bremen, Germany. pp.530-535, &lt;a target="_blank" href="https://dx.doi.org/10.1007/978-3-642-33542-6_69"&gt;&amp;#x27E8;10.1007/978-3-642-33542-6_69&amp;#x27E9;&lt;/a&gt;</idno>
            <idno type="halRef">ICEC 2012 - 11th International Confernece on Entertainment Computing, Sep 2012, Bremen, Germany. pp.530-535, &amp;#x27E8;10.1007/978-3-642-33542-6_69&amp;#x27E9;</idno>
            <availability status="restricted">
              <licence target="https://creativecommons.org/licenses/by/4.0/">CC BY 4.0 - Attribution<ref corresp="#file-1556242-1608668"/></licence>
            </availability>
          </publicationStmt>
          <seriesStmt>
            <idno type="stamp" n="INRIA">INRIA - Institut National de Recherche en Informatique et en Automatique</idno>
            <idno type="stamp" n="INRIA-LILLE">INRIA Lille - Nord Europe</idno>
            <idno type="stamp" n="INRIA_TEST">INRIA - Institut National de Recherche en Informatique et en Automatique</idno>
            <idno type="stamp" n="TESTALAIN1">TESTALAIN1</idno>
            <idno type="stamp" n="IFIP-LNCS" corresp="IFIP">IFIP - Lecture Notes in Computer Science</idno>
            <idno type="stamp" n="IFIP">IFIP - International Federation for Information Processing</idno>
            <idno type="stamp" n="INRIA2">INRIA 2</idno>
            <idno type="stamp" n="IFIP-TC" corresp="IFIP">IFIP Technical Committees </idno>
            <idno type="stamp" n="IFIP-ICEC">IFIP-ICEC</idno>
            <idno type="stamp" n="IFIP-TC14">IFIP-TC14</idno>
            <idno type="stamp" n="IFIP-LNCS-7522" corresp="IFIP-LNCS">Entertainment Computing - ICEC 2012</idno>
            <idno type="stamp" n="LUDOSCIENCE">LUDOSCIENCE</idno>
          </seriesStmt>
          <notesStmt>
            <note type="commentary">Part 17: Game Development and Model-Driven Software Development</note>
            <note type="audience" n="2">International</note>
            <note type="invited" n="0">No</note>
            <note type="popular" n="0">No</note>
            <note type="peer" n="1">Yes</note>
            <note type="proceedings" n="1">Yes</note>
          </notesStmt>
          <sourceDesc>
            <biblStruct>
              <analytic>
                <title xml:lang="en">Game Developers Need Lua AiR </title>
                <title xml:lang="en" type="sub">Static Analysis Of Lua Using Interface Models</title>
                <author role="aut">
                  <persName>
                    <forename type="first">Paul</forename>
                    <surname>Klint</surname>
                  </persName>
                  <idno type="halauthorid">146101-0</idno>
                  <affiliation ref="#struct-111222"/>
                </author>
                <author role="aut">
                  <persName>
                    <forename type="first">Loren</forename>
                    <surname>Roosendaal</surname>
                  </persName>
                  <idno type="halauthorid">675520-0</idno>
                  <affiliation ref="#struct-530989"/>
                </author>
                <author role="aut">
                  <persName>
                    <forename type="first">Riemer</forename>
                    <surname>van Rozen</surname>
                  </persName>
                  <idno type="halauthorid">885338-0</idno>
                  <affiliation ref="#struct-111222"/>
                </author>
              </analytic>
              <monogr>
                <title level="m">Lecture Notes in Computer Science</title>
                <meeting>
                  <title>ICEC 2012 - 11th International Confernece on Entertainment Computing</title>
                  <date type="start">2012-09-26</date>
                  <date type="end">2012-11-29</date>
                  <settlement>Bremen</settlement>
                  <country key="DE">Germany</country>
                </meeting>
                <editor>Gerhard Goos</editor>
                <editor>Juris Hartmanis</editor>
                <editor>Jan van Leeuwen</editor>
                <imprint>
                  <publisher>Springer</publisher>
                  <biblScope unit="serie">Entertainment Computing - ICEC 2012</biblScope>
                  <biblScope unit="volume">7522</biblScope>
                  <biblScope unit="pp">530-535</biblScope>
                  <date type="datePub">2012</date>
                </imprint>
              </monogr>
              <idno type="doi">10.1007/978-3-642-33542-6_69</idno>
            </biblStruct>
          </sourceDesc>
          <profileDesc>
            <langUsage>
              <language ident="en">English</language>
            </langUsage>
            <textClass>
              <keywords scheme="author">
                <term xml:lang="en">Control flow graph</term>
                <term xml:lang="en">Script language</term>
                <term xml:lang="en">Game development</term>
                <term xml:lang="en">Game Software</term>
                <term xml:lang="en">Static Program Analysis</term>
                <term xml:lang="en">Lua</term>
                <term xml:lang="en">Abstract syntax tree</term>
                <term xml:lang="en">Call site</term>
              </keywords>
              <classCode scheme="halDomain" n="info.info-cl">Computer Science [cs]/Computation and Language [cs.CL]</classCode>
              <classCode scheme="halTypology" n="COMM">Conference papers</classCode>
              <classCode scheme="halOldTypology" n="COMM">Conference papers</classCode>
              <classCode scheme="halTreeTypology" n="COMM">Conference papers</classCode>
            </textClass>
            <abstract xml:lang="en">
              <p>Game development businesses often choose Lua for separating scripted game logic from reusable engine code. Lua can easily be embedded, has simple interfaces, and offers a powerful and extensible scripting language. Using Lua, developers can create prototypes and scripts at early development stages. However, when larger quantities of engine code and script are available, developers encounter maintainability and quality problems. First, the available automated solutions for interoperability do not take domain-specific optimizations into account. Maintaining a coupling by hand between the Lua interpreter and the engine code, usually in C++, is labour intensive and error-prone. Second, assessing the quality of Lua scripts is hard due to a lack of tools that support static analysis. Lua scripts for dynamic analysis only report warnings and errors at run-time and are limited to code coverage. A common solution to the first problem is developing an Interface Definition Language (IDL) from which "glue code", interoperability code between interfaces, is generated automatically. We address quality problems by proposing a method to complement techniques for Lua analysis. We introduce Lua AiR (Lua Analysis in Rascal), a framework for static analysis of Lua script in its embedded context, using IDL models and Rascal.</p>
            </abstract>
            <particDesc>
              <org type="consortium">TC 14</org>
            </particDesc>
          </profileDesc>
        </biblFull>
      </listBibl>
    </body>
    <back>
      <listOrg type="structures">
        <org type="researchteam" xml:id="struct-111222" status="OLD">
          <idno type="RNSR">200918990G</idno>
          <orgName>Analysis and Transformation based on rEliAble tool coMpositionS</orgName>
          <orgName type="acronym">ATEAMS</orgName>
          <date type="start">2009-07-01</date>
          <date type="end">2015-12-31</date>
          <desc>
            <address>
              <addrLine>Centrum voor Wiskunde en Informatica, Kruislaan 413, 1098 SJ Amsterdam, Netherlands</addrLine>
              <country key="NL"/>
            </address>
            <ref type="url">http://www.inria.fr/equipes/ateams</ref>
          </desc>
          <listRelation>
            <relation active="#struct-104752" type="direct"/>
            <relation active="#struct-300009" type="indirect"/>
            <relation active="#struct-152470" type="direct"/>
          </listRelation>
        </org>
        <org type="institution" xml:id="struct-530989" status="VALID">
          <orgName>IC3D Media</orgName>
          <desc>
            <address>
              <addrLine>Willemstraat 5, 4811 AH Breda</addrLine>
              <country key="NL"/>
            </address>
            <ref type="url">http://ic3dmedia.com/</ref>
          </desc>
        </org>
        <org type="laboratory" xml:id="struct-104752" status="VALID">
          <idno type="RNSR">200818245B</idno>
          <idno type="ROR">https://ror.org/04eej9726</idno>
          <orgName>Centre Inria de l'Université de Lille</orgName>
          <desc>
            <address>
              <addrLine>Parc Scientifique de la Haute Borne 40, avenue Halley Bât.A, Park Plaza 59650 Villeneuve d'Ascq</addrLine>
              <country key="FR"/>
            </address>
            <ref type="url">http://www.inria.fr/lille/</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="institution" xml:id="struct-152470" status="VALID">
          <idno type="ROR">https://ror.org/00x7ekv49</idno>
          <orgName>Centrum Wiskunde &amp; Informatica</orgName>
          <orgName type="acronym">CWI</orgName>
          <desc>
            <address>
              <addrLine>Science Park 123, 1098 XG Amsterdam</addrLine>
              <country key="NL"/>
            </address>
            <ref type="url">http://www.cwi.nl/</ref>
          </desc>
        </org>
      </listOrg>
    </back>
  </text>
</TEI>