Add random() for openarrays
Merge pull request #1363 from Araq/devel

Merge devel into master
Adds support for the ``.. code::`` rst directive.

This modifies the existing ``.. code-block::`` to be treated as spec
extension with a specific default language syntax. Also implements line
numbering.
Modifies docgen to support new warning message.
Improves macro tutorial with hyperlinks and numbered lines.
Hyperlinks quit related docstrings in system module.
Hyperlinks slurp related docstrings in system module.
More robust implementation for finding the beginning of the stack.

This patch inserts an extra stack frame above the function that
calls the actual Nimrod code and ensures that a reference to this
frame is stored as the stack bottom.
Add newSeqWith
Add count procedures to strutils
Add automatic MAP_POPULATE flag for opening read_only (MAP_PRIVATE) and shared (MAP_SHARED) mmap files.
Do not automatically use MAP_POPULATE for opening mmap files.

Adds use_map_populate keyword to memfiles.open and memfiles.mapMem
to govern MAP_POPULATE use. This is set to false by default.
Revert "Do not automatically use MAP_POPULATE for opening mmap files."

This reverts commit cba75db4e36b3af0d39b5717141a971e6d558554. The prior
commit yields a compiler error 'error: lvalue required as left operand
of assignment; MAP_POPULATE = ((int) 0);'. So for now this branch
*always* adds MAP_POPULATE when using the open and mapMem procs.
Only try to import MAP_POPULATE on Linux, define flag as 0 otherwise.
Handles :file: option for code blocks to avoid warnings.
Documents nimcache file naming scheme. Refs #852.
Makes ios example work again with new paths. Refs #852.
overlapping as a parameter for count instead
Corrects description of nimcache file naming. Refs #852.
Add list comprehensions to future module