<turbo-stream action="append" target="posts_list"><template>    <div class="postbit" id="338494" data-post-id="338494">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="cpud36" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/cpud36/120/35177_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  cpud36
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<aside class="quote no-group" data-username="dimitarvp" data-post="7" data-topic="65719">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/dimitarvp/48/38664_2.png" class="avatar"> dimitarvp:</div>
<blockquote>
<p>Then when you hit that place in the code and there’s no (or errored) value the entire OS process aborts.</p>
</blockquote>
</aside>
<p>Rust panic only crashes the thread or the tokio task. You can have broken state in some cases, though.</p>
<p>In my experience, having panic that breaks shared state is quite rare, but YMMV.</p>
<aside class="quote no-group" data-username="matthias_toepp" data-post="24" data-topic="65719">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/matthias_toepp/48/32258_2.png" class="avatar"> matthias_toepp:</div>
<blockquote>
<p>If I had guessed at the answer to my own question I would have guessed that the beam has a special ingredient that means that a phoenix server crashes less often than an axum server, programmer skill being equal.</p>
</blockquote>
</aside>
<p>I have had a simple Phoenix app running in production that terminated every 6 months, give or take. I hadn’t ever understood why.<br>
For rust I had apps with years uptime.</p>
<p>This, of course, says more about my expertise in these technologies, rather than anything else.</p>
<p>But, in any case if you care about availability, you likely do want to setup an external supervisor regardless. Be it systemd, kubernetes, or an ops person with alert system - it doesn’t matter.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="338494" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/how-much-more-crashproof-is-a-server-with-elixir-beam-compared-to-rusts-axum/65719/32">Post #31</a>
	                </div>
	            </div>
              <div id="likers-container-338494" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="338494"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #31"></div>
  </section>
</div>
    <div class="postbit" id="338496" data-post-id="338496">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="D4no0" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/D4no0/120/33624_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  D4no0
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<aside class="quote group-Erlang-Core-Team" data-username="jhogberg" data-post="31" data-topic="65719">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/jhogberg/48/24176_2.png" class="avatar"> jhogberg:</div>
<blockquote>
<p>Yes and no; those actor frameworks will not help you manage runaway tasks (nor will they grant you much in the way of introspection). In any M:N setup without pre-emption, a job that takes too long <em>will</em> screw up responsiveness, giving you bad latency of unrelated tasks in the best case, and locking things up entirely in the worst.</p>
</blockquote>
</aside>
<p>This is exactly what I wanted to point out now. If we talk about actors in JVM, the tools the VM provides are not enough to make this isolation even closely as good as erlang VM. I think that fiasco when Scala official actor library was considered unsafe and was proven to leak memory is a good point supporting this, and even though it can be argued that this is related to errors in code, I think that the building blocks they were using were incompatible.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="338496" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/how-much-more-crashproof-is-a-server-with-elixir-beam-compared-to-rusts-axum/65719/33">Post #32</a>
	                </div>
	            </div>
              <div id="likers-container-338496" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="338496"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #32"></div>
  </section>
</div>
    <div class="postbit" id="338499" data-post-id="338499">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="D4no0" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/D4no0/120/33624_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  D4no0
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<aside class="quote no-group" data-username="cpud36" data-post="32" data-topic="65719">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/cpud36/48/35177_2.png" class="avatar"> cpud36:</div>
<blockquote>
<p>But, in any case if you care about availability, you likely do want to setup an external supervisor regardless. Be it systemd, kubernetes, or an ops person with alert system - it doesn’t matter.</p>
</blockquote>
</aside>
<p>Monitoring of the system is another topic and slapping a daemon that knows how to restart a server is not the universal solution.</p>
<p>The main benefit of fault-tolerance is that you can design huge monoliths that you can ensure work reliably and are much more cost effective than something like k8s. If your entire runtime crashes periodically, the only way to ensure that you don’t have downtime is to separate everything into microservices, that is by far not the most optimal way when it comes to infrastructure costs and people required to make it work.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="338499" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/how-much-more-crashproof-is-a-server-with-elixir-beam-compared-to-rusts-axum/65719/34">Post #33</a>
	                </div>
	            </div>
              <div id="likers-container-338499" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="338499"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #33"></div>
  </section>
</div>
    <div class="postbit" id="338516" data-post-id="338516">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="cpud36" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/cpud36/120/35177_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  cpud36
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Generally agree with the comment.</p>
<p>Wanted to point out that all of elixir, rust, java etc - all have fault-tolerance and fault modes. These fault modes are just different. Saying one is better evil than the other one - is kinda hard.</p>
<p>That is all of them recover for some extent. Elixir uses supervisors, rust catches panic(tokio), java webservers catch exceptions. Then the question is what they don’t recover, and how often that happens - and this depends largely on the program, not technology.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="338516" data-batch-url="/posts/batch_likers">
                        1
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/how-much-more-crashproof-is-a-server-with-elixir-beam-compared-to-rusts-axum/65719/35">Post #34</a>
	                </div>
	            </div>
              <div id="likers-container-338516" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="338516"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #34"></div>
  </section>
