[erlang-questions] Erlang basic doubts about String, message passing and context switching overhead

Garrett Smith g@REDACTED
Sat Jan 14 17:36:22 CET 2017


On Fri, Jan 13, 2017 at 4:34 PM, Michał Muskała <michal@REDACTED> wrote:
> I fully agree there are no languages that deal with strings perfectly. That
> said there are those that are better at it and those that aren't so good. A
> language, where I need to look for a library to upcase or downcase my own
> name, fits into the second group in my book.

If you're talking about this:

> "hello".upcase()
"HELLO"

vs:

> string:to_upper("hello").
"HELLO"

I would be tempted to rephrase "Erlang is not good for ..." with
"Erlang is not what I am used to for ..."

Some languages invest tremendous effort in programmer convenience and
fit and finish. I think this is terrific! It's one of the major
appeals of Elixir vis-a-vis Erlang and has inspired a huge influx of
creativity and contributions within that ecosystem.

However, when it comes to the merits of a language (and it's
libraries, runtime environments, etc.) there are trade offs
*everywhere* and some of these conveniences come at a high cost. I
don't think "good" and "bad" are nearly specific enough to help inform
our decisions about language adoption.

Now the following is *my very personal opinion* and I'm not grinding
any ax here, extremely happy to live and let live, but this: I don't
particularly find writing function(Arg) (as opposed to Arg.function)
hard, at all - and I *certainly* don't want to pay *any* price in
terms of added complexity or performance degradation for object
oriented ish semantics or features. That's me though. I know a lot of
people really like their language features and thank goodness we have
options!



More information about the erlang-questions mailing list