<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent posts to news</title><link href="https://sourceforge.net/p/minty/news/" rel="alternate"/><link href="https://sourceforge.net/p/minty/news/feed.atom" rel="self"/><id>https://sourceforge.net/p/minty/news/</id><updated>2009-02-18T17:03:05Z</updated><subtitle>Recent posts to news</subtitle><entry><title>New release: minty2009-02-18-2</title><link href="https://sourceforge.net/p/minty/news/2009/02/new-release-minty2009-02-18-2/" rel="alternate"/><published>2009-02-18T17:03:05Z</published><updated>2009-02-18T17:03:05Z</updated><author><name>Martin Rodgers</name><uri>https://sourceforge.net/u/mcrodgers/</uri></author><id>https://sourceforge.net3fe4c8322cca3eaa90db4c82a194a5b495e2d069</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;A new release, minty2009-02-18-2.tar.gz, is available from the downloads section. This is still very alpha and doesn't yet generate code. It supports a subset of the R6RS core language only: no modules, no macros, and only a few primitives. OTOH, the code itself is R6RS and has been tested successfully with 4 different implementations. Many improvements have been made, esp in the inliner and letrec handling.&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>R6RS Support</title><link href="https://sourceforge.net/p/minty/news/2009/02/r6rs-support/" rel="alternate"/><published>2009-02-18T16:54:34Z</published><updated>2009-02-18T16:54:34Z</updated><author><name>Martin Rodgers</name><uri>https://sourceforge.net/u/mcrodgers/</uri></author><id>https://sourceforge.netf0f659e33a818b37ba045a7f5313f04aa7ffba08</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Minty has been rewritten in R6RS and is now hosted by Larceny, Ikarus, PLT and Ypsilon.&lt;/p&gt;
&lt;p&gt;Other changes include temporary removal of macro and module support pending rewrites, and improved inlining and letrec implementation.&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Summary of changes during 2006</title><link href="https://sourceforge.net/p/minty/news/2006/12/summary-of-changes-during-2006/" rel="alternate"/><published>2006-12-31T20:32:58Z</published><updated>2006-12-31T20:32:58Z</updated><author><name>Martin Rodgers</name><uri>https://sourceforge.net/u/mcrodgers/</uri></author><id>https://sourceforge.netb2e055a424b7d51bd6fb99fca5e2bd1087207a7e</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hygienic macro language implemented&lt;br /&gt;
Began using define-datatype (caught many bugs with this)&lt;br /&gt;
New record types for representing code trees (using define-datatype)&lt;br /&gt;
Compiler exception handling and unit testing&lt;br /&gt;
Petite Larceny hosting (breaks with each new PL release)&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Macros are go</title><link href="https://sourceforge.net/p/minty/news/2005/11/macros-are-go/" rel="alternate"/><published>2005-11-15T22:20:29Z</published><updated>2005-11-15T22:20:29Z</updated><author><name>Martin Rodgers</name><uri>https://sourceforge.net/u/mcrodgers/</uri></author><id>https://sourceforge.net1d67ef7425fb751a133a084eebb02be4a41a8892</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Finally, work on the macro processing begins!&lt;/p&gt;
&lt;p&gt;This should have been done from the start, but it took me a long time to study and understand hygenic macro processing, so I defered that feature of the compiler. Unfortunately, it has a huge impact on the structure of the semantic analysis code, so that needs rewriting.&lt;/p&gt;
&lt;p&gt;The good news is that this is all progressing smoothly.&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Code that runs</title><link href="https://sourceforge.net/p/minty/news/2005/01/code-that-runs/" rel="alternate"/><published>2005-01-29T19:44:23Z</published><updated>2005-01-29T19:44:23Z</updated><author><name>Martin Rodgers</name><uri>https://sourceforge.net/u/mcrodgers/</uri></author><id>https://sourceforge.net9ca2e2ef7a2aa7b6dc09571c9f7c013bfff142a0</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;The code generator is now operational and using the Guile API for the runtime, in order to save time. The inliner rewrite went well, so the lambda lifting stage should be given some attention soon. Then perhaps the unit testing can begin.&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Inliner rewrite</title><link href="https://sourceforge.net/p/minty/news/2005/01/inliner-rewrite/" rel="alternate"/><published>2005-01-09T20:41:09Z</published><updated>2005-01-09T20:41:09Z</updated><author><name>Martin Rodgers</name><uri>https://sourceforge.net/u/mcrodgers/</uri></author><id>https://sourceforge.net109f638ae37dceeef61698abb412d1776dbb28be</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;The inliner is currently being rewritten. As this is the backbone of the compiler, many other parts are also being rewritten. However, the main work is on the inliner. The CPS transform used to preceed inlining, but now it'll follow it.&lt;/p&gt;
&lt;p&gt;So the structure will now be: Parser -&amp;gt; Semantic Analysis -&amp;gt; Inlining -&amp;gt; CPS transform -&amp;gt; Closure Analysis -&amp;gt; Lambda lifting -&amp;gt; Code generation. The inliner will therefore process the AST in Direct Style instead of Continuation Passing Style. Also, the inliner is now using implicit continuations instead of explicit. Scheme features like call/cc should make the explicit style unnecessary.&lt;/p&gt;
&lt;p&gt;I expect the type analysis will be restored at some point, but I'm not sure yet where. It used to preceed inlining, giving a limited form of type-directed partial evaluation, but now I expect to find it more useful at a later stage, like just before code generation.&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Partial evaluation of record expressions</title><link href="https://sourceforge.net/p/minty/news/2004/11/partial-evaluation-of-record-expressions/" rel="alternate"/><published>2004-11-26T19:26:39Z</published><updated>2004-11-26T19:26:39Z</updated><author><name>Martin Rodgers</name><uri>https://sourceforge.net/u/mcrodgers/</uri></author><id>https://sourceforge.neta0e39f87205238149dcf9c2b8573011c4b573173</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Record ops are now represented in the AST, allowing the inliner to optimise records directly. Factorial now residualises to the following code.&lt;/p&gt;
&lt;p&gt;(seq (seq (minty:display-fixnum 120 2)&lt;br /&gt;
(minty:display-char (minty:integer-&amp;gt;char 13) 2))&lt;br /&gt;
(minty:halt))&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Initial Prerelease</title><link href="https://sourceforge.net/p/minty/news/2004/08/initial-prerelease/" rel="alternate"/><published>2004-08-14T18:51:38Z</published><updated>2004-08-14T18:51:38Z</updated><author><name>Martin Rodgers</name><uri>https://sourceforge.net/u/mcrodgers/</uri></author><id>https://sourceforge.net89f39d1444d21c4ba39144ab3bab70d47cf64070</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;An alpha version of the compiler has been prereleased. At this point, the only output is diagnostics that vaguely resembles code. No runtime library or unit tests are included yet.&lt;/p&gt;&lt;/div&gt;</summary></entry></feed>