<?xml version='1.0' encoding='UTF-8'?>
<OAI-PMH xmlns="http://www.openarchives.org/OAI/2.0/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.openarchives.org/OAI/2.0/ http://www.openarchives.org/OAI/2.0/OAI-PMH.xsd">
  <responseDate>2026-05-13T03:35:56Z</responseDate>
  <request metadataPrefix="oai_dc" verb="GetRecord" identifier="oai:ipsj.ixsq.nii.ac.jp:00016565">https://ipsj.ixsq.nii.ac.jp/oai</request>
  <GetRecord>
    <record>
      <header>
        <identifier>oai:ipsj.ixsq.nii.ac.jp:00016565</identifier>
        <datestamp>2025-01-22T23:48:00Z</datestamp>
        <setSpec>934:935:949:952</setSpec>
      </header>
      <metadata>
        <oai_dc:dc xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:oai_dc="http://www.openarchives.org/OAI/2.0/oai_dc/" xmlns="http://www.w3.org/2001/XMLSchema" xsi:schemaLocation="http://www.openarchives.org/OAI/2.0/oai_dc/ http://www.openarchives.org/OAI/2.0/oai_dc.xsd">
          <dc:title>A Transformation-Based Implementation of Lightweight Nested Functions</dc:title>
          <dc:title>A Transformation-Based Implementation of Lightweight Nested Functions</dc:title>
          <dc:creator>Tasuku, Hiraishi</dc:creator>
          <dc:creator>Masahiro, Yasugi</dc:creator>
          <dc:creator>Taiichi, Yuasa</dc:creator>
          <dc:creator>Tasuku, Hiraishi</dc:creator>
          <dc:creator>Masahiro, Yasugi</dc:creator>
          <dc:creator>Taiichi, Yuasa</dc:creator>
          <dc:subject>通常論文</dc:subject>
          <dc:description>The SC language system was developed to provide a transformation-based language extension scheme for SC languages (extended/plain C languages with an S-expression-based syntax). Using this system  many flexible extensions to the C language can be implemented by means of transformation rules over S-expressions at low cost  mainly because of the preexisting Common Lisp capabilities for manipulating S-expressions. This paper presents the LW-SC (Lightweight-SC) language as an important application of this system  featuring nested functions (i.e.  functions defined inside other functions). A function can manipulate its caller’s local variables (or local variables of its indirect callers) by indirectly calling a nested function of its callers. Thus  many high-level services with “stack walk” can be easily and elegantly implemented by using LW-SC as an intermediate language. Moreover  such services can be implemented efficiently because we designed and implemented LW-SC to provide “lightweight” nested functions by aggressively reducing the costs of creating and maintaining nested functions. The GNU C compiler also provides nested functions as an extension to C  but our sophisticated translator to standard C is more portable and efficient for occasional“stack walk.”</dc:description>
          <dc:description>The SC language system was developed to provide a transformation-based language extension scheme for SC languages (extended/plain C languages with an S-expression-based syntax). Using this system, many flexible extensions to the C language can be implemented by means of transformation rules over S-expressions at low cost, mainly because of the preexisting Common Lisp capabilities for manipulating S-expressions. This paper presents the LW-SC (Lightweight-SC) language as an important application of this system, featuring nested functions (i.e., functions defined inside other functions). A function can manipulate its caller’s local variables (or local variables of its indirect callers) by indirectly calling a nested function of its callers. Thus, many high-level services with “stack walk” can be easily and elegantly implemented by using LW-SC as an intermediate language. Moreover, such services can be implemented efficiently because we designed and implemented LW-SC to provide “lightweight” nested functions by aggressively reducing the costs of creating and maintaining nested functions. The GNU C compiler also provides nested functions as an extension to C, but our sophisticated translator to standard C is more portable and efficient for occasional“stack walk.”</dc:description>
          <dc:description>journal article</dc:description>
          <dc:publisher>情報処理学会</dc:publisher>
          <dc:date>2006-05-15</dc:date>
          <dc:format>application/pdf</dc:format>
          <dc:identifier>情報処理学会論文誌プログラミング（PRO）</dc:identifier>
          <dc:identifier>SIG6(PRO29)</dc:identifier>
          <dc:identifier>47</dc:identifier>
          <dc:identifier>50</dc:identifier>
          <dc:identifier>67</dc:identifier>
          <dc:identifier>1882-7802</dc:identifier>
          <dc:identifier>AA11464814</dc:identifier>
          <dc:identifier>https://ipsj.ixsq.nii.ac.jp/record/16565/files/IPSJ-TPRO4706006.pdf</dc:identifier>
          <dc:language>eng</dc:language>
        </oai_dc:dc>
      </metadata>
    </record>
  </GetRecord>
</OAI-PMH>
