This post originated from an RSS feed registered with Ruby Buzz
by Matt Bauer.
Original Post: Erlang + Flex/Air
Feed Title: blogmmmultiworks
Feed URL: http://blog.mmmultiworks.com/feed/rss.xml
Feed Description: Thoughts on Ruby, hosting and more
Erlang some really wonderful qualities such as fault-tolerance, easily distributed, live code updates and lets not forget about its great concurrency. User interface is not one of its strengths though. Some attempts have been made to improve this. Erlyweb is a nice example of this but I think mixing HTML and Erlang together is much like mixing old and water.
What's needed is a frontend just as powerful as Erlang is on the backend. I suggest the answer is Adobe's Flex and AIR. Flex is designed to handle asynchronous remoting and doesn't really use sessions (though you can but it's most often not needed). This matches perfectly with Erlang which would rather not deal with some shared state (aka sessions).
The best part is AMF or the Actionscript Remoting Framework. This is a nice little binary protocol Flash, Flex and Air use to communicate with backend servers. There are implementations in Java, .Net, PHP, Ruby and more. I'm working on one for Erlang right now. It's currently in alpha state but does pass messages back and forth to Flex fine. I just need to add more tests and better handle errors. AMF is a binary protocol which makes it really easy to process using Erlang's binary syntax. It should also mean that ErlAMF should be the fastest implementation of an AMF out there. Hopefully I'll have some numbers soon to back that up but for now it will just have to be a guess.
I'm giving a talk on ErlAMF this Monday for the Minnesota Ruby Users Group and yes this month the Ruby.mn group will be the MN Erlounge group. I'll talk about why Flex and Erlang is the best combo, getting a simple app going, connecting to Mnesia and some internals of ErlAMF. The git repo for ErlAMF will also be ready on Monday too.
<script>digg_url = 'http://blog.mmmultiworks.com/2007/11/20/erlang-flex-air';</script>
<script>digg_title = 'Erlang + Flex/Air';</script>
<script>digg_bodytext = "What's needed is a frontend just as powerful as Erlang is on the backend. The answer is Adobe's Flex and AIR.";</script>
<script>digg_topic = 'programming';</script>
<script type="text/javascript" src="http://digg.com/tools/diggthis.js"></script>
<script>reddit_url='http://blog.mmmultiworks.com/2007/11/20/erlang-flex-air'</script>
<script>reddit_title='Erlang + Flex/Air'</script>
<script language="javascript" src="http://reddit.com/button.js?t=2"></script>