Hi Node Groupies, It seems that many back-end applications could take advantage of parallel execution. For example, analysis of data, extracting business intelligence, machine learning, and so forth. The "asynchronous" style has some nice properties for implementing that kind of functionality. Other parallel execution models do as well, such as Charm, X10, UPC, OpenMP, Cilk, StarSs, Linda (coordination) and so on. It would be nice to be able to cherry pick, and use whatever parallelism model feels best to the programmer. The best case would be letting a single node.js application mix such parallelism approaches together, for example, including a library written in one parallelism style into an application that uses a different parallelism style.
The basic technology for mixing such parallelism styles has been researched and shown to work. More can be found here: http://opensourceresearchinstitute.org . It treats parallelism constructs as function calls, the same way that the pthreads library treats acquiring a mutex as a function call. In this way, constructs from many different languages have been implemented, and made to inter-operate with each other. At the moment, the parallel constructs are called as C functions. However, I'd like to combine the technology with what I consider the best and most innovative approach for developing web server code, which is node.js. Together, the two technologies would open a new world to back-end programmers, allowing them to take advantage of existing parallelism approaches. They could also quickly and easily create their own custom parallelism approach, that then seamlessly inter-operates with pre-existing styles. Specifically, I believe that Domain Languages will become the dominant approach to parallel programming in the future, and this research not only makes it quick and easy to create a new Domain Language, but makes it inter-operable and backwards compatible with other parallel approaches and other domain languages. Unfortunately, I am new to node.js, and don't really know where to start. There must be appropriate places to insert "hooks" for interfacing the node.js interpreter with the "proto-runtime" technology that handles the parallelism. Help most warmly appreciated, Sean -- -- Job Board: http://jobs.nodejs.org/ Posting guidelines: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines You received this message because you are subscribed to the Google Groups "nodejs" group. To post to this group, send email to nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en --- You received this message because you are subscribed to the Google Groups "nodejs" group. To unsubscribe from this group and stop receiving emails from it, send an email to nodejs+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.