PQL: A purely-declarative java extension for parallel programming

8Citations
Citations of this article
24Readers
Mendeley users who have this article in their library.
Get full text

Abstract

The popularization of parallelism is arguably the most fundamental computing challenge for years to come. We present an approach where parallel programming takes place in a restricted (sub-Turing-complete), logic-based declarative language, embedded in Java. Our logic-based language, PQL, can express the parallel elements of a computing task, while regular Java code captures sequential elements. This approach offers a key property: the purely declarative nature of our language allows for aggressive optimization, in much the same way that relational queries are optimized by a database engine. At the same time, declarative queries can operate on plain Java data, extending patterns such as map-reduce to arbitrary levels of nesting and composition complexity. We have implemented PQL as extension to a Java compiler and showcase its expressiveness as well as its scalability compared to competitive techniques for similar tasks (Java + relational queries, in-memory Hadoop, etc.). © 2012 Springer-Verlag Berlin Heidelberg.

Cite

CITATION STYLE

APA

Reichenbach, C., Smaragdakis, Y., & Immerman, N. (2012). PQL: A purely-declarative java extension for parallel programming. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 7313 LNCS, pp. 53–78). Springer Verlag. https://doi.org/10.1007/978-3-642-31057-7_4

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free