Distributed Programming In Haskell

Yes, I was too rude and schematic. I'm very sorry for that. I will try to be more assertive, but i will not go deep in the details. since the detail by detail anything can be reasonable in certain cases.

What is wrong is the whole thing. The attitude. A look at your program will and any non partisan haskell programmer will desist immediatly in doing any seriousle work with Haskell. He will have the impression that has destroyed all the reputation for haskell in industry: That for printing in the console it is necessary to have a doctorate in maths.

And I'm sorry, this impression is right. Not by the language itself, but by the very bad and false pedagogy of many haskellers.

This is the ping pong program in Erlang:

ping(Receiver) ->
  { pong, Receiver } ! { ping, self() },
  receive
    pong -> io:format("Got pong!~n")
 end.

pong() ->
  receive

    finished ->
      io:format("Pong finished~n");

    { ping, Sender } ->
      io:format("Got ping!~n"),
      Sender ! pong,
      pong()
  end.

What do you think an experienced production programmer or a decision maker in a company will think when he compares this code with yours?

such pedagogy that discard what the advantage that the language has: threads, standard libraries, known and probed ways to do things in production environments, and emphasize last our occurrences, fashionable items of the month, convoluted arguments with long clauses of unproved statements extracted from the imagination and not from months or years of experience in real cases.

A community that tend to follow more someone that assemble the longer line of dot composition that type match than someone with experience in the problem.

/r/haskell Thread Parent Link - yager.io