by Ericsson * the syntax is prolog-y & not c-y or ruby-y or python-y, its just too damn erlang-y * no package manager * no list of open source packages * no community site * the mailing list is the community * everyone knows each other from Stockholm * it is too hard to get a first working app * lists for strings, aargh! * no for loops, eek! * variables don't vary, whimper! * people don't learn OTP first but start with Erlang * people don't learn Erlang first but start with OTP * no docs * too many docs but it is the wrong sort * not enough teaching materials * doesn't run on the JVM * we used to think that it was because there were no books... * Erlang Solutions isn't a proper internet company * the language develops too slowly * emacs is the IDE
a post end > Publisher.publish(%Post{status: :published}) ** (FunctionClauseError) no function clause matching in Publisher.publish/1 The following arguments were given to Publisher.publish/1: # 1 %Post{status: :published} Guards
end def handle_call(:pop, _from, [head | tail]) do {:reply, head, tail} end def handle_cast({:push, item}, state) do {:noreply, [item | state]} end end GenServer