Kilim: Fast, lightweight, cheap message passing in Java.
Google TechTalks2 HN recommenders · recommended in 2 months, 2009-2012
33K views · 18 years ago · talk · dated
A Google Tech Talk by the author of Kilim, a Java library for lightweight actor-style message passing. It argues that message passing can replace shared-memory concurrency and claims performance competitive with or better than Erlang for huge numbers of actors.
Pointed to as evidence that Java can do fast, cheap message-passing concurrency, as an alternative to Erlang or Scala actors.
58:36Advanced Topics in Programming Languages: A Lock-Free Hash Table
GoogleTalksArchive
29K views • 14 years ago
2:32:39Clojure Concurrency - Rich Hickey
ClojureTV
73K views • 13 years ago
42:03The Soul of Erlang and Elixir • Sasa Juric • GOTO 2019
GOTO Conferences
384K views • 7 years ago
35:15Solid Ground // Saša Jurić
EMPEX Conference
14K views • 9 years ago
1:06:45Let's #TalkConcurrency Panel Discussion with Sir Tony Hoare, Joe Armstrong, and Carl Hewitt
Erlang Solutions
13K views • 7 years ago
51:27Google I/O 2012 - Go Concurrency Patterns
Google for Developers
894K views • 14 years ago
11:32Erlang: The Movie (Fixed Audio)
CH1LLW4VE
43K views • 9 years ago
40:13Zach Tellman - Everything Will Flow
ClojureTV
27K views • 11 years ago
9:58Erlang: The Movie
dawsdesign
159K views • 19 years ago
1:10:23"Systems that run forever self-heal and scale" by Joe Armstrong (2013)
Strange Loop Conference
85K views • 5 years ago
50:11Twitter’s Quest for a Wholly Graal Runtime by Chris Thalinger
Scala Days Conferences
3K views • 8 years ago
49:15Erlang Factory 2014 - That's 'Billion' with a 'B': Scaling to the Next Level at WhatsApp
Erlang Solutions
50K views • 12 years ago
11:32Erlang: The Movie
uncertainyesterday
175K views • 14 years ago
34:55"Outperforming Imperative with Pure Functional Languages" by Richard Feldman
Strange Loop Conference
98K views • 5 years ago
41:06"Unison: a new distributed programming language" by Paul Chiusano
Strange Loop Conference
45K views • 7 years ago
30:37High-performance Tree Wrangling, the APL Way // Aaron Hsu // Dyalog '18
Dyalog User Meetings
6K views • 7 years ago
1:14:52Effective Programs - 10 Years of Clojure - Rich Hickey
ClojureTV
176K views • 9 years ago
1:13:53Raymond Hettinger, Keynote on Concurrency, PyBay 2017
SF Python
161K views • 9 years ago
1:02:50The Language of the System - Rich Hickey
ClojureTV
174K views • 13 years ago
1:12:02Java on a 1000 Cores - Tales of Hardware / Software CoDesign
Google TechTalks
23K views • 17 years ago
4 comments from Hacker News
Erlang is a CSP system, first and foremost, and not actors. [CSP style concurrency on JVM]: ▶ this video (Kilim, it should be noted, was benchmarked as scaling better than Erlang/OTP.) link (paper in top comment is worth the read.) Disclaimer: I think Erlang/OTP rocks. But JVM has its moments, as well, and in fairness has earned the "most advanced VM" title.
"Asynchronious message passing is old and great idea. Instead of synchronizing objects and dealing with deadlocks we try to isolate objects and let them exchange messages. Erlang proved it to be extremly powerful tool applicable to wide range of highly scalable mission critical applications. In JVM landscape big interest to this approach started after introducing Scala actors. " That statement is so very poorly informed! JMS ("surprise"?) has been a sign of "interest" in "Asynchronious message passing" in the "JVM landscape". I am not up on my Scala, but the author fails to convey (based on what I do know ;) the competence level that would lend weight to his attempt to address (much less support) the topic. For those interested in other JVM alternatives, Kilim seems quite promising and seems to hold its own quite well in benchmarks against Erlang. link ▶ this video link [scroll to end to see the impressive results for Kilim.] link [edit: added pdf link]
Actors are decoupled from the means by which they are executed. Scala has a nice system where you can run thousands of event-based actors in a thread pool. It grows the pool as needed (as threads block). See link While it may use threads, Scala's actor system effectively allows you to create thousands of actors. Kilim is actually a pure (depending on whether you see a byte-code processing system as pure) Java system that does the same thing (as far as I can tell): link Kilim's author did a nice Google Talk: ▶ this video EDIT: Fixed some grammar and added video link.
SPEED :: In defence of Java, it is very quick when done right. See Kilim[1] for examples. SUPPORT :: On top of the speed Java has a supported hardware stack (Solaris). So if doing 100K connections is important to you, you can find engineers who can diagnose difficult problems on your whole stack. -------------- [1] ▶ this video at 23:23 . Java is quick without Kilim too, this is just an example with stats.