WEKO3
アイテム
Weak Consを用いたマクロ再定義時の自動再コンパイル
https://ipsj.ixsq.nii.ac.jp/records/13905
https://ipsj.ixsq.nii.ac.jp/records/13905f649fe80-caf4-4f0a-a56b-f6556cb36031
| 名前 / ファイル | ライセンス | アクション |
|---|---|---|
|
|
Copyright (c) 1995 by the Information Processing Society of Japan
|
|
| オープンアクセス | ||
| Item type | Journal(1) | |||||||
|---|---|---|---|---|---|---|---|---|
| 公開日 | 1995-06-15 | |||||||
| タイトル | ||||||||
| タイトル | Weak Consを用いたマクロ再定義時の自動再コンパイル | |||||||
| タイトル | ||||||||
| 言語 | en | |||||||
| タイトル | Automatic Re - Compilation on Macro Redefinition, by Making Use of Weak Cons | |||||||
| 言語 | ||||||||
| 言語 | jpn | |||||||
| キーワード | ||||||||
| 主題Scheme | Other | |||||||
| 主題 | 論文 | |||||||
| 資源タイプ | ||||||||
| 資源タイプ識別子 | http://purl.org/coar/resource_type/c_6501 | |||||||
| 資源タイプ | journal article | |||||||
| その他タイトル | ||||||||
| その他のタイトル | プログラミング言語 | |||||||
| 著者所属 | ||||||||
| 豊橋技術科学大学情報工学系 | ||||||||
| 著者所属 | ||||||||
| 豊橋技術科学大学情報工学系/現在,NTN株式会社 | ||||||||
| 著者所属 | ||||||||
| 豊橋技術科学大学情報工学系 | ||||||||
| 著者所属(英) | ||||||||
| en | ||||||||
| Department of Information and Computer Sciences, Toyohashi University of Technology | ||||||||
| 著者所属(英) | ||||||||
| en | ||||||||
| Department of Information and Computer Sciences, Toyohashi University of Technology/Presently with, NTN Corporation | ||||||||
| 著者所属(英) | ||||||||
| en | ||||||||
| Department of Information and Computer Sciences, Toyohashi University of Technology | ||||||||
| 著者名 |
小宮, 常康
伏見, 明浩
湯淺, 太一
× 小宮, 常康 伏見, 明浩 湯淺, 太一
|
|||||||
| 著者名(英) |
Tsuneyasu, Komiya
Akihiro, Fushimi
Taiichi, Yuasa
× Tsuneyasu, Komiya Akihiro, Fushimi Taiichi, Yuasa
|
|||||||
| 論文抄録 | ||||||||
| 内容記述タイプ | Other | |||||||
| 内容記述 | Lisp処理系には、インタプリタとコンパイラの両方を備えた処理系が多いが、その両方を併用する場合は、マクロを使用した関数のコンパイルに注意を要する。インタプリタでは、マクロ展開はマクロ式の評価時に行うため、いつでも最新のマクロ定義が使われる。一方、コンパイラでは、コンパイル時に展開を行うため、コンパイル時におけるマクロ定義が使われる。そのため、マクロを使用した関数をコンパイルする場合は、必要なマクロがあらかじめ定義されていなければならない。またコンパイルされた関数では、マクロ式はすでに展開されているので、マクロを再定義してもその変更はコンパイルされた関数には反映されない。このようにコンパイラでは、マクロの定義時期やマクロの再定義によって、動作がインタプリタと変わってしまうことがある。そこで本論文では、関数とマクロの依存関係グラフを保持し、マクロの(再)定義時にそのマクロに依存する関数やマクロを白動再コンパイルまたは白動再定義することにより、コンパイラを使用した場合でもインタプリタと同じように動作させる方法を提案する。提案する方法では、weakc・sを用いることによって、不必要な再パイルを避けることができ、また不要な再コンパイル情報を捨てることができる。本方法は、本文で述べるように、インタプリタと同じ動作をさせることができない場合があるが、それはきわめて特殊な場合であり、実用上は問題ないと考えられる。 | |||||||
| 書誌レコードID | ||||||||
| 収録物識別子タイプ | NCID | |||||||
| 収録物識別子 | AN00116647 | |||||||
| 書誌情報 |
情報処理学会論文誌 巻 36, 号 6, p. 1407-1414, 発行日 1995-06-15 |
|||||||
| ISSN | ||||||||
| 収録物識別子タイプ | ISSN | |||||||
| 収録物識別子 | 1882-7764 | |||||||