• Search Research Projects
  • Search Researchers
  • How to Use
  1. Back to previous page

多様な並行オブジェクトモデルをサポートする言語処理系の研究

Research Project

Project/Area Number 09780243
Research Category

Grant-in-Aid for Encouragement of Young Scientists (A)

Allocation TypeSingle-year Grants
Research Field 計算機科学
Research InstitutionThe University of Tokyo

Principal Investigator

増原 英彦  東京大学, 大学院・総合文化研究科, 助手 (40280937)

Project Period (FY) 1997 – 1998
Project Status Completed (Fiscal Year 1998)
Budget Amount *help
¥2,100,000 (Direct Cost: ¥2,100,000)
Fiscal Year 1998: ¥500,000 (Direct Cost: ¥500,000)
Fiscal Year 1997: ¥1,600,000 (Direct Cost: ¥1,600,000)
Keywords自己反映計算(リフレクション) / 部分計算 / 並行オブジェクト / 並列・分散プログラミング / メタレベルプログラミング / 最適化 / メタオブジェクト / ABCL / R3
Research Abstract

本研究の目標は、ネットワーク環境や、ワークステーションクラスタ等を対象とした並列・分散プログラミング言語において見られる、様々な並行オブジェクトのモデルを容易にサポートするような言語処理系の作成であった。
この目標に対し、昨年度までに、自己反映計算(リフレクション)を利用することを提案している。この提案では、オブジェクトの排他制御やメソッド探索といった機能を、メタレベルのプログラムによって与えることで、異なった「並行オブジェクトのモデル」を拡張・変更可能にするというものである。
この提案にもとづき、本年度は、(1)処理系を試作し、(2)その処理系上で実際にメタレベルプログラミングを行って、拡張性を確めることと、(3)それらのプログラムの実行効率を測り、同時に提案している効率的な実行方式の有効性を調べるという研究を行った。
処理系は、東京大学の田浦・大山らが開発した並行オブジェクト指向言語Schematicをベースとして、東京大学の浅井が開発したScheme向け部分計算機を利用したコンパイラを作成した。このコンパイラでは、メタレベルの定義を適切に変換することにより、解釈実行のない効率的なプログラムを生成する。
メタレペルプログラミングに関しては、いくつかの単純なアプリケーションとともに、ガード付きメソッドなどの並行オブジェクトの同期モデルを、メタレベルプログラミングによって提供できることを示した。
また、効率に関しては、部分計算によるコンパイルによって、従来の(拡張性がない)最適化コンパイラによる実行と比べて1.1〜3倍程度のオーバーヘッドしかかからず、これまでのインタプリタによる実行と比べて約6倍の高速化が得られることが示された。

Report

(2 results)
  • 1998 Annual Research Report
  • 1997 Annual Research Report
  • Research Products

    (10 results)

All Other

All Publications (10 results)

  • [Publications] H.Masuhara: "Design and Partial Evaluation of Meta-objects for a Concurrent Reflective Language" Proceedings of European Conference on Object-Oriented Program-ming(ECOOP'98).Lecture Notes in Computer Science. 1445. 418-439 (1998)

    • Related Report
      1998 Annual Research Report
  • [Publications] H.Masuhara: "A Reflective Approach to Support Software Evolution" Proceedings of International Workshop on the Principles of Software Evolution(IWPSE'98). 135-139 (1998)

    • Related Report
      1998 Annual Research Report
  • [Publications] 増原英彦: "Reasoningを容易にする並列自己反映言語のメタオブジェクトの設計" コンピュータソフトウェア. 15(4). 62-66 (1998)

    • Related Report
      1998 Annual Research Report
  • [Publications] Y.Sugita: "On-the-fly Specialization of Reflective Programs Using Dynamic Code Generation Techniques" Proceedings of Workshop on Reflective Programming in C++ and Java. 21-25 (1998)

    • Related Report
      1998 Annual Research Report
  • [Publications] 増原英彦: "Javaバイトコード上での実行時プログラム特化" プログラミングおよび応用のシステムに関するワークショップ予稿集. 発表予定. (1999)

    • Related Report
      1998 Annual Research Report
  • [Publications] H.Masuhara: "An Overview of ABCL/R3: an Object-Oriented Concurrent Reflective Language" Parallel and Distributed Objects(Post-proceedings of OBPDC'97). 発表予定. (1999)

    • Related Report
      1998 Annual Research Report
  • [Publications] Asai,Masuhara, Yonezawa: "Partial Evaluation of Call-by-Ualue lambda-calculus with Side-effects" Proc.of Partial Evaluation and Semantic-Based Program Manipulation. 12-21 (1997)

    • Related Report
      1997 Annual Research Report
  • [Publications] 増原, 米澤: "Reasoningを容易にする並列自己反映言語のメタオブジェクトの設計" 日本ソフトウェア科学会全国大会第14回論文集(「コンピュータソフトウェア」誌掲載予定). 433-436 (1997)

    • Related Report
      1997 Annual Research Report
  • [Publications] Masuhara, Yonezawa: "Reasoning-conscious Meta-object Design of a Reffective Concurrent Language" Proc.et Irtl Workshop on New Models for Softwere Architecture. 42-56 (1997)

    • Related Report
      1997 Annual Research Report
  • [Publications] Masuhara, Yonezawa: "Design and Partial Evaluation of Meta-objects for a Concurrent Reflective Language" Proc.et European Conference on Object-Oriented Programming. (発表予定). (1998)

    • Related Report
      1997 Annual Research Report

URL: 

Published: 1997-04-01   Modified: 2016-04-21  

Information User Guide FAQ News Terms of Use Attribution of KAKENHI

Powered by NII kakenhi