著者
立堀 道昭 千葉 滋 板野 肯三
出版者
一般社団法人情報処理学会
雑誌
情報処理学会論文誌 (ISSN:18827764)
巻号頁・発行日
vol.41, no.8, pp.2327-2338, 2000-08-15
被引用文献数
2

本稿では著者らの開発したJava言語のためのマクロ処理系OpenJavaについて述べる.Javaのようなオブジェクト指向言語では,手続きや関数でなく,クラスやメソッドが主要な言語要素となる.このため,従来のようなマクロ処理系では,オブジェクト指向プログラミングで本来必要とされるマクロ展開をうまく記述できない.本稿では,まず,この問題を指摘し,次にOpenJavaがこの問題にどのように対処しているかを述べる.本研究では,従来のマクロ処理系の問題点が,トークン列や構文木を操作の対象としている点に起因すると考え,OpenJavaではクラスオブジェクトというデータ構造を処理の対象として採用した.オブジェクト指向言語に基づく高度なマクロの例として,デザインパターンを用いたプログラミングを支援するマクロをOpenJavaで記述した例を示す.This paper presents OpenJava, which is a macro system the authors have developed for Java.Writing a number of typical macros in object-oriented programming is difficultwith traditional macro systems designed for non object-oriented languages.This is because the primary language constructs of object-oriented languagesuch as Java are not procedures or functions but they are classes and methods.This paper first points out this problem and then shows how OpenJava is addressed to the problem.One of the drawbacks of traditional macro systems is that syntax trees are usedfor representing source programs.For OpenJava, therefore, class objects were chosen instead of syntax trees.As high-level macros for an object-oriented language,this paper shows a few macros in OpenJava which help programming with design patterns.
著者
立堀 道昭 鈴村 豊太郎 小野寺 民也
雑誌
情報処理学会論文誌プログラミング(PRO) (ISSN:18827802)
巻号頁・発行日
vol.2, no.4, pp.1-12, 2009-08-28

ウェブ・アプリケーション開発では,通常 HTML テンプレートを用いてウェブページの表現部を背後にあるビジネスロジックやオブジェクトから分離するのが事実上の標準プログラミングモデルとなりつつある.本稿では,このテンプレートに基づくプログラミングにおける典型的な慣習に着目し,従来の実装形態とは大きく異なる実装を施したサーバ側テンプレート・エンジンである FlyingTemplate について述べる.FlyingTemplate では,既存のウェブ・アプリケーションのテンプレート・エンジンを置き換えることにより,ウェブサーバの負荷を,自動的に,かつ従来の自動分散機構より安全にクライアントに分担させることができる.FlyingTemplate では,HTML 文書をまるまる生成する代わりに,テンプレートのパラメータ値とクライアント側で動作するブートストラップのコードのみを含む骨子文書を生成する.ブートストラップコードはクライアント側用のテンプレート・エンジンとウェブページのテンプレートをそれぞれサーバから取り寄せることにより,ウェブブラウザのキャッシュを有効利用できる.実験として,SPECweb2005 の Banking アプリケーションをそのまま,テンプレート・エンジンのみ FlyingTemplate で置き換えたところ,キャッシュがよく当たるケースでは,1.6 倍から 2 倍のスループット向上がみられた.
著者
木村 大毅 SUBHAJIT Chaudhury SARATHKRISHNA Swaminathan 田中 恒彦 DON Joven Agravante 立堀 道昭 ASIM Munawar ALEXANDER Gray
出版者
一般社団法人 人工知能学会
雑誌
人工知能学会全国大会論文集 第36回 (2022) (ISSN:27587347)
巻号頁・発行日
pp.3Yin256, 2022 (Released:2022-07-11)

近年の深層学習は強化学習など様々な分野へと応用されている.ところが,一般的な深層学習ではニューラルネットワークを基本としているため,大量の学習データを用意する必要があり,異なるドメインへの学習結果の転用ができなく,更には学習後の動作の説明や解析が困難である.そこで,ニューラルネットワークを用いた深層学習と,記号的表現に基づくシンボリックAIを組み合わせたニューロシンボリックAIの活用が期待されている.本稿では,ニューロシンボリックAIを強化学習に応用した手法を提案する.結果として,提案手法は,既存の深層学習のみ手法,及び既存のニューロシンボリックAIに比べて,学習効率が良く,説明可能であることを示した.
著者
千葉 滋 立堀 道昭 佐藤 芳樹 中川 清志
出版者
日本ソフトウェア科学会
雑誌
コンピュータ ソフトウェア (ISSN:02896540)
巻号頁・発行日
vol.21, no.6, pp.427-437, 2004-11-25 (Released:2008-11-30)

リフレクションの研究は,計算モデルが先行したので,当初実装は素朴なものばかりで実用にはならないとされていた.本論文は,素朴な実装では実行時に全て動的におこなっていた処理を,機能に制限を加えつつも,静的におこなえるようにし,実行速度を改善する技術について述べる.我々が開発したこの技術により,C++言語やJava言語のような実行効率が重視される言語でも,リフレクション機能を利用することが可能になった.また本論文は,リフレクションとアスペクト指向プログラミングとの関連を軸に,この分野の研究の今後の展望について,著者らの見解を述べる.
著者
高橋 健一 立堀 道昭 紫合 治
出版者
一般社団法人情報処理学会
雑誌
情報処理学会研究報告ソフトウェア工学(SE) (ISSN:09196072)
巻号頁・発行日
vol.2006, no.35, pp.1-8, 2006-03-23
被引用文献数
1

Webアプリケーションを再利用しWebサービスとして公開することは,開発コストの面からも大変有効である.本論文では,ページ遷移単位のWebサービス変換と,セッション情報のチェーンによるWebアプリケーション変換アーキテクチャを提案する.ページ遷移単位で変換されたWebサービスをBPELのようなフロー記述言語で繋ぐことにより,Webアプリケーションの提供するユースケース単位でのWebサービス公開と,拡張や変更に柔軟に対応可能なWebサービス変換を実現した.さらに,本アーキテクチャを実装したWebサービス変換フレームワーク「H2W」を開発した.最後に,実際に運用されている3種のWebアプリケーションに対して適用し,Webサービス変換に成功した.Developing Web Services from scratch is costly task. Converting Web Applications to Web Services are considered one of the most effective methods for Developing Web Services. This paper describes a framework named H2W that can be used for constructing Web Service Wrappers from existing Web Applications. We propose a page-transition-based decomposition model and page access model with context propagation. We have successfully developed Web Service wrapper applications for three real world Web Applications.