> I would love to be able to discovery the answer to the question I posted on > my own
Very right, and Nim is very apt to it. > I do need to read the manual. Yes, it takes just couple of hours, and answers almost all questions about the language in advance - it's a huge time-saver. Regarding your particular question, it's described there that type names may be used for type conversions - it's like for each type there a procedure is defined with that same name, which converts to that type. That is, `int`, `int32`, `float`, and so on - they all may be used for conversions, just by type name. > I still do not see where this is defined. And then, when you know, that type names may be used for conversions, as procedures, you may find the definition of `int` in `system` module of the standard library - `lib/system.nim` in your Nim installation. Though nothing special there for `int`, just a built-in type. :) Just read this module throughout, after the manual - it's automatically imported in every your module, and it will be useful to know what is always available. You may instead read the auto-generated docs for the module, if you feel that to be more convenient. This way for any module you use - except for keywords (`for`, `if`, ...), every word available in a module is defined in some imported module, so is not hard discoverable; no implicit built-ins, which just there are - everything is in the sources.
