<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//TaxonX//DTD Taxonomic Treatment Publishing DTD v0 20100105//EN" "../../nlm/tax-treatment-NS0.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:tp="http://www.plazi.org/taxpub" article-type="research-article" dtd-version="3.0" xml:lang="en">
  <front>
    <journal-meta>
      <journal-id journal-id-type="publisher-id">109</journal-id>
      <journal-id journal-id-type="index">urn:lsid:arphahub.com:pub:3dc5f44e-8666-58db-bc76-a455210e8891</journal-id>
      <journal-title-group>
        <journal-title xml:lang="en">JUCS - Journal of Universal Computer Science</journal-title>
        <abbrev-journal-title xml:lang="en">jucs</abbrev-journal-title>
      </journal-title-group>
      <issn pub-type="ppub">0948-695X</issn>
      <issn pub-type="epub">0948-6968</issn>
      <publisher>
        <publisher-name>Journal of Universal Computer Science</publisher-name>
      </publisher>
    </journal-meta>
    <article-meta>
      <article-id pub-id-type="doi">10.3217/jucs-007-01-0054</article-id>
      <article-id pub-id-type="publisher-id">27764</article-id>
      <article-categories>
        <subj-group subj-group-type="heading">
          <subject>Research Article</subject>
        </subj-group>
        <subj-group subj-group-type="scientific_subject">
          <subject>D.1.1 - Applicative (Functional) Programming</subject>
          <subject>D.1.2 - Automatic Programming</subject>
          <subject>D.2.2 - Design Tools and Techniques</subject>
          <subject>D.2.6 - Programming Environments</subject>
          <subject>F.4.2 - Grammars and Other Rewriting Systems</subject>
        </subj-group>
      </article-categories>
      <title-group>
        <article-title>Declarative Term Graph Attribution for Program Generation</article-title>
      </title-group>
      <contrib-group content-type="authors">
        <contrib contrib-type="author" corresp="yes">
          <name name-style="western">
            <surname>Kahl</surname>
            <given-names>Wolfram</given-names>
          </name>
          <email xlink:type="simple">kahl@informatik.unibw-muenchen.de</email>
          <xref ref-type="aff" rid="A1">1</xref>
        </contrib>
        <contrib contrib-type="author" corresp="no">
          <name name-style="western">
            <surname>Derichsweiler</surname>
            <given-names>Frank</given-names>
          </name>
          <xref ref-type="aff" rid="A1">1</xref>
        </contrib>
      </contrib-group>
      <aff id="A1">
        <label>1</label>
        <addr-line content-type="verbatim">University of the Federal Armed Forces Munich, Munich, Germany</addr-line>
        <institution>University of the Federal Armed Forces Munich</institution>
        <addr-line content-type="city">Munich</addr-line>
        <country>Germany</country>
      </aff>
      <author-notes>
        <fn fn-type="corresp">
          <p>Corresponding author: Wolfram Kahl (<email xlink:type="simple">kahl@informatik.unibw-muenchen.de</email>).</p>
        </fn>
        <fn fn-type="edited-by">
          <p>Academic editor: </p>
        </fn>
      </author-notes>
      <pub-date pub-type="collection">
        <year>2001</year>
      </pub-date>
      <pub-date pub-type="epub">
        <day>28</day>
        <month>01</month>
        <year>2001</year>
      </pub-date>
      <volume>7</volume>
      <issue>1</issue>
      <fpage>54</fpage>
      <lpage>70</lpage>
      <uri content-type="arpha" xlink:href="http://openbiodiv.net/CE4C7418-DBDD-5DC4-B6DC-390BCE3B8B8A">CE4C7418-DBDD-5DC4-B6DC-390BCE3B8B8A</uri>
      <uri content-type="zenodo_dep_id" xlink:href="https://zenodo.org/record/6995935">6995935</uri>
      <permissions>
        <copyright-statement>Wolfram Kahl, Frank Derichsweiler</copyright-statement>
        <license license-type="creative-commons-attribution" xlink:href="" xlink:type="simple">
          <license-p>This article is freely available under the J.UCS Open Content License.</license-p>
        </license>
      </permissions>
      <abstract>
        <label>Abstract</label>
        <p>We show how the declarative spirit of attribute grammars can be employed to define an attribution mechanism for term graphs, where the non-uniqueness of inherited attributes demands an appropriately generalised treatment.  Since term graphs are a useful data structure for symbolic computation systems such as theorem provers or program transformation systems, this mechanism provides a powerful means to generate concrete programs (and other relevant text or data structures) from their abstract term graph representations.  We have implemented this declarative term graph attribution mechanism in the interactive term graph program transformation system HOPS and show a few simple examples of its use.</p>
      </abstract>
    </article-meta>
  </front>
</article>
