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


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

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<aside class="quote group-Erlang-Core-Team" data-username="rvirding" data-post="5" data-topic="4513">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/rvirding/48/1409_2.png" class="avatar"> rvirding:</div>
<blockquote>
<p>Unless of course you use LFE, Lisp Flavoured Erlang, which is not imperative and behaves like Erlang and Elixir. <img src="https://forum.elixirforum.com/images/emoji/apple/wink.png?v=15" title=":wink:" class="emoji" alt=":wink:" loading="lazy" width="20" height="20"></p>
</blockquote>
</aside>
<p>Lol, true, I was speaking more of the common CLISP and Scheme implementations.  ^.^</p>
<p>LFE is awesome, I highly recommend everyone to play with it.  <img src="https://forum.elixirforum.com/images/emoji/apple/slight_smile.png?v=15" title=":slight_smile:" class="emoji" alt=":slight_smile:" loading="lazy" width="20" height="20"></p>
<aside class="quote no-group" data-username="vonH" data-post="7" data-topic="4513">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/letter_avatar_proxy/v4/letter/v/bc79bd/48.png" class="avatar"> vonH:</div>
<blockquote>
<p>I find it annoying that nearly every single cool new programming language does not interface to GUIs very well, Elixir and Erlang included. You can look up every new language and Github such as Wren or Lily and they all don’t interface to GUIs well. It seems that ever since the web came into being language developers have ignored the GUI aspect of their usage. So what I want to do is to create some kind of library which can analyze a language, and generate bindings to C based libraries.</p>
</blockquote>
</aside>
<p>GUI’s is a <em>hard</em> problem, QT is near the de-facto for native interfaces now, and HTML for the web.  I would not see why Elixir would have a direct interface regardless, it is design to be used on headless servers.</p>
<p>Also, there is ElixirScript, which is new but works, it lets you write javascript inside elixir as elixir code, which then gets sent as javascript out.  <img src="https://forum.elixirforum.com/images/emoji/apple/slight_smile.png?v=15" title=":slight_smile:" class="emoji" alt=":slight_smile:" loading="lazy" width="20" height="20"></p>
<aside class="quote no-group" data-username="peerreynders" data-post="8" data-topic="4513">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/peerreynders/48/5826_2.png" class="avatar"> peerreynders:</div>
<blockquote>
<p>Elm is easier than Haskell for becoming more familiar with functional programming but it makes certain tradeoffs that makes some people switch to PureScript for production apps - for the enhanced power which comes at the cost of a steeper learning curve.  And lets not forget about BuckleScript (OCaml again).</p>
</blockquote>
</aside>
<p>Yep, Elm is a fairly pure ML language, it is not like Haskell or OCaml, it is very limited, no higher typing of any sort, it is designed to be quick safe and fast to make simple HTML javascript programs, and it works well at that.</p>
<p>Bucklescsript is OCaml compiling to javascript, it is utterly fantastic, entirely safe and powerful, but it is a newer layer so is still getting libraries on it.  My own Bucklescript-tea library adds a near identical to elm interface for writing web programs if you like that style like I do.  <img src="https://forum.elixirforum.com/images/emoji/apple/slight_smile.png?v=15" title=":slight_smile:" class="emoji" alt=":slight_smile:" loading="lazy" width="20" height="20"></p>
<aside class="quote no-group" data-username="gon782" data-post="9" data-topic="4513">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/letter_avatar_proxy/v4/letter/g/eada6e/48.png" class="avatar"> gon782:</div>
<blockquote>
<p>TL;DR: Working on the BEAM is the only reasonable way to handle concurrency and building big systems that may or may not have to be spread out over several nodes,  so gluing things together with the BEAM is really the only reasonable way to work at the moment. That’s what these languages are for. They’re not really better in any other way.</p>
</blockquote>
</aside>
<p>You can ‘do’ about anything in any language, but this is the awesome part of Elixir/Erlang/LFE/etc.., they run on the EVM/BEAM, which is unmatched by anything else.  <img src="https://forum.elixirforum.com/images/emoji/apple/slight_smile.png?v=15" title=":slight_smile:" class="emoji" alt=":slight_smile:" loading="lazy" width="20" height="20"></p>
<p>You would not even necessarily ‘need’ to use Elixir either (other than it has a host of awesome libraries that are easier to use in it, but not necessary to use in it), any EVM/BEAM language would work.  <img src="https://forum.elixirforum.com/images/emoji/apple/slight_smile.png?v=15" title=":slight_smile:" class="emoji" alt=":slight_smile:" loading="lazy" width="20" height="20"></p>
<aside class="quote no-group" data-username="vonH" data-post="10" data-topic="4513">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/letter_avatar_proxy/v4/letter/v/bc79bd/48.png" class="avatar"> vonH:</div>
<blockquote>
<p>Can Elixir and Erlang be programmed in pure functonal style?</p>
</blockquote>
</aside>
<p>The both already are.  Any language that compiles straight to the EVM/BEAM must be because the EVM/BEAM must be.</p>
<aside class="quote no-group" data-username="vonH" data-post="10" data-topic="4513">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/letter_avatar_proxy/v4/letter/v/bc79bd/48.png" class="avatar"> vonH:</div>
<blockquote>
<p>What features of Elixir do I have to avoid if I am to keep it as close to the functional ideal as it is capable of?</p>
</blockquote>
</aside>
<p>Not much really, the Process Dictionary is probably the most un-functional-like thing but no one really uses that anyway…</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="29326" 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/why-would-i-choose-elixir-as-a-general-purpose-programming-language/4513/12">Post #11</a>
	                </div>
	            </div>
              <div id="likers-container-29326" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="29326"
                     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 #11"></div>
  </section>
</div>
    <div class="postbit" id="29367" data-post-id="29367">
  <section>
    <div class="post-wrap">


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

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>I personally think that a first-language choice is highly personal - because you are making the decision to learn it - so it will almost always be one that you are drawn to.</p>
<p>So checkout Elixir, Ruby, Python etc and learn the one that resonates with you the most. Which one ‘feels’ the nicest to you? You will probably be driven by your gut reaction (an area where Ruby and Elixir shine :-))</p>
<p>Why choose Elixir over other functional languages? For me the reasons are similar - it’s the one that I’m most attracted to. The fact that it offers things other functional languages might not (OTP - fault tolerance, highly concurrent, scalable) is what got me interested in learning another language to begin with.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="29367" data-batch-url="/posts/batch_likers">
                        2
                      </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/why-would-i-choose-elixir-as-a-general-purpose-programming-language/4513/13">Post #12</a>
	                </div>
	            </div>
              <div id="likers-container-29367" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="29367"
                     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 #12"></div>
  </section>
</div>
    <div class="postbit" id="157163" data-post-id="157163">
  <section>
    <div class="post-wrap">


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

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>To OP’s main post, I don’t use Elixir for everything. For scripts and such I use Nim since I can compile it to a binary and run it fast with minimal fuss or installation on target machines.</p>
<p>For just scripting, I don’t think Elixir is a good fit.</p>
<p>I do use Elixir for everything else, including real applications used by businesses and my pet projects.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="157163" 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/why-would-i-choose-elixir-as-a-general-purpose-programming-language/4513/30">Post #29</a>
	                </div>
	            </div>
              <div id="likers-container-157163" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="157163"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-last-post cat-last-post" title="Last post!"></div>
  </section>
</div>
</template></turbo-stream><turbo-stream action="replace" target="load-more-container"><template><div id="load-more-container" class="load-more-container">
    <span class="all-loaded">— All posts loaded —</span>
</div></template></turbo-stream>