Hi!
This post may be a bit biased, but it is from my point of view. :)
Nimrod introduces several concepts which are new for someone who is familiar with only i.e. ruby and perl.
To really learn all those concepts, takes quite some time.
And, at least for me, Documentation is extremely important. For all those who work daily with nimrod already, things are very easy to understand. But for newcomers, even when you think it is easy on the tutorial, it may not be easy. They must first translate this into their brain, a model of thoughts.
I give you one specific example of this.
The tutorial is at:
http://nimrod-code.org/tut1.html
After reading it, I was unable to write my own procedure (function) from scratch without mistake. :/
So the section about procedures should be expanded.
But this is only one part, there are more examples where I think the documentation could be improved.
But how is it best to suggest improvements for this?
Via IRC is not good, Araq is very busy and these things should be better stored elsewhere.
Ok there is github, but let's face it - Araq wants to fix bugs, and make nimrod better. The documentation will not be regarded as important as the evolution of the language itself. And it feels a bit silly to report tiny mistakes like typos or suggest expansions on topics just on github alone. :-)
Perhaps there could be a documentation-subproject for nimrod, that is also improved by the community somehow.
Something like a wiki BUT not a wiki. And something that could be edited by more people, perhaps ideally directly in the browser. Some Javascript could also be used, like to make those jquery "drop down flows" when one clicks an arrow, and when this arrow is clicked again, the drop down thing goes back to its default state again.
Hmm, I could write more, but I think it is better to finish for now. Perhaps new and better ideas on another day!
Well Ruby and Perl lack things that Nimrod has or enforces. I don't know whether or not there are some cases where you'll have no choice but to explicitly declare a type for a variable or not; though in most cases I'm sure it's doable.
Nimrod is inspired by Pascal and Python, so I recommend brushing up on those if the tutorials aren't enough. I agree though, they should be expanded on.
We simply need 2-3 different tutorials: "Nimrod for Python programmers", "Nimrod for Pascal/Ada programmers", "Nimrod for C/C++ programmers". However, I already have a hard time to keep the existing tutorials somewhat up to date... The spec is also still unfinished ... ;-)
The way to go is somebody writes a new tutorial and make me have a look over it.
It's automated via koch web which only executes tools/nimweb which builds the whole website. :-) Beware, I think the github version it is missing some files that prevents it from working.
But there is no need for you to run this command; nimbuild generates up to date documentation here:
http://build.nimrod-code.org/docs/lib.html
http://build.nimrod-code.org/docs/manual.html
I've seen there was a talk about unsigned types begin introduced, and tested the following code:
var
i : int32 = 33 + 2 - 40
ui : uint16 = 65535'u16
echo i, ui
This produces:
So I had looked at http://build.nimrod-code.org/docs/manual.html#ordinal-types and didn't find anything new about unsigned literals, and types.