Jump to content

Deterministic Parallel Java: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
AnomieBOT (talk | contribs)
m Dating maintenance tags: {{Unref}}
AFD closed as merge (XFDcloser)
Line 1: Line 1:
{{Afd-merge to|Java (programming language)|Deterministic Parallel Java|14 July 2020}}
<!-- Please do not remove or change this AfD message until the discussion has been closed. -->
{{Article for deletion/dated|page=Deterministic Parallel Java|timestamp=20200706074823|year=2020|month=July|day=6|substed=yes|help=off}}
<!-- Once discussion is closed, please place on talk page: {{Old AfD multi|page=Deterministic Parallel Java|date=6 July 2020|result='''keep'''}} -->
<!-- End of AfD message, feel free to edit beyond this point -->
{{notability|date=March 2009}}
{{notability|date=March 2009}}
{{unref|date=July 2020}}
{{unref|date=July 2020}}

Revision as of 12:54, 14 July 2020

Deterministic Parallel Java
OSCross-platform
Websitehttp://dpj.cs.illinois.edu

Deterministic Parallel Java (DPJ) is an extension of the Java programming language which adds parallel constructs that provide a deterministic programming model for object-oriented languages. The language extensions define a type system that a programmer (or interactive porting tool) can use to annotate Java code with type information, and a compiler can use to type-check that a DPJ program has deterministic semantics, i.e., produces the same visible output for a given input, in all executions. Parallel algorithms that cannot be expressed entirely in the statically checked type system require run-time mechanisms to enforce determinism: two key research goals are to make the type system more expressive and to minimize the need to fall back to run-time techniques. With minor modifications, language extensions should be applicable to other base OO languages, such as C++ and C#.

This work is funded by NSF grants CSA 07-02724 and CNS 07-20772, and by Intel and Microsoft through the UPCRC Illinois.