nim-wiki/Unofficial-FAQ.md

41 lines
2.3 KiB
Markdown

If you are looking for the official FAQ then you can find it [here](http://nimrod-lang.org/question.html)
# How can I help?
For beginners I suggest to implement missing parts of the standard library or some other more specialized libraries:
* locale support
* bignums
* a lean GUI library
* libraries for scientific computing
* libraries that deal with multi-media
* etc.
# How does the Nimrod compiler's versioning scheme work?
Versions with a trailing odd number are considered to be "in-development", these are unstable "bleeding-edge" versions of the compiler which you can get from Github. Versions with an even number are releases. E.g. 0.9.0 is a release version, 0.9.1 is an in-development version.
# Will Nimrod have block comments?
Most probably not. Reasons for avoiding them are:
* If proper block comments exist, they should be nestable. This means you cannot tokenize Nimrod with regular expressions anymore.
* The editor can be used to put "#" in front of every line.
* "when false" is not a bad solution. At least syntax is still checked for deactivated code.
* discard """ """" is another solution.
# Why is it case/style insensitive?
* Identifiers which only differ in case are bad style. If the programming language treats them the same the programmer needs to come up with different names for different things.
* Case insensitivity is widely considered to be more user friendly. This holds for file systems, configuration files, and programming languages.
* Many programming languages are case insensitive: Lisp, Basic, Pascal, Ada, Eiffel, Fortran. Since software for aircrafts and power plants has been written in Ada, it seems reasonable to assume that case insensitivity will not destroy civilisation.
* Note that most people confuse case sensitivity with case consistency (which is indeed good style). However, case consistency is easier to achieve with case insensitivity and a properly configured IDE than with case sensitivity.
# Where can I find code examples?
You can find examples in the [examples/](https://github.com/Araq/Nimrod/tree/master/examples) directory. There are also many other examples available on [Rosetta Code](http://rosettacode.org/wiki/Nimrod).
# Why are unsigned types discouraged?
* http://critical.eschertech.com/2010/04/07/danger-unsigned-types-used-here/
* http://forum.nimrod-lang.org/t/313#1631