License: Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported license (CC BY-NC-ND 3.0)
When quoting this document, please refer to the following
DOI: 10.4230/LIPIcs.ICLP.2010.222
URN: urn:nbn:de:0030-drops-26001
URL: http://dagstuhl.sunsite.rwth-aachen.de/volltexte/2010/2600/
Go to the corresponding LIPIcs Volume Portal


Alqaddoumi, Abdulla

Towards a Parallel Virtual Machine for Functional Logic Programming

pdf-format:
10003.AlqaddoumiAbdulla.2600.pdf (0.3 MB)


Abstract

Functional logic programming is a multi-paradigm programming that combines the best features of functional programming and logic programming. Functional programming provides mechanisms for demand-driven evaluation, higher order functions and polymorphic typing. Logic programming deals with non-determinism, partial information and constraints. Both programming paradigms fall under the umbrella of declarative programming. For the most part, the current implementations of functional logic languages belong to one of two categories: (1) Implementations that include the logic programming features in a functional language. (2) Implementations that extend logic languages with functional programming features. In this paper we describe the undergoing research efforts to build a parallel virtual machine that performs functional logic computations. The virtual machine will tackle several issues that other implementations do not tackle: (1) Sharing of sub-terms among different terms especially when such sub-terms are evaluated to more than one value (non-determinism). (2) Exploitation of all forms of parallelism present in computations. The evaluation strategy used to evaluate functional logic terms is needed narrowing, which is a complete and sound strategy.

BibTeX - Entry

@InProceedings{alqaddoumi:LIPIcs:2010:2600,
  author =	{Abdulla Alqaddoumi},
  title =	{{Towards a Parallel Virtual Machine for Functional Logic Programming}},
  booktitle =	{Technical Communications of the 26th International Conference on Logic Programming},
  pages =	{222--225},
  series =	{Leibniz International Proceedings in Informatics (LIPIcs)},
  ISBN =	{978-3-939897-17-0},
  ISSN =	{1868-8969},
  year =	{2010},
  volume =	{7},
  editor =	{Manuel Hermenegildo and Torsten Schaub},
  publisher =	{Schloss Dagstuhl--Leibniz-Zentrum fuer Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{http://drops.dagstuhl.de/opus/volltexte/2010/2600},
  URN =		{urn:nbn:de:0030-drops-26001},
  doi =		{10.4230/LIPIcs.ICLP.2010.222},
  annote =	{Keywords: Functional logic programming, term rewriting system, non-determinism, needed narrowing, and-parallelism, or-parallelism}
}

Keywords: Functional logic programming, term rewriting system, non-determinism, needed narrowing, and-parallelism, or-parallelism
Collection: Technical Communications of the 26th International Conference on Logic Programming
Issue Date: 2010
Date of publication: 25.06.2010


DROPS-Home | Fulltext Search | Imprint | Privacy Published by LZI