Skip to content

Commit

Permalink
Deploying to gh-pages from @ aa565dc 🚀
Browse files Browse the repository at this point in the history
  • Loading branch information
housel committed Jun 20, 2024
1 parent 10bc790 commit d49c37f
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 2 deletions.
13 changes: 13 additions & 0 deletions _sources/release-notes/2024.2.rst.txt
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,19 @@ Compiler
* The build rules for unified executables now properly depend on
copying included run-time libraries such as libunwind.

* Optimizations that allow the type of ``if`` expressions to be more
accurately estimated have been improved. For example, in this
function:

.. code-block::
define function if-example (arg :: false-or(<integer>)) => (result :: <integer>);
min(arg | 20, 30)
end;
the comparison can now be properly inlined because the first
argument to :drm:`min` is known to be an :drm:`<integer>`.

Tools
=====

Expand Down
13 changes: 12 additions & 1 deletion release-notes/2024.2.html
Original file line number Diff line number Diff line change
Expand Up @@ -564,11 +564,22 @@ <h1>Open Dylan 2024.2<a class="headerlink" href="#open-dylan-2024-2" title="Perm
</ul>
<section id="compiler">
<h2>Compiler<a class="headerlink" href="#compiler" title="Permalink to this heading"></a></h2>
<ul class="simple">
<ul>
<li><p>Unified executables now export symbols so that call stack dumping
works properly.</p></li>
<li><p>The build rules for unified executables now properly depend on
copying included run-time libraries such as libunwind.</p></li>
<li><p>Optimizations that allow the type of <code class="docutils literal notranslate"><span class="pre">if</span></code> expressions to be more
accurately estimated have been improved. For example, in this
function:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">define</span> <span class="n">function</span> <span class="k">if</span><span class="o">-</span><span class="n">example</span> <span class="p">(</span><span class="n">arg</span> <span class="p">::</span> <span class="n">false</span><span class="o">-</span><span class="ow">or</span><span class="p">(</span><span class="o">&lt;</span><span class="n">integer</span><span class="o">&gt;</span><span class="p">))</span> <span class="o">=&gt;</span> <span class="p">(</span><span class="n">result</span> <span class="p">::</span> <span class="o">&lt;</span><span class="n">integer</span><span class="o">&gt;</span><span class="p">);</span>
<span class="nb">min</span><span class="p">(</span><span class="n">arg</span> <span class="o">|</span> <span class="mi">20</span><span class="p">,</span> <span class="mi">30</span><span class="p">)</span>
<span class="n">end</span><span class="p">;</span>
</pre></div>
</div>
<p>the comparison can now be properly inlined because the first
argument to <a class="reference external" href="https://opendylan.org/books/drm/Equality_and_Comparison#min"><code class="xref drm docutils literal notranslate"><span class="pre">min</span></code></a> is known to be an <a class="reference external" href="https://opendylan.org/books/drm/Number_Classes#integer"><code class="xref drm docutils literal notranslate"><span class="pre">&lt;integer&gt;</span></code></a>.</p>
</li>
</ul>
</section>
<section id="tools">
Expand Down
2 changes: 1 addition & 1 deletion searchindex.js

Large diffs are not rendered by default.

0 comments on commit d49c37f

Please sign in to comment.