# \[Official News\] Idris 2 version 0.2.1 Released

**URL:** <https://forum.devtalk.com/t/official-news-idris-2-version-0-2-1-released/4393>\
**Category:** Backend Official News\
**Tags:** newsbot, news, idris\
**Created:** [25 November 2020 21:04 UTC](https://forum.devtalk.com/t/official-news-idris-2-version-0-2-1-released/4393 "2020-11-25T21:04:13Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![NewsBot](https://forum.devtalk.com/user_avatar/forum.devtalk.com/newsbot/32/1114_2.png) [@NewsBot](https://forum.devtalk.com/u/NewsBot)\
**Post date:** [25 November 2020 21:04 UTC](https://forum.devtalk.com/t/official-news-idris-2-version-0-2-1-released/4393/1 "2020-11-25T21:04:13Z")

</div>

A new [Idris](https://devtalk.com/idris) blog post/announcement has been posted!

> [@](#):
>
> A new version (0.2.1) of Idris 2 has been released. You can download the source (including generated Scheme and Racket files for bootstrapping) from the [download page](https://www.idris-lang.org/pages/download.html).
> 
> To build it, you can either use a [bootstrapping version](https://github.com/edwinb/Idris2-boot) built in Idris 1, or (the simplest way), run make bootstrap to build from the generated Scheme. Full instructions are in INSTALL.md in the distribution.
> 
> Documentation is available [here](https://idris2.readthedocs.org/). To get started, you can see:
> 
> - [Installation instructions](https://idris2.readthedocs.io/en/latest/tutorial/starting.html) and how to get started
> - [Changes since Idris 1](https://idris2.readthedocs.io/en/latest/updates/updates.html)
> 
> The installation has worked successfully on Linux, Windows, Mac and Raspberry Pi. Please let us know (ideally via the [mailing list](https://www.idris-lang.org/pages/community.html)) how you get on with installing on other platforms.
> 
> Note that this is the last version that we guarantee will build with the [bootstrapping version](https://github.com/edwinb/Idris2-boot). Future versions will require at least Idris 2 version 0.2.1. The main changes since Idris 2 version 0.2.0 are:
> 
> ## Language changes:
> 
> - Bits8, Bits16, Bits32 and Bits64 primitive types added, with:
> 
> - Elaborator reflection and quoting terms
> 
> - Add import X as Y
> 
> - do notation can now be qualified with a namespace
> 
> ## Library changes:
> 
> - IO operations in the prelude and base libraries now use the HasIO interface, rather than using IO directly.
> 
> - Experimental Data.Linear.Array added to contrib, supporting mutable linear arrays with constant time read/write, convertible to immutable arrays with constant time read.
> 
> - Experimental Control.Linear.LIO added to contrib, supporting computations which track the multiplicities of their return values, which allows linear resources to be tracked.
> 
> - Added Control.Monad.ST, for update in-place via STRef (which is like IORef, but can escape from IO). Also added Data.Ref which provides an interface to both IORef and STRef.
> 
> - Added Control.ANSI in contrib, for usage of ANSI escape codes for text styling and cursor/screen control in terminals.
> 
> ## Command-line options changes:
> 
> - Removed --ide-mode-socket-with option. --ide-mode-socket now accepts an optional host:port argument.
> - Added options to override source directory, build directory and output directory: --source-dir, --build-dir, --output-dir.
> - These options are also available as fields in the package description: sourcedir, builddir, outputdir.
> 
> ## Compiler changes:
> 
> - It is now possible to create new backends with minimal overhead. Idris.Driver exposes the function mainWithCodegens that takes a list of codegens. The feature is documented [here](https://idris2.readthedocs.io/en/latest/backends/custom.html).
> - New code generators node and javascript.
> 
> ## REPL/IDE mode changes:
> 
> - Implemented :module command, to load a module during a REPL session.
> - Implemented :doc, which displays documentation for a name.
> - Implemented :browse, which lists the names exported by a namespace.
> - Added :psnext, which continues the previous proof search, looking for the next type correct expression
> - Correspondingly, added the IDE mode command proof-search-next (which takes no arguments)
> 
> - Added :gdnext, which continues the previous program search, looking for the next type correct implementation
> - Correspondingly, added the IDE mode command generate-def-next (which takes no arguments)
> 
> - Improved program search to allow deconstructing intermediate values, and in simple cases, the result of recursive calls.
> 
> Any issues you do find, please report via [the github issue tracker](https://github.com/idris-lang/Idris2/issues). We may not be able to fix them quickly (there's not many of us working on this full time after all) but it's still useful to know what they are!
> 
> Thanks to the many people who have contributed, whether by adding features, fixing code, reporting issues, or anything else. You can find a list of [contributors](https://github.com/idris-lang/Idris2/blob/master/CONTRIBUTORS) in the [GitHub repository](https://github.com/idris-lang/Idris2).
> 
> Have fun!

Get the full details here: [https://www.idris-lang.org/idris-2-version-021-released.html](https://www.idris-lang.org/idris-2-version-021-released.html)

---

<div class="post-metadata">

**Author:** ![bot](https://forum.devtalk.com/user_avatar/forum.devtalk.com/bot/32/1112_2.png) [@bot](https://forum.devtalk.com/u/bot)\
**Post date:** [25 November 2020 21:04 UTC](https://forum.devtalk.com/t/official-news-idris-2-version-0-2-1-released/4393/2 "2020-11-25T21:04:14Z")

</div>

> <https://twitter.com/dev_talk/status/1331705274726494212>

[Share link](https://twitter.com/intent/tweet?url=https://twitter.com/dev_talk/status/1331705274726494212&text=Idris%202%20version%200.2.1%20Released%20%23official-news%20%23official-programming-language-blog-posts%20%23news%20%23idris) for this tweet.
