I'm pretty sure that the syntax of Erlang is one of its main stumbling blocks, it is very far off the beaten path (and imo ugly), which means an immediate shortage of people that can program in it.
Grafting a C like language on top of the Erlang VM should theoretically give you the same kind of stability and scalability without the drawback of having to fish in a pool with all of 5 programmers in it (and they'll be working for a telco somewhere anyway).
After you get into it, I've found that syntax is usually the least of my grievances in a new language. It usually has to do with features missing from other languages.
Lately, I've been doing javascript a lot more, and at first, I didn't like typing "function() {" all the time (and still don't). But now, I find that javascript doesn't have method_missing (only FF implements non-standard __noSuchMethod__), nor can you override the subscript operator. Gah! So then a thing like typing "function() {" fades into the background.
Erlang's syntax seems a lot less weird if you're familiar with Prolog, FWIW. It was a originally a DSL built on top of SICSTus Prolog, but seems to have accumulated some extra syntax along the way. Same with a lot of its other quirks.
It's like with foreign languages, if you have to learn a new language but at least their pronunciation rules and alphabet are the same as the one that you already know how to use the barrier is a lot lower than if they use a different script as well.
It serves as a bridge from the known in to the unknown.
As soon as that bridge isn't there the number of people that will be able (or willing) to make the jump drops dramatically.
If this step-in-between will make the concepts behind Erlang easier to bring to the masses then more of them will eventually make the step to Erlang itself as well.
Personally, I'd love to get a hold of some documents that clearly describe the finer details of BEAM.
Some people have internalized the syntax of Erlang, and there are certainly aspects of its syntax that I prefer to the C-style syntax(",", ";", and "." are not among that list). I don't regularly program Erlang, only very occasionally dabbling and writing a toy program in it, but every time I try to dabble, I'm frustrated a little by needing to look up again when to use which of ",;.". Efene seems intended(among other things) to eliminate that problem. On the other hand, I like Erlang's syntax for control structures and for function definitions and for tuples, which I doubt Efene preserves.
It initially looked more ridiculous than managed C++, but after about seven months of daily Erlang programming it's the most natural thing ever.
The problem with C-style syntax is that it encourages the diversity of coding conventions. Python makes everyone's code look about the same because of its ingenious whitespace-handling rules. Erlang's syntax appears to achieve a similar result because of its ... weirdness.