Search engine for discovering works of Art, research articles, and books related to Art and Culture
ShareThis
Javascript must be enabled to continue!

Futures and multiple values in parallel Lisp

View through CrossRef
We consider the impact of introducing the future construct to the multiple value facility in Lisp (Common Lisp and Scheme). A natural way to accommodate this problem is by modifying the implementation of futures so that one future object returns (or resolves to) multiple values instead of one. We first show how a such straightforward modification fails to maintain the crucial characteristic of futures, namely that inserting futures in a functional program does not alter the the result of the computation. A straightforward modification may result in wrong number of values. We then present two methods which we call the mv-context method and the mv-p flag method to overcome this problem. Both of these methods have been tested in TOP-1 Common Lisp, an implementation of a parallel Common Lisp on the TOP-1 multiprocessor workstation. To our knowledge, this problem has never been analyzed nor solved in an implementation of parallel Lisp. We also present the technique of future chain elimination which avoids creation of unnecessary futures and processes at run-time, which was inspired by this solution.
Association for Computing Machinery (ACM)
Title: Futures and multiple values in parallel Lisp
Description:
We consider the impact of introducing the future construct to the multiple value facility in Lisp (Common Lisp and Scheme).
A natural way to accommodate this problem is by modifying the implementation of futures so that one future object returns (or resolves to) multiple values instead of one.
We first show how a such straightforward modification fails to maintain the crucial characteristic of futures, namely that inserting futures in a functional program does not alter the the result of the computation.
A straightforward modification may result in wrong number of values.
We then present two methods which we call the mv-context method and the mv-p flag method to overcome this problem.
Both of these methods have been tested in TOP-1 Common Lisp, an implementation of a parallel Common Lisp on the TOP-1 multiprocessor workstation.
To our knowledge, this problem has never been analyzed nor solved in an implementation of parallel Lisp.
We also present the technique of future chain elimination which avoids creation of unnecessary futures and processes at run-time, which was inspired by this solution.

Related Results

Direct execution of lisp on a list_directed architecture
Direct execution of lisp on a list_directed architecture
We have defined a direct-execution model dedicated to non-numerical processing which is based upon an internal representation of source programs derived from LISP. This model provi...
Direct execution of lisp on a list_directed architecture
Direct execution of lisp on a list_directed architecture
We have defined a direct-execution model dedicated to non-numerical processing which is based upon an internal representation of source programs derived from LISP. This model provi...
Assessing the functional efficiency of agricultural futures markets in China
Assessing the functional efficiency of agricultural futures markets in China
Purpose The purpose of this paper is to quantitatively analyse the changes in the functional efficiency of the six Chinese agricultural futures markets and compare the relative beh...
Management of the development of the accounting and tax accounting system for forward and futures contracts
Management of the development of the accounting and tax accounting system for forward and futures contracts
In the modern conditions of economic development management in Ukraine, forward and futures contracts allow for reducing risks of price fluctuations that are necessary for economic...
Effect of futures trading on spot‐price volatility: evidence for NSE Nifty using GARCH
Effect of futures trading on spot‐price volatility: evidence for NSE Nifty using GARCH
PurposeThe paper aims to study the impact of the introduction of Nifty index futures on the volatility of the Indian spot markets by use of econometric models.Design/methodology/ap...
Decolonizing Education for Sustainable Futures
Decolonizing Education for Sustainable Futures
This book explores the connections between sustainable futures and demands to decolonize education; conversations that often occur separately, despite their interdependencies. The ...

Back to Top