<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<p>Funny, I never thought of static typing as an evolution, more
like a way to spend time on other tasks than actually solving
problems.</p>
<p>I never have coded as efficiently and succinctly as in elixir. It
reminds me of Lisp. Many Lisps make just the right compromise to
empower you instead of going after some strict ideal that may lead
to the compiler checking the code, but also to very inflexible
code that is hard to change. Prototyping in statically typed
languages can be a nightmare, same for refactoring. As soon as you
touch your type hierarchy or data model, you're in a world of
hurt.</p>
<p>On the other hand, I consider the five years I've spent with
elixir to be most deeply satisfying time of my professional
career. I've rewritten my codebase many times over as my
understanding of BEAM and elixir evolved, and in spite of adding
features, the amount of "hand-written" code stayed always the
same. I've offloaded stuff into macros and writing also code that
generates code, for example.<br>
</p>
<p>In comparison, I started small personal projects in PureScript
(essentially Haskell), versions of ML, Reason, etc. What I noticed
is that after deciding I wanted to do things differently I could
often simply start over. I got used to reading weird-ass large
error messages whenever I used any type of generic data
structures, and working with lenses and similar was a relief but
also time-consuming. Never had I the feeling that the compiler
checking my code actually added anything to my workflow, it made
everything more time-consuming. <br>
</p>
<p>This reminds me of my time in college when professors would go
deeply into problems of type systems and how to solve them which
only meant in the end you would even spend more time with type
systems. It seems to be circular. The solution to any type system
problem is a more complex, harder to understand type system. It's
like some managers believe that problems with quality require more
quality assurance and rules, until some engineers spend like 80%
of their time with that and barely producing any code, and yet the
quality problems largely continue. <br>
</p>
<p>So, unless I had very clear specifications that are expected not
to change much, I wouldn't chose a statically typed language. If I
need to stay flexible and the performance allows it, I would chose
elixir or a Lisp. Because I anticipate change and needing that
flexibility as requirements evolve. I have rewritten whole central
frameworks in days and weeks when in statically typed code
frameworks live on for years after most everyone agrees they were
not a good idea because the cost of change was so high.</p>
<p>What matters to me, besides the ability to change things
comparatively fast, is readability. Here elixir shines as well.
Rereading code is another thing I spend a lot of time with, given
that sometimes things work well for years before needing touching
again. I often enough come to my own code as a stranger, but I
often find that readability can be key to maintainability. <br>
</p>
<p>elixir has its flaws, but its typing system isn't one to me.<br>
</p>
<div class="moz-cite-prefix">On 18.12.2021 11:19, Ivan Uemlianin
wrote:<br>
</div>
<blockquote type="cite"
cite="mid:7E06C719-9475-42F6-ADE8-D248EE822B96@llaisdy.com">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<p class="p1" style="margin: 0px; font-stretch: normal;
line-height: normal; -webkit-text-size-adjust: auto;"><span
class="s1">This obsession with elixir is a bit strange. It was
developed ten years ago to appeal to Ruby programmers and is
already looking old-fashioned. No doubt there are interesting
elixir projects but for a good while now language innovation
on the BEAM has predominantly been statically typed.</span></p>
<p class="p2" style="margin: 0px; font-stretch: normal;
line-height: normal; min-height: 20.3px;
-webkit-text-size-adjust: auto;"><span class="s1"></span><br>
</p>
<p class="p1" style="margin: 0px; font-stretch: normal;
line-height: normal; -webkit-text-size-adjust: auto;"><span
class="s1">Side issue perhaps but has been brought up several
times in this thread.</span></p>
<p class="p1" style="margin: 0px; font-stretch: normal;
line-height: normal; -webkit-text-size-adjust: auto;"><span
class="s1"><br>
</span></p>
<p class="p1" style="margin: 0px; font-stretch: normal;
line-height: normal; -webkit-text-size-adjust: auto;"><span
class="s1">Ivan</span></p>
<br>
<div dir="ltr">—
<div>hilaritas excessum habere nequit</div>
</div>
<div dir="ltr"><br>
<blockquote type="cite">On 18 Dec 2021, at 09:48, Daniel Widgren
<a class="moz-txt-link-rfc2396E" href="mailto:daniel.widgren@gmail.com"><daniel.widgren@gmail.com></a> wrote:<br>
<br>
</blockquote>
</div>
<blockquote type="cite">
<div dir="ltr">
<div dir="ltr"> I think the mailing list has had its role in
the community, but I can't see any discussion in this list
that we can't have in a forum. More than people will not be
there because they don't like Forums. My feeling is that we
lose more new developers or companies because we have a
mailing list.<br>
<br>
When companies look around to see if they should use Erlang
or Elixir, Elixir will win. The reasons are straightforward,
and they can see a community, have a better discussion and
adopt new approaches.<br>
<br>
This list has had some good runs, but for me, Forums and
Slack community have been so much better than this list or
IRC. I am not saying they are perfect, and we maybe change
to something else in a couple of years.<br>
<br>
This Forum is ten years late, and we should have unified
somewhere long ago. If things aren't changing, Erlang will
be a building block for Elixir, and it will be even harder
to convince companies why they should use Erlang.</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">Den lör 18 dec. 2021 kl
10:21 skrev Eric Pailleau <<a
href="mailto:eric.pailleau@wanadoo.fr"
moz-do-not-send="true" class="moz-txt-link-freetext">eric.pailleau@wanadoo.fr</a>>:<br>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px
0.8ex;border-left:1px solid
rgb(204,204,204);padding-left:1ex">
<p dir="ltr" style="margin-top:0px;margin-bottom:0px">Thanks
Yao, </p>
<br>
<p dir="ltr" style="margin-top:0px;margin-bottom:0px">I
couldn't tell better my feelings on this. </p>
<br>
<p dir="ltr" style="margin-top:0px;margin-bottom:0px">I'm
not against the forum, I did a try, but my feelings is
that both are not the same goal. </p>
<br>
<p dir="ltr" style="margin-top:0px;margin-bottom:0px">We
need to keep mailing for some subjects to be discussed
with OTP team. And also announcements. </p>
<br>
<p dir="ltr" style="margin-top:0px;margin-bottom:0px">Forum
is helpful for helping new comers, creating groups
around some applications etc. </p>
<br>
<p dir="ltr" style="margin-top:0px;margin-bottom:0px">Regards
</p>
<br>
<br>
<p dir="ltr" style="margin-top:0px;margin-bottom:0px">Envoyé
depuis mon mobile </p>
<br>
<br>
---- Yao Bao a écrit ----<br>
<br>
Hello,<br>
<br>
<br>
<br>
Erlang bring us together as a community, we don't share
data<br>
<br>
between processes, but we do share love from Erlang.<br>
<br>
<br>
<br>
It is not common for programmers say "love" to a
programming<br>
<br>
language. Erlang programmers might not use Erlang in daily
job,<br>
<br>
but we are willing to put some of our life and energy into
this.<br>
<br>
Personally, mainly because of the uncommon beauty of it.<br>
<br>
<br>
<br>
Yes, we are still marginal. And this might be the root
cause of<br>
<br>
this movement. I can understand it, but why can't we have
both?<br>
<br>
<br>
<br>
Yes, resources are always limited, and we can't split
energy into<br>
<br>
two things equally, this is understandable. But having
both, or,<br>
<br>
in a foreseeable future, we might discover some better
methods<br>
<br>
to organize our community, then we can say this is the
true "rich"<br>
<br>
community. New generations are good and unavoidable, but I<br>
<br>
hope we can keep the old generations as much as we can.<br>
<br>
<br>
<br>
Every once in a while, some shiny things appears, and we
are<br>
<br>
not against shiny things, they are good, if it is good
enough to<br>
<br>
replace the old one entirely, nobody will miss it. We just
need<br>
<br>
sometime to prove it.<br>
<br>
<br>
<br>
We can deprecate language features, but I hope we do not<br>
<br>
deprecate people. Shiny tools can attract young
generations,<br>
<br>
I don't know the story or history about Elixir forums, but
I would<br>
<br>
say the biggest difference would be the origin of these
two<br>
<br>
languages. Of course it is good to have a try, after
receiving the<br>
<br>
new Erlang forums announcement, I give it a try almost<br>
<br>
immediately, and personally prefer this mailing list for
now.<br>
<br>
<br>
<br>
Although as we see, this mailing list is not very
"active", but we<br>
<br>
really care about it. And this might be why some "sad"
emotion<br>
<br>
comes along. If we don't care about it, we would not say
any word<br>
<br>
about it.<br>
<br>
<br>
<br>
I really hope this mailing list is still alive. Maybe one
reason would<br>
<br>
be good enough to keep it: old generations are still
alive.<br>
<br>
<br>
<br>
Thanks,<br>
<br>
Yao<br>
<br>
<br>
<br>
</blockquote>
</div>
</div>
</blockquote>
</blockquote>
<div id="DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2">
<br /><br />
<hr style='border:none; color:#909090; background-color:#B0B0B0; height: 1px; width: 99%;' />
<table style='border-collapse:collapse;border:none;'>
<tr>
<td style='border:none;padding:0px 15px 0px 8px'>
<a href="https://www.avast.com/antivirus">
<img border=0 src="http://static.avast.com/emails/avast-mail-stamp.png" alt="Avast logo" />
</a>
</td>
<td>
<p style='color:#3d4d5a; font-family:"Calibri","Verdana","Arial","Helvetica"; font-size:12pt;'>
Diese E-Mail wurde von Avast Antivirus-Software auf Viren geprüft.
<br><a href="https://www.avast.com/antivirus">www.avast.com</a>
</p>
</td>
</tr>
</table>
<br />
<a href="#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2" width="1" height="1"> </a></div></body>
</html>