The architecture of the processor architecture has changed; several cores are a trend that will change the way we develop software. I did multi-threaded development in C, C ++ and Java, I did multi-processor development using various IPC mechanisms. Traditional approaches to the use of threads, apparently, do not allow the developer to use hardware that supports a high degree of concurrency.
What languages, libraries, and development methods do you know about this help to alleviate the traditional problems of creating parallel applications? I obviously think about issues like dead ends and race conditions. Also interesting are design methods, libraries, tools, etc., which help to actually take advantage of and ensure the availability of available resources. Simply creating a reliable, reliable, multi-threaded application does not guarantee that it uses all available cores.
What I have seen so far:
- Erlang : process based, IPC messaging, concurrency actor model
- Dramatis : Member Model Library for Ruby and Python
- Scala : functional programming language for JVM with added concurrency support
- Clojure : a functional programming language for the JVM with a member library.
- Termite : Erlang process process port and message flowing to Schema
What else do you know about what worked for you and what do you think is interesting to watch?
programming-languages concurrency functional-programming multicore
Kyle Burton Sep 23 '08 at 15:19 2008-09-23 15:19
source share