|
8 | 8 | <div class="entry-summary">
|
9 | 9 | <h5>Elixir is a dynamic, functional language for building scalable and maintainable applications.</h5>
|
10 | 10 |
|
11 |
| - <p>Elixir strikes a balance between expressiveness and readability. It runs on the Erlang VM, known for creating low-latency, distributed, and fault-tolerant systems. These capabilities allow Elixir developers to be productive in several domains, such as web development, embedded software, data pipelines, and multimedia processing, across a wide range of industries.</p> |
| 11 | + <p>Elixir runs on the Erlang VM, known for creating low-latency, distributed, and fault-tolerant systems. These capabilities allow Elixir developers to be productive in several domains, such as web development, embedded software, data pipelines, and multimedia processing, across a wide range of industries.</p> |
12 | 12 |
|
13 | 13 | <p>Here is a peek:</p>
|
14 | 14 |
|
@@ -92,7 +92,7 @@ <h4>Fault-tolerance</h4>
|
92 | 92 | Supervisor.start_link(children, strategy: :one_for_one)
|
93 | 93 | {% endhighlight %}
|
94 | 94 |
|
95 |
| - <p>The combination of fault-tolerance and event-driven programming via message passing makes Elixir an excellent choice for reactive programming and robust architectures.</p> |
| 95 | + <p>The combination of fault-tolerance and event-driven programming via message passing makes Elixir an excellent choice for reactive programming and robust architectures. Frameworks, <a href="https://www.nerves-project.org/">such as Nerves</a>, build on this foundation to enable productive development of reliable embedded/IoT systems.</p> |
96 | 96 | </div>
|
97 | 97 | </div>
|
98 | 98 |
|
@@ -144,7 +144,9 @@ <h4>Extensibility and DSLs</h4>
|
144 | 144 | end
|
145 | 145 | {% endhighlight %}
|
146 | 146 |
|
147 |
| - <p>The <code>async: true</code> option allows <code>test</code>s to run in parallel, using as many CPU cores as possible, while the <code>assert</code> functionality can introspect your code, providing great reports in case of failures. Those features are built using Elixir macros, making it possible to add new constructs as if they were part of the language itself.</p> |
| 147 | + <p>The <code>async: true</code> option allows <code>test</code>s to run in parallel, using as many CPU cores as possible, while the <code>assert</code> functionality can introspect your code, providing great reports in case of failures.</p> |
| 148 | + |
| 149 | + <p>Other examples include using <a href="https://github.com/elixir-ecto/ecto">Elixir to write SQL queries</a>, <a href="https://github.com/elixir-nx/nx">compiling a subset of Elixir to the GPU</a>, and many more.</p> |
148 | 150 | </div>
|
149 | 151 | </div>
|
150 | 152 |
|
@@ -185,6 +187,8 @@ <h4>Interactive development</h4>
|
185 | 187 | iex> break! String.trim/1 # Sets a breakpoint in the String.trim/1 function
|
186 | 188 | iex> recompile # Recompiles the current project on the fly
|
187 | 189 | {% endhighlight %}
|
| 190 | + |
| 191 | + <p>Code notebooks like <a href="https://livebook.dev/">Livebook</a> allow you to interact with Elixir directly from your browser, including support for plotting, flowcharts, data tables, machine learning, and much more!</p> |
188 | 192 | </div>
|
189 | 193 | </div>
|
190 | 194 |
|
|
0 commit comments