<?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-14T20:19:47Z</responseDate>
  <request metadataPrefix="oai_dc" verb="GetRecord" identifier="oai:ipsj.ixsq.nii.ac.jp:00016640">https://ipsj.ixsq.nii.ac.jp/oai</request>
  <GetRecord>
    <record>
      <header>
        <identifier>oai:ipsj.ixsq.nii.ac.jp:00016640</identifier>
        <datestamp>2025-01-22T23:45:27Z</datestamp>
        <setSpec>934:935:954:958</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 Case Study of Development of a Java Bytecode Analyzer Framework Using AspectJ</dc:title>
          <dc:title>A Case Study of Development of a Java Bytecode Analyzer Framework Using AspectJ</dc:title>
          <dc:creator>Susumu, Yamazaki</dc:creator>
          <dc:creator>Michihiro, Matsumoto</dc:creator>
          <dc:creator>Tsuneo, Nakanishi</dc:creator>
          <dc:creator>Teruaki, Kitasuka</dc:creator>
          <dc:creator>Akira, Fukuda</dc:creator>
          <dc:creator>Susumu, Yamazaki</dc:creator>
          <dc:creator>Michihiro, Matsumoto</dc:creator>
          <dc:creator>Tsuneo, Nakanishi</dc:creator>
          <dc:creator>Teruaki, Kitasuka</dc:creator>
          <dc:creator>Akira, Fukuda</dc:creator>
          <dc:subject>通常論文</dc:subject>
          <dc:description>Aspect-orientation is a new programming paradigm that can localize a cross-cutting concern in a single module. This paper proposes a new type of Java bytecode analyzer framework based on aspect-orientation. It includes several new design and implementation techniques that are general or specific to the domain of language systems. We also observe that aspectorientation improves extensibility  type safety  execution efficiency  and simplicity of the API  when compared with existing analyzer frameworks based on object-orientation such as Soot. This paper reports the following: structural extension of elementary objects maintaining type safety and execution efficiency; separation of a bytecode parser and concrete instruction sets; a visitor based on the stack-machine model; binary operations that are simple  extensive  and easy to maintain; and separation of nonfunctional concerns such as verification. We also observe that AspectJ currently has two limitations: it is not sufficiently expressive to structure aspects strongly depending on the inner structure; and it does not provide a general approach to write advice that cannot be described with information of its pointcut only.</dc:description>
          <dc:description>Aspect-orientation is a new programming paradigm that can localize a cross-cutting concern in a single module. This paper proposes a new type of Java bytecode analyzer framework based on aspect-orientation. It includes several new design and implementation techniques that are general or specific to the domain of language systems. We also observe that aspectorientation improves extensibility, type safety, execution efficiency, and simplicity of the API, when compared with existing analyzer frameworks based on object-orientation such as Soot. This paper reports the following: structural extension of elementary objects maintaining type safety and execution efficiency; separation of a bytecode parser and concrete instruction sets; a visitor based on the stack-machine model; binary operations that are simple, extensive, and easy to maintain; and separation of nonfunctional concerns such as verification. We also observe that AspectJ currently has two limitations: it is not sufficiently expressive to structure aspects strongly depending on the inner structure; and it does not provide a general approach to write advice that cannot be described with information of its pointcut only.</dc:description>
          <dc:description>journal article</dc:description>
          <dc:publisher>情報処理学会</dc:publisher>
          <dc:date>2005-01-15</dc:date>
          <dc:format>application/pdf</dc:format>
          <dc:identifier>情報処理学会論文誌プログラミング（PRO）</dc:identifier>
          <dc:identifier>SIG1(PRO24)</dc:identifier>
          <dc:identifier>46</dc:identifier>
          <dc:identifier>65</dc:identifier>
          <dc:identifier>77</dc:identifier>
          <dc:identifier>1882-7802</dc:identifier>
          <dc:identifier>AA11464814</dc:identifier>
          <dc:identifier>https://ipsj.ixsq.nii.ac.jp/record/16640/files/IPSJ-TPRO4601008.pdf</dc:identifier>
          <dc:language>eng</dc:language>
        </oai_dc:dc>
      </metadata>
    </record>
  </GetRecord>
</OAI-PMH>
