著者
立堀 道昭 千葉 滋 板野 肯三
出版者
一般社団法人情報処理学会
雑誌
情報処理学会論文誌 (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.

言及状況

Twitter (4 users, 4 posts, 2 favorites)

Cinii国立情報学研究所http://t.co/gZYohyy
OpenJava!これはまた懐かしい…。千葉先生とか当時は筑波大だったんだなあ…。 #java RT @todesking: クラスオブジェクトを用いたJava言語用マクロ処理系 http://ci.nii.ac.jp/naid/110002725503

収集済み URL リスト