[https://juancarlospaco.github.io/nim-gatabase](https://juancarlospaco.github.io/nim-gatabase)
* `0` Dependency, uses `system.nim` only, everything is done via `template`
and `macro`, Docs, Examples, CI, etc etc (`db_postgres` for Postgres but
Optional)
* Running compile-time and
Hi there,
Context: I am an experienced programmer (Scala, Java, JS, Rust, ...) just
discovering Nim through the doc. I haven't even open my editor yet to write
some Nim!
I really like the idea of an effect system but I am struggling to understand
how its used in Nim. My first impression is
I have to say, that I'm shocked (in a positive sense) about all of these design
decisions and how all of this organized together.
I'm almost crying.
> If I define the var version of the procedure, I don't need to define the ptr
> version anymore.
But the two have different domains (in the functional sense) — the `ptr`
parameter can take `nil`, while the `var` parameter can't. It seems wrong for
the compiler to produce an illegal behavior
Great initiative, Dan!
Green is good, especially on "all tests passed", but Nim has a pretty concrete
object associated with it, unlike many other languages.
As a side note: Going for full Saturation and Value seems logical and is only
natural, but it's often a sign of non-professional job.
This might exacerbate the issue with resolving identifier names in dotexpr
inside templates.
I have filed this open issue since years ago,
[https://github.com/nim-lang/Nim/issues/4554](https://github.com/nim-lang/Nim/issues/4554)
The define to use is `when defined(nimdoc)`.
Yes, your solution is indeed correct - you need to specify that because
otherwise nim (nimsuggest uses compiler as a library for it's work) wouldn't
know that you are using threads.
For me `undeclared identifier` issue happens with `async` function too
EPiC It could support full 133tspEaK with a few tweaks to the lexer, just
translating some digits to alpha chars in identifiers (3⟶E, 5⟶S, 4⟶A, etc.)
Using VS Code with Nim or Nim Alt extension, which internally uses nimsuggest
may lead into issues when you start to write code related to threads.
Simple listing for example ( **aaa.nim** ):
proc main() =
echo $getThreadId()
when isMainModule:
main()
I think the most common way of doing this is splitting everything into their
own modules, then include-ing them (instead of import-ing them) into the main
file that the user can import. This means that the main documentation will have
all the things that the various sub-modules have.
I have been looking for such a solution as well.
For now in Arraymancer I call nim doc on each individual files. It works
because I've separated public/private API and a file containing public API does
not export any "private" proc.
See doc generator:
14 matches
Mail list logo