</div>
    <div class="postbit" id="338524" data-post-id="338524">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="sbuttgereit" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/sbuttgereit/120/30162_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  sbuttgereit
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<aside class="quote no-group" data-username="cpud36" data-post="35" data-topic="65719">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/cpud36/48/35177_2.png" class="avatar"> cpud36:</div>
<blockquote>
<p>That is all of them recover for some extent. Elixir uses supervisors, rust catches panic(tokio), java webservers catch exceptions.</p>
</blockquote>
</aside>
<p>I think this may be over generalizing to where there’s maybe a false equivalence.  If I look at throwing and/or catching exceptions in, say, Java… I’m really dealing with managing errors in logic or data: unanswered is what to do about the runtime impacts which are left to the developer to figure out (or to delegate to some external library/framework/tool).   In Elixir the equivalent isn’t the supervisor, but Elixir exceptions, try, catch, rescue, etc. all of which exist without invoking supervisors and deal with that logic/data domain. The Elixir/Erlang supervisor is about dealing with the runtime consequences of error: if I fail to capture error at the logic level what happens at the runtime?  Supervisors provide an answer to that question.  I appreciate that I’m drawing a somewhat fine line, but I think it’s an important distinction between the BEAM and other runtime environments.</p>
<p>For a lot of problems, having both the logic and runtime error management questions dealt with by mature constructs built into the VM (or the standard libraries)  means that I don’t have to solve those questions myself, even if that solve is just picking the right external library/framework.  I expect the BEAM will beat my hare-brained ideas about fault-tolerance and recovery every day and it gives me simple rules to play by (which seems in part to be the point of Erlang if I read Joe Armstrong’s thesis correctly).  Yes, having runtime error handling baked in at such a low level I expect that it’s more prescriptive than those other languages which leave it open and there are trade offs such as raw performance and such… but that’s part of of choice of whether or the BEAM is suitable or not for a project.  And also yes, you can still screw up a BEAM based application and end up with a crashed application at the slightest error… but your chances of getting it in the domain of “right” are ultimately better following the more prescriptive path than not.</p>
<p>A long time ago I was deciding between Rust and Elixir.  Rust for its overall performance and its own prescriptive aspects in dealing with memory and data (C/C++ scare me).  I considered conservative choices like Java or C#, too,… but ultimately the BEAM won because I realized I didn’t need the raw performance of a Rust and it came with fairly straight forward answers to problems like concurrency and fault-tolerance which are not problems I am likely to be great at solving:  I would likely end up with a more resilient, available, and concurrent system building on the BEAM than I would with anything else.  Elixir was language of choice because I felt it had the right expressiveness for business systems problems.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="338524" data-batch-url="/posts/batch_likers">
                        6
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/how-much-more-crashproof-is-a-server-with-elixir-beam-compared-to-rusts-axum/65719/36">Post #35</a>
	                </div>
	            </div>
              <div id="likers-container-338524" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="338524"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #35"></div>
  </section>
</div>
    <div class="postbit" id="338542" data-post-id="338542">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="zkessin" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/zkessin/120/20267_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  zkessin
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>The other thing is that the beam has features for recovery if a machine crashes. It doesn’t matter how great your type system and tests are if your hardware fails. It is possible to start an application on the beam and have it setup so that if node A fails it will resume on node B.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="338542" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/how-much-more-crashproof-is-a-server-with-elixir-beam-compared-to-rusts-axum/65719/37">Post #36</a>
	                </div>
	            </div>
              <div id="likers-container-338542" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="338542"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #36"></div>
  </section>
</div>
    <div class="postbit" id="338606" data-post-id="338606">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="BartOtten" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/BartOtten/120/25440_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  BartOtten
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<aside class="quote no-group" data-username="cpud36" data-post="32" data-topic="65719">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/cpud36/48/35177_2.png" class="avatar"> cpud36:</div>
<blockquote>
<p>I have had a simple Phoenix app running in production that terminated every 6 months</p>
</blockquote>
</aside>
<p>I had one which started when Phoenix just saw it’s first release and recently I shut it down myself. As a mirror redirector, it handled masses of traffic. The single app replaced a Go variant incl. all support (Reddis,  systemd monitoring etc).</p>
<p>So Phoenix is not the problem. Luckily Elixir apps can be debugged in production! Have fun <img src="https://forum.elixirforum.com/images/emoji/apple/grin.png?v=15" title=":grin:" class="emoji" alt=":grin:" loading="lazy" width="20" height="20"></p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="338606" data-batch-url="/posts/batch_likers">
                        4
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/how-much-more-crashproof-is-a-server-with-elixir-beam-compared-to-rusts-axum/65719/38">Post #37</a>
	                </div>
	            </div>
              <div id="likers-container-338606" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="338606"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #37"></div>
  </section>
