Related articles |
---|
Another approach to parallel programming 0xe0e1e@gmail.com (Kao Hsiang) (2015-08-26) |
Re: Another approach to parallel programming kaz@kylheku.com (Kaz Kylheku) (2015-08-26) |
From: | Kao Hsiang <0xe0e1e@gmail.com> |
Newsgroups: | comp.compilers |
Date: | Wed, 26 Aug 2015 13:56:59 -0400 (EDT) |
Organization: | Compilers Central |
Keywords: | parallel, question |
Posted-Date: | 26 Aug 2015 13:56:59 EDT |
In recent years, I have been concerned about parallel programming in a new way.
Gradually I formed an idea about a approach of imperative parallel programming.
-------------
Let f(a,b,c,...) be any function(or subroutine), we define that a,b,c,... can be executed parallelly,
and f depends on a,b,c,... so it executes after its arguments.
and I think it can be a basic primitive of imperative parallel programming.
Next we define block "to{...}" and block "do{...}" (in library)
"to" is a null function with variable arguments to represent parallel sentences.
"do" is a function "do(a,func b()) {b();}" with argments "a" and a closure "b" (continuation-passing style) to represent sequential sentences.
And then the instruction-level parallel programming can be easily implemented based on f.
It can be compiled into vm bytecode/ VLIW architecture code / os-based threads.
------------
Sorry about my broken English. Now I plan to implement a new
language based on the above idea. I think this language will be useful
and convenient for parallel programming.
Gao Xiang <gx@mail.hfut.edu.cn>
Return to the
comp.compilers page.
Search the
comp.compilers archives again.