SPLASH 2011: Kresten Thorup - Erlang, Erjang, and Building Reliable Systems
- Posted: Nov 26, 2011 at 11:14 AM
- 47,632 Views
- 2 Comments
Loading User Information from Channel 9
Something went wrong getting user information from Channel 9
Loading User Information from MSDN
Something went wrong getting user information from MSDN
Loading Visual Studio Achievements
Something went wrong getting the Visual Studio Achievements
Right click “Save as…”
Kresten Thorup is the CTO of Trifork, creator of Erjang (Erlang implementation running on the JVM), and implementer of Java generics. He is deeply interested in distributed systems programming and unusually capable at it (he mastered Erlang in a year, then won the Erlang User of the Year award in 2010). He's taken his Erlang knowledge and expertise in distributed computing to new heights in building highly reliable systems that scale (the most recent of which being the online patient registry for the Danish national health system). Kresten and his team at Trifork are also the folks behind GOTO (used to be called JAOO), a great developer conference and one of my personal favorites, actually. They are also involved with the QCon and YOW! events. Great stuff!
Here, we talk about what Kresten's been up to recently, Erlang, Erjang, software reliability, concurrency, and distributed systems. Tune in.
See Kresten's blog for further details on Erjang and more: http://www.javalimit.com/
Thanks for joining us on Channel 9, Kresten. Keep on pushing the envelope!
Recently, Channel 9 was invited to attend the great SPLASH conference. What is SPLASH? Systems, Programming, Languages and Applications: Software for Humanity. A big thanks to the SPLASH event organizers for inviting me and my camera to engage some key computer scientists and engineers in geeky, fun conversation! SPLASH is a great event! I learned a ton and met many amazing computer scientists and students.
SPLASH is an annual conference that embraces all aspects of software construction and delivery, and that joins all factions of programming technologies. Since 2010 SPLASH is the umbrella for OOPSLA and Onward! [source=splashcon.org]
Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation,
please create a new thread in our Forums,
or
Contact Us and let us know.
Follow the Discussion
Oops, something didn't work.
What does this mean?
Following an item on Channel 9 allows you to watch for new content and comments that you are interested in. You need to be signed in to Channel 9 to use this feature.What does this mean?
Following an item on Channel 9 allows you to watch for new content and comments that you are interested in and view them all on your notifications page.sign up for email notifications?
Humm, I was quite shocking that he gets several points totally wrong about Objective C.
- First this one: "They are just barely getting garbage collection in there..."
Garbage collection was introduced to the language in 2006, yes 2006. Let me see, we are 2011, so five years ago and he is saying us that "they are just barely getting garage collection"? Just a pity that there is no one in front of him who can correct that..... Now, garbage collection is not supported in the mobile space (iPhone, iPad and iPod touch) but I believe it makes sense since garbage collection is just too slow and resource consuming to make any sense on a mobile platform. Right now there is a new model which was introduced to the language recently and it's Automatic Reference Counting. See below.
- "There is still this weird reference counting....".
Yes reference counting has always been supported by the language for compatibility and for performance reasons even when garbage collection was introduced in the language. Performance driven applications on computers could not just use garbage collection because it did not fit well with performance sensitive applications. Reference counting was surely a "old way" to manage objects memory but it was super fast and that's why Objective C always has been a fast language. And as I said, garbage collection was not supported on the mobile space because it does not fit well with the constrain of resources in the mobile space. So instead of trying to fit garbage collection to the mobile space, Apple introduced a new mechanism which is quite clever. They introduced an Automatic Reference Counting (ARC) so that their compiler (Clang) is now in charge to manage the allocation and release of objects. This is supported on both iOS and Mac OS X, and the need for developers to use reference counting is gone, just gone. The compiler will do the hard work for them. So the developers get the benefits of not having to take care of manually managing their memory but they also don't pay any performance penalty since ARC is fast. There is no runtime garbage collection. At compile time, the compiler will insert the appropriate code for allocation and release as a developer would do manually with reference counting. So I am quite surprised that he does not say anything about that. Maybe he is not up to date about the evolution of the language, but then he should not comment on it. And I don't understand what "issues of memory models" he is talking about since he is quite missing the recent evolution of the languaget.
- "It's really amazing that old language managed to become so popular now..."
Old? Objective C as any language has evolved a lot, saying that is old makes little sense. Fortran is more than 60 years old, but it is sill the main language in scientific code. And Fortran has evolved a lot in 60 years too. Now, I believe that Objective C is popular because it is a very good language. It is simple, unique in some aspects, and fast. And it fits quite well for building fast and sophisticated mobile applications.
@Hakime: Kresten knows a thing or two about Objective-C. I think it's fair to say that Kresten is a tad more knowledgable in this domain than you presume......
From http://www.erlang-factory.com/conference/London2011/speakers/KrestenKrabThorup:
C
Remove this comment
Remove this thread
close