The language and development tools have exploded the last 4 years, both inside and outside Ericsson and especially after Armstrong's book and work on R12 started. I have a blog post brewing on all the improvements, here's an outline
===================
string, regex handlers, faster file I/O:
- "re" module replaces "regex"
- faster iteration over large binaries, R13A
- avoid io:get_line using raw access
-----------------------------
metaprogramming/"DSL"
- deep exploring parse_transform
----------------------
frameworks, database, middleware
- couchdb, nitrogen, mochiweb, erlyweb,and now the boss!
- thrift, ejabberd, rabbitMQ,
----------------------------
debug, trace, static code analysis; verify program behavior
- dialyzer, tidier (Sagonas and Avgerinos)
- mcErlang model checker
- quick check application vs. specification
-------------------------
data structures
- destructive / mutable byte arrays (HiPE BIF)
- shared immutable data structure
----------------------
tail recursion
- Ericsson expanding as fast as they can (e.g. "andalso",
-------------
SMP, run queues,
----------
build systems, distribute your app
- rake
- faxien, sinan (erlware)
==============
Yah, this could be a long post, take a while to draft too.
Dunno the state of scala, clojure and haskell /GHC docs these days, but to explore the dark corners of erlang dev, you ahve to do a lot of mailing list and google digging.
(and read Cesarini/Thompson book, which is equal to best software books ever, modulo fair number of typo's)
nothing there yet, I've only been erlanging for a month or 2. But: i have been workiing on a better documentation database, you can email for details if interested:
base: genetanigmailcom; insert periods, after positions 4 and 13 and "at" you know where..gene
===================
string, regex handlers, faster file I/O:
- "re" module replaces "regex"
- faster iteration over large binaries, R13A
- avoid io:get_line using raw access
-----------------------------
metaprogramming/"DSL"
- deep exploring parse_transform
----------------------
frameworks, database, middleware
- couchdb, nitrogen, mochiweb, erlyweb,and now the boss!
- thrift, ejabberd, rabbitMQ,
----------------------------
debug, trace, static code analysis; verify program behavior
- dialyzer, tidier (Sagonas and Avgerinos)
- mcErlang model checker
- quick check application vs. specification
-------------------------
data structures
- destructive / mutable byte arrays (HiPE BIF)
- shared immutable data structure
----------------------
tail recursion
- Ericsson expanding as fast as they can (e.g. "andalso",
-------------
SMP, run queues,
----------
build systems, distribute your app
- rake - faxien, sinan (erlware)
==============
Yah, this could be a long post, take a while to draft too.
Dunno the state of scala, clojure and haskell /GHC docs these days, but to explore the dark corners of erlang dev, you ahve to do a lot of mailing list and google digging.
(and read Cesarini/Thompson book, which is equal to best software books ever, modulo fair number of typo's)