Project/Area Number |
60550260
|
Research Category |
Grant-in-Aid for General Scientific Research (C)
|
Allocation Type | Single-year Grants |
Research Field |
計算機工学
|
Research Institution | Chuo University (1986) The University of Electro-Communications (1985) |
Principal Investigator |
NOSHITA Kohei Chuo University, 理工学部, 教授 (60011706)
|
Co-Investigator(Kenkyū-buntansha) |
MACHIDA Hajime University of Electro-Communications, 電気通信学部, 助教授 (40090534)
KASAI Takumi University of Electro-Communications, 電気通信学部, 助教授 (70027382)
TOMITA Etsuji University of Electro-Communications, 電気通信学部, 教授 (40016598)
|
Project Period (FY) |
1985 – 1986
|
Project Status |
Completed (Fiscal Year 1986)
|
Budget Amount *help |
¥2,100,000 (Direct Cost: ¥2,100,000)
Fiscal Year 1986: ¥800,000 (Direct Cost: ¥800,000)
Fiscal Year 1985: ¥1,300,000 (Direct Cost: ¥1,300,000)
|
Keywords | Lambda Expression / Combinator / BC-chain Method / Functional Programming / 計算量 |
Research Abstract |
The purpose of this project is to propose a new method for implementing functional programming languages and to study algorithmic aspects of this method from the complexity viewpoint. In 1979 D.A. Turner applied combinators to a certain practical system for evaluating lambda expressions. His system is not quite efficient in the sense that the space complexity of output is at least quadratic in n, where n is the length of input expressions. In 1985 the author presented a new method for representing combinator graphs in O(n log n) space. In this project another new efficient method called BC-chains is proposed, which requires only linear space in n even in the worst case. Provided the normal order reduction is assumed, this leads to a new reduction algorithm, which can be proved to run as efficiently as the standard normal order reduction algorithm even in the worst case. In fact, in some computing experiment, this algorithm is reported to run at least as fast as the standard one in the average sense as well. For translating input expressions to combinator graphs, a new algorithm is devised, which runs in O(n log n) time in the worst case. The space complexity of this algorithm can be proved to be O(n log n). The report of this project describes the details of all the algorithms mentioned above, which constitute the complete set of basic algorithms for translation as well as for execution. The report also contains some theoretical results on the complexity of related problems.
|