Skip to content

Commit

Permalink
Improved release news entry.
Browse files Browse the repository at this point in the history
  • Loading branch information
dom96 committed Dec 26, 2014
1 parent c0207db commit 3850426
Showing 1 changed file with 61 additions and 8 deletions.
69 changes: 61 additions & 8 deletions web/news.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,67 @@ News
2014-10-21 Version 0.10.2 released
==================================

This release is the latest release before the release canditates for version
1.0 roll in. Starting with version 0.10.2 the rename of the language to Nim
is officially complete. As the list of language changes is quite long it's
much more work to update the average Nim project than used to be the case.
However there is a new tool, `nimfix <nimfix.html>`_ to help you
in updating your code from Nimrod to Nim. This tool is unfortunately not
perfect but has been used to update thousands of lines of code successfully.

This release marks the completion of a very important change to the project:
the official renaming from Nimrod to Nim. Version 0.10.2 contains many language
changes, some of which may break your existing code. For your convenience, we
added a new tool called `nimfix <nimfix.html>`_ that will help you convert your
existing projects so that it works with the latest version of the compiler.

Progress towards version 1.0
~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Although Nim is still pre-1.0, we were able to keep the number of breaking
changes to a minimum so far. Starting with version 1.0, we will not introduce
any breaking changes between major release versions.
One of Nim's goals is to ensure that the compiler is as efficient as possible.
Take a look at the
`latest benchmarks <https://github.com/logicchains/LPATHBench/blob/master/writeup.md>`_,
which show that Nim is consistently near
the top and already nearly as fast as C and C++. Recent developments, such as
the new ``asyncdispatch`` module will allow you to write efficient web server
applications using non-blocking code. Nim now also has a built-in thread pool
for lightweight threading through the use of ``spawn``.

The unpopular "T" and "P" prefixes on types have been deprecated. Nim also
became more expressive by weakening the distinction between statements and
epxressions. We also added new and searchable forums, a new website, and our
documentation generator ``docgen`` has seen major improvements.

What's left to be done
~~~~~~~~~~~~~~~~~~~~~~

The 1.0 release is actually very close. There are only a couple of last
things that need to be done:

* Implementing static[T] properly
* Support for the overloading of the assignment operator

Of course, the 1.0 release is not an end to the development of Nim.
It is very much the beginning and we will be fleshing out the then
stable language.

Nimble and other Nim tools
~~~~~~~~~~~~~~~~~~~~~~~~~~

Outside of the language and the compiler itself many Nim tools have seen
considerable improvements.

Babel the Nim package manager has been renamed to Nimble. Nimble's purpose
is the installation of packages containing libraries and/or applications
written in Nim.
Even though Nimble is still very young it already is very
functional. It can install packages by name, it does so by accessing a
packages repository which is hosted on a Github repo. Packages can also be
installed via a Git repo URL or Mercurial repo URL. The package repository
is searchable through Nimble. Anyone is free to add their own packages to
the package repository by forking the
`nim-lang/packages <https://github.com/nim-lang/packages>`_ repo and creating
a pull request. Nimble is fully cross-platform and should be fully functional
on all major operating systems.
It is of course completely written in Nim.

Changelog
~~~~~~~~~

Changes affecting backwards compatibility
-----------------------------------------
Expand Down

0 comments on commit 3850426

Please sign in to comment.