[erlang-questions] erlang sucks
Sean Hinde
sean.hinde@REDACTED
Wed Mar 12 19:30:26 CET 2008
On 12 Mar 2008, at 17:29, attila.rajmund.nohl@REDACTED wrote:
> On Tue, 11 Mar 2008, Sean Hinde wrote:
> [...]
>> The more normal Erlang way to write the equivalent of the C version
>> would be
>> simply:
>>
>> some_function(X,Y,Z) ->
>> case handle_some_function(X,Y,Z) of
>> ok -> ok;
>> error1 -> handle_error1();
>> error2 -> handle_error2()
>> end.
>>
>> I'd argue that it is even more readable than the C version. And not
>> an 'if'
>> in sight :-)
>
> But you have to write nonsense like:
> ok -> ok;
You seem to be mostly complaining about the fact that case .. end and
if .. end do not have an implicit pass through when no clauses match.
Well, Erlang is not C.
Idiomatic Elang does not mean writing everything in single function
with a few hundred lines of ifs and gotos. I've read many C programs
in that style, and also seen Erlang code attempting to follow the
same style. It makes for ugly and hard to debug Erlang code. I've no
idea if it is good C coding style.
In Erlang you have the choice to throw a runtime exception if no
clause matches, or to provide an explicit wildcard case. The Erlang
"crash early" philosophy means that in most cases wildcard is the
wrong solution.
Sean
>
> Bye,NAR
> --
> "Beware of bugs in the above code; I have only proved it correct, not
> tried it."
> _______________________________________________
> erlang-questions mailing list
> erlang-questions@REDACTED
> http://www.erlang.org/mailman/listinfo/erlang-questions
More information about the erlang-questions
mailing list