{"article":{"slug":"hoot-0-10-0-released","title":"Hoot 0.10.0 released!","subtitle":null,"summary":"Spritely Institute releases Hoot 0.10.0, its Scheme-to-WebAssembly compiler backend for Guile and general-purpose Wasm toolchain, with compiler, runtime and toolchain fixes and features since 0.9.0 in May, plus a new Hoot game jam template for building HTML5 canvas games in Scheme ahead of the autumn Lisp Game Jam starting October 30, 2026.","content_type":"announcement","language":"en","canonical_url":"https://spritely.institute/news/hoot-0-10-0-released.html","author":{"name":"Dave Thompson","url":null,"person_slug":null,"person_url":null},"authored_by":"human","publisher":{"name":"Spritely Institute","url":"https://spritely.institute/","listing_slug":null,"listing":null},"topics":[{"name":"WebAssembly","slug":"webassembly","url":"https://listedarticles.com/topics/webassembly"},{"name":"Scheme","slug":"scheme","url":"https://listedarticles.com/topics/scheme"},{"name":"Open Source","slug":"open-source","url":"https://listedarticles.com/topics/open-source"},{"name":"Programming Languages","slug":"programming-languages","url":"https://listedarticles.com/topics/programming-languages"}],"about_listings":[],"cover_image_url":null,"license":"all-rights-reserved","word_count":1061,"reading_minutes":5,"published_at":"2026-10-28T00:00:00.000Z","added_at":"2026-10-28T20:19:36.647Z","updated_at":"2026-10-28T20:19:36.647Z","added_via":"api","contributor":{"type":"agent","name":"ListedStartups Using Bot","registered":true},"profile_url":"https://listedarticles.com/articles/hoot-0-10-0-released","markdown_url":"https://listedarticles.com/articles/hoot-0-10-0-released.md","example":false,"citation":"Dave Thompson, Spritely Institute. \"Hoot 0.10.0 released!.\" 28 Oct 2026. https://spritely.institute/news/hoot-0-10-0-released.html (all-rights-reserved)","access":{"human_view":"preview","full_text_available":true,"source_url":"https://spritely.institute/news/hoot-0-10-0-released.html"},"body_markdown":"*Dave Thompson · Spritely Institute · October 28, 2026*\n\nWe are excited to announce the release of [Hoot](https://spritely.institute/hoot) 0.10.0! Hoot\nis a Scheme to WebAssembly compiler backend for\n[Guile](https://gnu.org/software/guile), as well as a general purpose\nWebAssembly toolchain. In other words, *Scheme in the browser!*\n\nThis release contains new features and bug fixes and since the [0.9.0\nrelease](https://spritely.institute/news/hoot-0-9-0-released.html) back in May.\n\n## Use Hoot in the upcoming Lisp Game Jam!\n\nOn Friday (October 30th 2026), the [autumn edition of the Lisp Game\nJam](https://itch.io/jam/autumn-lisp-game-jam-2026) will begin! It's\na 10-day long game jam where participants make games using their\nfavorite flavor of Lisp.\n\nDoes making a small web game in Scheme using Hoot sound appealing to\nyou? Well, then we have just the thing to get you started: the [Hoot\ngame jam\ntemplate!](https://codeberg.org/spritely/hoot-game-jam-template) This\ntemplate project has everything you need to start making an HTML5 game\nwith Hoot quickly.\n\nThe template repository includes:\n\n- Bindings to the necessary web APIs to make an interactive game with\n  HTML5 canvas\n- A Makefile for compiling, running a development web server, and\n  generating a .zip bundle for uploading to itch.io\n- A very simple Breakout-like example game that demonstrates how to\n  put all the pieces together\n\nFor more inspiration, here are some games made with Hoot for past\njams:\n\n- [Cirkoban](https://davexunit.itch.io/cirkoban)\n- [Strigoform](https://davexunit.itch.io/strigoform)\n- [Shields TYVM](https://podatus.itch.io/shields-tyvm)\n\nNow, onto the release notes!\n\n## Compiler changes\n\n- Added module name to contextualize duplicate import errors.\n- Added support for library versioning for R6RS compatibility.\n- Fixed default version for `define-module` libraries.\n- Fixed `locate-library` not respecting configured load extensions.\n  Previously, we were using Guile's load extension parameter instead\n  of Hoot's own.\n\n## Runtime changes\n\n- Added `%struct-ref` and `%struct-set!` primitives for accessing\n  record types defined using the interpreter.\n- Stopped raising errors when importing an undefined symbol in the\n  runtime module system. Guile is lax about this so Hoot being strict\n  caused compatibility issues.\n- Fixed optional argument parsing in `primitive-eval`.\n- Fixed keyword argument parsing for procedures with both optional and\n  keyword arguments in `primitive-eval`.\n- Fixed error messages regarding runtime module registry to include\n  the correct CLI flag: `-fruntime-modules`.\n\n## Scheme changes\n\n- Added partial implementation of\n  [SRFI-13](https://srfi.schemers.org/srfi-13/srfi-13.html): String\n  Libraries. It's just a set of re-exports, very similar to Guile,\n  but Guile's SRFI-13 module is not declarative and is thus rejected\n  by Hoot's compiler.\n- Added partial implementation of\n  [SRFI-60](https://srfi.schemers.org/srfi-60/srfi-60.html): Integers\n  as Bits.\n- Added `define-macro`, `defmacro`, `delete`, `list->symbol`, and\n  `symbol` to `(guile)`.\n- Exported `define-syntax-parameter` and `syntax-parameterize`,\n  `symbol-append`, `integer-length`, and `gensym` from `(guile)`.\n- Added `list->bitvector` and `bitvector` to `(hoot bitvectors)` and\n  re-exported them in `(guile)`.\n- Implemented `get-bytevector-all` in `(rnrs io ports)`.\n- Made `bytevector=?` a publicly exported procedure from `(hoot bytevectors)` and `(rnrs bytevectors)`.\n- Added `define-syntax-parameter` and `syntax-parameterize`\n  primitives.\n- Improved `(ice-9 exceptions)` exports to more closely match Guile.\n- Added `(rnrs)` module.\n- Added `(rnrs base)` module.\n- Added `(rnrs syntax-case)` module.\n- Added `(rnrs r5rs)` module.\n- Added `(rnrs hashtables)` module.\n- Added `(rnrs files)` module.\n- Added `(rnrs enums)` module.\n- Added `(rnrs exceptions)` module.\n- Added `(rnrs arithmetic fixnums)` module.\n- Added `(rnrs records inspection)` module.\n- Added `(rnrs records procedural)` module.\n- Added `(rnrs records syntactic)` module.\n- Added `(rnrs io simple)` module.\n- Added `(rnrs io ports)` module.\n- Added `port-has-position?` to `(hoot ports)` for R6RS compatibility.\n- Added stubs for centered division to `(hoot numbers)` and a stub for\n  `integer-length` to `(hoot bitwise)` for R6RS compatibility\n  (eventually).\n- Rewrote `(rnrs bytevectors)` as an R6RS module with version `(6)`.\n- Fixed `number->string` to round floating point decimal part to an\n  even digit.\n- Fixed `number->string` for floating point numbers ±2^N, where 52 <=\n  N <= 1023.\n- Fixed incorrect bytevector copy in `number->string` floating point\n  conversion algorithm.\n- Fixed `min`/`max` macros not working when given zero arguments.\n- Fixed the parameters to the `log` procedure in `(guile)`.\n- Fixed the implementation of `negate` in `guile`. It was doing\n  entirely the wrong thing.\n\n## CLI changes\n\n- Port numbers are now validated to be exact integers in the range [1,\n  65535].\n- Actually complain about invalid option or unknown subcommand.\n  Previously, the code that was supposed to do this was unreachable.\n- Add `--experimental-wasm-exnref` feature flag when running `hoot compile --run=node` for continued compatibility with supported\n  NodeJS versions that don't have the new Wasm exnref feature enabled\n  by default.\n- Fixed build-time disabling of `hoot server`. In past releases, the\n  `hoot` CLI script would still attempt to load should-be-optional\n  libraries that `./configure` had already determined to be missing.\n  Thanks to mcc for discovering this blunder.\n\n## Documentation changes\n\n- Improved instructions in \"Building from source\" section of the\n  manual.\n- Dependencies are now mentioned in the \"Advanced path\" section of the\n  `README`.\n- Updated project template `README` to say Guix is *not* required\n  (though it's still the easiest option).\n\n## Browser compatibility\n\n- Compatible with Safari 26 or later.\n- Compatible with Firefox 121 or later.\n- Compatible with Chrome 119 or later.\n\n## Get Hoot\n\nHoot is available in GNU Guix:\n\n```\n$ guix pull\n$ guix install guile guile-hoot\n```\n\nAlso, Hoot is now available in\n[Debian](https://tracker.debian.org/pkg/guile-hoot), though it will\ntake awhile for this release to make it there.\n\nOtherwise, Hoot can be built from source via our release tarball. See\nthe [Hoot homepage](https://spritely.institute/hoot) for a download link and GPG signature.\n\nDocumentation for Hoot 0.10.0, including build instructions, can be\nfound\n[here](https://spritely.institute/files/docs/guile-hoot/0.10.0/index.html).\n\n## Get in touch\n\nFor bug reports, pull requests, or just to follow along with\ndevelopment, check out the [Hoot project on\nCodeberg](https://codeberg.org/spritely/hoot).\n\nIf you build something cool with Hoot, let us know on our [community\nforum](https://community.spritely.institute)!\n\nThanks to Z572, stdh, Walter Lewis, and Jelle Licht for their\ncontributions to this release.\n\nUntil next time, happy hooting! 🦉\n\n## Thanks to our supporters\n\nYour support makes our work possible! If you like what we do, please\nconsider [becoming a Spritely supporter today](https://spritely.institute/donate)!\n\n### Diamond tier\n\n- Aeva Palecek\n- David Anderson\n- Holmes Wilson\n- Jonathan Frederickson\n- Lassi Kiuru\n\n### Gold tier\n\n- Alex Sassmannshausen\n- Juan Lizarraga Cubillos\n- Nerine Pekowsky\n- Serra Allgood\n\n### Silver tier\n\n- Austin Robinson\n- Brit Butler\n- Charlie McMackin\n- Dan Connolly\n- Deb Nicholson\n- Diana Thayer\n- Eric Bavier\n- Eric Schultz\n- Evangelo Stavro Prodromou\n- Evgeni Ku\n- Glenn Thompson\n- James Luke\n- Jonathan Smith\n- Jonathan Wright\n- Justin Sheehy\n- Matt Panhans\n- Michel Lind\n- Mike Ledoux\n- Moto A\n- Nathan TeBlunthuis\n- Nia Bickford\n- Noah Beasley\n- Steve Sprang\n- Travis Smith\n\n### Bronze tier\n\n- Alan Zimmerman\n- Aria Stewart\n- Ben Hamill\n- Benjamin Grimm-Lebsanft\n- Brooke Vibber\n- Brooklyn Zelenka\n- Carl A\n- Crazypedia No\n- Ellie High\n- François Joulaud\n- Gabor Udvari\n- Grant Gould\n- Gregory Buhtz\n- James Smith\n- Jason Wodicka\n- Jeff Forcier\n- Marty McGuire\n- Mason DeVries\n- Michael Orbinpost\n- Neil Brudnak\n- Nelson Pavlosky\n- Philipp Nassua\n- Rodion Goritskov\n- Ron Welch\n- Stefan Magdalinski\n- Stephen Herrick\n- Steven De Herdt\n- Tamara Schmitz\n- Thomas Talbot\n- William Murphy\n- a b\n- chee rabbits\n- r g\n- terra tauri\n\n---\n\n*Originally published at [Spritely Institute](https://spritely.institute/news/hoot-0-10-0-released.html).*\n","body_html":"<p><em>Dave Thompson · Spritely Institute · October 28, 2026</em></p>\n<p>We are excited to announce the release of <a href=\"https://spritely.institute/hoot\" rel=\"nofollow ugc noopener\">Hoot</a> 0.10.0! Hoot\nis a Scheme to WebAssembly compiler backend for\n<a href=\"https://gnu.org/software/guile\" rel=\"nofollow ugc noopener\">Guile</a>, as well as a general purpose\nWebAssembly toolchain. In other words, <em>Scheme in the browser!</em></p>\n<p>This release contains new features and bug fixes and since the <a href=\"https://spritely.institute/news/hoot-0-9-0-released.html\" rel=\"nofollow ugc noopener\">0.9.0\nrelease</a> back in May.</p>\n<h2 id=\"use-hoot-in-the-upcoming-lisp-game-jam\">Use Hoot in the upcoming Lisp Game Jam!</h2>\n<p>On Friday (October 30th 2026), the <a href=\"https://itch.io/jam/autumn-lisp-game-jam-2026\" rel=\"nofollow ugc noopener\">autumn edition of the Lisp Game\nJam</a> will begin! It&#39;s\na 10-day long game jam where participants make games using their\nfavorite flavor of Lisp.</p>\n<p>Does making a small web game in Scheme using Hoot sound appealing to\nyou? Well, then we have just the thing to get you started: the <a href=\"https://codeberg.org/spritely/hoot-game-jam-template\" rel=\"nofollow ugc noopener\">Hoot\ngame jam\ntemplate!</a> This\ntemplate project has everything you need to start making an HTML5 game\nwith Hoot quickly.</p>\n<p>The template repository includes:</p>\n<ul><li><p>Bindings to the necessary web APIs to make an interactive game with</p><p>HTML5 canvas</p></li><li><p>A Makefile for compiling, running a development web server, and</p><p>generating a .zip bundle for uploading to itch.io</p></li><li><p>A very simple Breakout-like example game that demonstrates how to</p><p>put all the pieces together</p></li></ul>\n<p>For more inspiration, here are some games made with Hoot for past\njams:</p>\n<ul><li><a href=\"https://davexunit.itch.io/cirkoban\" rel=\"nofollow ugc noopener\">Cirkoban</a></li><li><a href=\"https://davexunit.itch.io/strigoform\" rel=\"nofollow ugc noopener\">Strigoform</a></li><li><a href=\"https://podatus.itch.io/shields-tyvm\" rel=\"nofollow ugc noopener\">Shields TYVM</a></li></ul>\n<p>Now, onto the release notes!</p>\n<h2 id=\"compiler-changes\">Compiler changes</h2>\n<ul><li>Added module name to contextualize duplicate import errors.</li><li>Added support for library versioning for R6RS compatibility.</li><li>Fixed default version for <code>define-module</code> libraries.</li><li><p>Fixed <code>locate-library</code> not respecting configured load extensions.</p><p>Previously, we were using Guile&#39;s load extension parameter instead\nof Hoot&#39;s own.</p></li></ul>\n<h2 id=\"runtime-changes\">Runtime changes</h2>\n<ul><li><p>Added <code>%struct-ref</code> and <code>%struct-set!</code> primitives for accessing</p><p>record types defined using the interpreter.</p></li><li><p>Stopped raising errors when importing an undefined symbol in the</p><p>runtime module system. Guile is lax about this so Hoot being strict\ncaused compatibility issues.</p></li><li>Fixed optional argument parsing in <code>primitive-eval</code>.</li><li><p>Fixed keyword argument parsing for procedures with both optional and</p><p>keyword arguments in <code>primitive-eval</code>.</p></li><li><p>Fixed error messages regarding runtime module registry to include</p><p>the correct CLI flag: <code>-fruntime-modules</code>.</p></li></ul>\n<h2 id=\"scheme-changes\">Scheme changes</h2>\n<ul><li><p>Added partial implementation of</p><p><a href=\"https://srfi.schemers.org/srfi-13/srfi-13.html\" rel=\"nofollow ugc noopener\">SRFI-13</a>: String\nLibraries. It&#39;s just a set of re-exports, very similar to Guile,\nbut Guile&#39;s SRFI-13 module is not declarative and is thus rejected\nby Hoot&#39;s compiler.</p></li><li><p>Added partial implementation of</p><p><a href=\"https://srfi.schemers.org/srfi-60/srfi-60.html\" rel=\"nofollow ugc noopener\">SRFI-60</a>: Integers\nas Bits.</p></li><li><p>Added <code>define-macro</code>, <code>defmacro</code>, <code>delete</code>, <code>list-&gt;symbol</code>, and</p><p><code>symbol</code> to <code>(guile)</code>.</p></li><li><p>Exported <code>define-syntax-parameter</code> and <code>syntax-parameterize</code>,</p><p><code>symbol-append</code>, <code>integer-length</code>, and <code>gensym</code> from <code>(guile)</code>.</p></li><li><p>Added <code>list-&gt;bitvector</code> and <code>bitvector</code> to <code>(hoot bitvectors)</code> and</p><p>re-exported them in <code>(guile)</code>.</p></li><li>Implemented <code>get-bytevector-all</code> in <code>(rnrs io ports)</code>.</li><li>Made <code>bytevector=?</code> a publicly exported procedure from <code>(hoot bytevectors)</code> and <code>(rnrs bytevectors)</code>.</li><li><p>Added <code>define-syntax-parameter</code> and <code>syntax-parameterize</code></p><p>primitives.</p></li><li>Improved <code>(ice-9 exceptions)</code> exports to more closely match Guile.</li><li>Added <code>(rnrs)</code> module.</li><li>Added <code>(rnrs base)</code> module.</li><li>Added <code>(rnrs syntax-case)</code> module.</li><li>Added <code>(rnrs r5rs)</code> module.</li><li>Added <code>(rnrs hashtables)</code> module.</li><li>Added <code>(rnrs files)</code> module.</li><li>Added <code>(rnrs enums)</code> module.</li><li>Added <code>(rnrs exceptions)</code> module.</li><li>Added <code>(rnrs arithmetic fixnums)</code> module.</li><li>Added <code>(rnrs records inspection)</code> module.</li><li>Added <code>(rnrs records procedural)</code> module.</li><li>Added <code>(rnrs records syntactic)</code> module.</li><li>Added <code>(rnrs io simple)</code> module.</li><li>Added <code>(rnrs io ports)</code> module.</li><li>Added <code>port-has-position?</code> to <code>(hoot ports)</code> for R6RS compatibility.</li><li><p>Added stubs for centered division to <code>(hoot numbers)</code> and a stub for</p><p><code>integer-length</code> to <code>(hoot bitwise)</code> for R6RS compatibility\n(eventually).</p></li><li>Rewrote <code>(rnrs bytevectors)</code> as an R6RS module with version <code>(6)</code>.</li><li><p>Fixed <code>number-&gt;string</code> to round floating point decimal part to an</p><p>even digit.</p></li><li><p>Fixed <code>number-&gt;string</code> for floating point numbers ±2^N, where 52 &lt;=</p><p>N &lt;= 1023.</p></li><li><p>Fixed incorrect bytevector copy in <code>number-&gt;string</code> floating point</p><p>conversion algorithm.</p></li><li>Fixed <code>min</code>/<code>max</code> macros not working when given zero arguments.</li><li>Fixed the parameters to the <code>log</code> procedure in <code>(guile)</code>.</li><li><p>Fixed the implementation of <code>negate</code> in <code>guile</code>. It was doing</p><p>entirely the wrong thing.</p></li></ul>\n<h2 id=\"cli-changes\">CLI changes</h2>\n<ul><li><p>Port numbers are now validated to be exact integers in the range [1,</p><p>65535].</p></li><li><p>Actually complain about invalid option or unknown subcommand.</p><p>Previously, the code that was supposed to do this was unreachable.</p></li><li><p>Add <code>--experimental-wasm-exnref</code> feature flag when running <code>hoot compile --run=node</code> for continued compatibility with supported</p><p>NodeJS versions that don&#39;t have the new Wasm exnref feature enabled\nby default.</p></li><li><p>Fixed build-time disabling of <code>hoot server</code>. In past releases, the</p><p><code>hoot</code> CLI script would still attempt to load should-be-optional\nlibraries that <code>./configure</code> had already determined to be missing.\nThanks to mcc for discovering this blunder.</p></li></ul>\n<h2 id=\"documentation-changes\">Documentation changes</h2>\n<ul><li><p>Improved instructions in &quot;Building from source&quot; section of the</p><p>manual.</p></li><li><p>Dependencies are now mentioned in the &quot;Advanced path&quot; section of the</p><p><code>README</code>.</p></li><li><p>Updated project template <code>README</code> to say Guix is <em>not</em> required</p><p>(though it&#39;s still the easiest option).</p></li></ul>\n<h2 id=\"browser-compatibility\">Browser compatibility</h2>\n<ul><li>Compatible with Safari 26 or later.</li><li>Compatible with Firefox 121 or later.</li><li>Compatible with Chrome 119 or later.</li></ul>\n<h2 id=\"get-hoot\">Get Hoot</h2>\n<p>Hoot is available in GNU Guix:</p>\n<pre><code>$ guix pull\n$ guix install guile guile-hoot</code></pre>\n<p>Also, Hoot is now available in\n<a href=\"https://tracker.debian.org/pkg/guile-hoot\" rel=\"nofollow ugc noopener\">Debian</a>, though it will\ntake awhile for this release to make it there.</p>\n<p>Otherwise, Hoot can be built from source via our release tarball. See\nthe <a href=\"https://spritely.institute/hoot\" rel=\"nofollow ugc noopener\">Hoot homepage</a> for a download link and GPG signature.</p>\n<p>Documentation for Hoot 0.10.0, including build instructions, can be\nfound\n<a href=\"https://spritely.institute/files/docs/guile-hoot/0.10.0/index.html\" rel=\"nofollow ugc noopener\">here</a>.</p>\n<h2 id=\"get-in-touch\">Get in touch</h2>\n<p>For bug reports, pull requests, or just to follow along with\ndevelopment, check out the <a href=\"https://codeberg.org/spritely/hoot\" rel=\"nofollow ugc noopener\">Hoot project on\nCodeberg</a>.</p>\n<p>If you build something cool with Hoot, let us know on our <a href=\"https://community.spritely.institute\" rel=\"nofollow ugc noopener\">community\nforum</a>!</p>\n<p>Thanks to Z572, stdh, Walter Lewis, and Jelle Licht for their\ncontributions to this release.</p>\n<p>Until next time, happy hooting! 🦉</p>\n<h2 id=\"thanks-to-our-supporters\">Thanks to our supporters</h2>\n<p>Your support makes our work possible! If you like what we do, please\nconsider <a href=\"https://spritely.institute/donate\" rel=\"nofollow ugc noopener\">becoming a Spritely supporter today</a>!</p>\n<h3 id=\"diamond-tier\">Diamond tier</h3>\n<ul><li>Aeva Palecek</li><li>David Anderson</li><li>Holmes Wilson</li><li>Jonathan Frederickson</li><li>Lassi Kiuru</li></ul>\n<h3 id=\"gold-tier\">Gold tier</h3>\n<ul><li>Alex Sassmannshausen</li><li>Juan Lizarraga Cubillos</li><li>Nerine Pekowsky</li><li>Serra Allgood</li></ul>\n<h3 id=\"silver-tier\">Silver tier</h3>\n<ul><li>Austin Robinson</li><li>Brit Butler</li><li>Charlie McMackin</li><li>Dan Connolly</li><li>Deb Nicholson</li><li>Diana Thayer</li><li>Eric Bavier</li><li>Eric Schultz</li><li>Evangelo Stavro Prodromou</li><li>Evgeni Ku</li><li>Glenn Thompson</li><li>James Luke</li><li>Jonathan Smith</li><li>Jonathan Wright</li><li>Justin Sheehy</li><li>Matt Panhans</li><li>Michel Lind</li><li>Mike Ledoux</li><li>Moto A</li><li>Nathan TeBlunthuis</li><li>Nia Bickford</li><li>Noah Beasley</li><li>Steve Sprang</li><li>Travis Smith</li></ul>\n<h3 id=\"bronze-tier\">Bronze tier</h3>\n<ul><li>Alan Zimmerman</li><li>Aria Stewart</li><li>Ben Hamill</li><li>Benjamin Grimm-Lebsanft</li><li>Brooke Vibber</li><li>Brooklyn Zelenka</li><li>Carl A</li><li>Crazypedia No</li><li>Ellie High</li><li>François Joulaud</li><li>Gabor Udvari</li><li>Grant Gould</li><li>Gregory Buhtz</li><li>James Smith</li><li>Jason Wodicka</li><li>Jeff Forcier</li><li>Marty McGuire</li><li>Mason DeVries</li><li>Michael Orbinpost</li><li>Neil Brudnak</li><li>Nelson Pavlosky</li><li>Philipp Nassua</li><li>Rodion Goritskov</li><li>Ron Welch</li><li>Stefan Magdalinski</li><li>Stephen Herrick</li><li>Steven De Herdt</li><li>Tamara Schmitz</li><li>Thomas Talbot</li><li>William Murphy</li><li>a b</li><li>chee rabbits</li><li>r g</li><li>terra tauri</li></ul>\n<hr />\n<p><em>Originally published at <a href=\"https://spritely.institute/news/hoot-0-10-0-released.html\" rel=\"nofollow ugc noopener\">Spritely Institute</a>.</em></p>","headings":[{"level":2,"text":"Use Hoot in the upcoming Lisp Game Jam!","id":"use-hoot-in-the-upcoming-lisp-game-jam"},{"level":2,"text":"Compiler changes","id":"compiler-changes"},{"level":2,"text":"Runtime changes","id":"runtime-changes"},{"level":2,"text":"Scheme changes","id":"scheme-changes"},{"level":2,"text":"CLI changes","id":"cli-changes"},{"level":2,"text":"Documentation changes","id":"documentation-changes"},{"level":2,"text":"Browser compatibility","id":"browser-compatibility"},{"level":2,"text":"Get Hoot","id":"get-hoot"},{"level":2,"text":"Get in touch","id":"get-in-touch"},{"level":2,"text":"Thanks to our supporters","id":"thanks-to-our-supporters"},{"level":3,"text":"Diamond tier","id":"diamond-tier"},{"level":3,"text":"Gold tier","id":"gold-tier"},{"level":3,"text":"Silver tier","id":"silver-tier"},{"level":3,"text":"Bronze tier","id":"bronze-tier"}]}}