</div>
    <div class="postbit" id="338693" data-post-id="338693">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="lpil" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/lpil/120/17492_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  lpil
                  </h3>
		          </div>
						
			          <div class="user-title">
									<span>Creator of Gleam</span>
			          </div>
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Hi! If I might be a little cheeky I’d just like to say that <a href="https://github.com/gleam-lang/gleam" rel="noopener nofollow ugc">Gleam</a> has the crash proof properties of the Erlang VM and the type safety of Rust.</p>
<p>They’re rather different guarantees, as folks have pointed out, and I think they complement each other well. This codemesh talk goes into that:</p>
<div class="youtube-onebox lazy-video-container" data-video-id="HaKR2kt-DXI" data-video-title="Louis Pilfold - Gleam: Lean BEAM typing machine | Code Mesh LDN 19" data-video-start-time="" data-provider-name="youtube">
  <a href="https://www.youtube.com/watch?v=HaKR2kt-DXI" target="_blank" class="video-thumbnail" rel="noopener nofollow ugc">
    <img class="youtube-thumbnail" src="https://img.youtube.com/vi/HaKR2kt-DXI/maxresdefault.jpg" title="Louis Pilfold - Gleam: Lean BEAM typing machine | Code Mesh LDN 19" width="690" height="388">
  </a>
</div>
 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="338693" data-batch-url="/posts/batch_likers">
                        6
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/how-much-more-crashproof-is-a-server-with-elixir-beam-compared-to-rusts-axum/65719/39">Post #38</a>
	                </div>
	            </div>
              <div id="likers-container-338693" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="338693"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #38"></div>
  </section>
</div>
    <div class="postbit" id="338903" data-post-id="338903">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="matthias_toepp" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/matthias_toepp/120/32258_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  matthias_toepp
                    <span class="op-star" title="Thread Starter">
                      <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                    </span>
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<aside class="quote no-group" data-username="lpil" data-post="39" data-topic="65719">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/lpil/48/17492_2.png" class="avatar"> lpil:</div>
<blockquote>
<p><a href="https://github.com/gleam-lang/gleam" rel="noopener nofollow ugc">Gleam</a> has the crash proof properties of the Erlang VM and the type safety of Rust.</p>
</blockquote>
</aside>
<p><a class="mention" href="/u/lpil" rel="nofollow">@lpil</a> I was just reading this: <a href="https://elixir-lang.org/blog/2024/08/28/typing-lists-and-tuples/" class="inline-onebox" rel="nofollow">Typing lists and tuples in Elixir - The Elixir programming language</a> and I’d love to hear what you think about that post, the promise of the Elixir compile-time type system and how it might compare to Gleam going into the future.  Your insights would be particularly valuable to me because Gleam’s type system is somewhat familiar to me, being quite similar to Elm, and i think fundamentally similar <em>in it’s essence</em> to F#, Ocaml, Rust and Haskell (with much less complexity), whereas Elixir’s type system is quite new/unfamiliar to me. After reading that post (that I linked to above) I’m just beginning to be able to imagine how it will actually feel to use Elixir types compared to a system like that of Gleam and the others (even though I’ve been reading and watching the presentations about the coming Elixir type system).</p>
<p>I know Gleam should be expected to compile faster than Elixir (since the compiler is written in rust), and I’ve heard Jose say that one of his concerns with the new type system is the time it may take to compile.</p>
<p>Also, to be clear, I realize this is only one point of comparison between Elixir and Gleam, and that people will prefer different styles of development etc.   Even though Gleam’s type system is(/was?) perhaps the primary differentiator from Elixir, it clearly also differentiates itself in other ways as well.  It compiles to javascript, it’s focus on simplicity, it’s elm-like web framework and in many other ways I’m sure…</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="338903" data-batch-url="/posts/batch_likers">
                        1
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/how-much-more-crashproof-is-a-server-with-elixir-beam-compared-to-rusts-axum/65719/40">Post #39</a>
	                </div>
	            </div>
              <div id="likers-container-338903" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="338903"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #39"></div>
  </section>
</div>
    <div class="postbit" id="338911" data-post-id="338911">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="lpil" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/lpil/120/17492_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  lpil
                  </h3>
		          </div>
						
			          <div class="user-title">
									<span>Creator of Gleam</span>
			          </div>
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>I think it’s a really cool post! Elixir is clearly going in a very different direction to Gleam when it comes to types and I look forward to trying it. I can’t speculate what it’ll be like in the mean time, but I am excited for it.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="338911" data-batch-url="/posts/batch_likers">
                        1
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/how-much-more-crashproof-is-a-server-with-elixir-beam-compared-to-rusts-axum/65719/41">Post #40</a>
	                </div>
	            </div>
              <div id="likers-container-338911" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="338911"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #40"></div>
  </section>
</div>
</template></turbo-stream><turbo-stream action="replace" target="load-more-container"><template><div id="load-more-container" class="load-more-container">
    <a class="load-more-button" data-turbo-stream="true" href="/topics/65719/load_more?page=5">Load more posts (3 remaining)</a>
</div></template></turbo-stream>