Kilim is a message-passing framework for Java that claims provides ultra-lightweight threads and facilities for fast, safe, zero-copy messaging between these threads.
It consists of a bytecode postprocessor (a “weaver”), a run time library with buffered mailboxes (multi-producer, single consumer queues) and a user-level scheduler and a type system that puts certain constraints on pointer aliasing within messages to ensure interference-freedom between threads.
Comments
AlainODea replied ago:
I voted up this link because it's a good article on the other end.
Stating that Kilim is 'better' than Erlang is silly. Even Sriram makes it clear that Kilim has significant drawbacks compared to Erlang: particularly its unavoidably cooperative rather than preemptive multi-tasking (among many others).
I seriously recommend that people watch the Sriram's Google TechTalk (http://www.youtube.com/watch?v=37NaHRE0Sqw) before walking away and concluding that Kilim is better than Erlang. There is a lot more to Erlang than message-passing and the performance of local message-passing and local process spawning is a vanishingly small part of overall picture.
That said; Kilim is an excellent framework that demonstrates that isolation is achievable without message copying. Hopefully this will inspire Sun to incorporate Kilim and Ericcson and the Erlang crowd to incorporate copyless message-passing.
henk replied ago:
Amen to that! :)
ksh2dzone replied ago:
"better than Erlang" what a stupid sentence! I totally admit! And I know current VMs (.NET and JVM) can not reach Erlang in concurrency and distributed computation and reliability(!!!) because of the underlying infrastructure!
I have added that myself because of the result of a long watching and studding the psychology of dzone!
Believe it or not the mechanism for getting to the first page is really stupid! When a new link got a down (usually by trolls) it will never will appear on first page! And I have submitted just the same links with different title and they came to the first page!
Is it that important? No!
But for some logical reasons I wanted that this links come to the first page; these are important:
Importance of concurrency - Repeating the word Erlang - Showing how mutability can harm (always do) - Knowing that there is a language out there without shared states that you can do everything in it; which normally you do in your daily development - Maybe this helps to bring up more beautiful languages to my daily work (I think Erlang is more beautiful than C# and Java) like Erlang and Lisp - and we need to do about these VMs if we are going to use them; something like Kilim.
And I strongly believe that using a better language benefits all; developers and stockholders! Developers enjoy they work (means working better) and solving problems more efficiently (not necessarily faster which is an illusion; because we already know doing the job will take time; it is about ->) respond to needs...
Maybe I am totally wrong! But that means I can get right! :)
Voters For This Link (22)
Voters Against This Link (0)