
How I Start: Nim - kungfooguru
http://howistart.org/posts/nim/1
======
perturbation
What I really like about this post (that's somewhat different from others that
I've seen about Nim) is that it goes beyond the syntax of the language and
macros to dive into tooling (nimble, editor plugins) and popular libraries
(docopt.nim). When I'm trying to get up to speed with a new language, it makes
it a lot easier to focus on the language if I'm not fighting with my tools.

I wrote the 'init' feature for nimble - it's so awesome to see it being used!

------
rdtsc
BTW check out other howistart articles:

[http://howistart.org/](http://howistart.org/)

You'll find a sampling of Go, Erlang, Haskell and a few others.

Here is the repo: [https://github.com/howistart](https://github.com/howistart)

And of course many thanks for Tristan for curating it!

------
afarrell
Some might think it unnecessary to include the line about how to install git
with apt-get, but I really like it. It shows that he's going to actually walk
the user through start-up. In a world of frustrating install processes and
tutorials that need two more rounds of polish, that is comforting.

~~~
JasonFruit
That's one of the things that draws me to Nim in general: it works as
advertised, and the documentation, while sometimes terse, is clear and
complete.

~~~
k__
I found it a bit frustrating.

They talk about C interopt, but I didn't find any nice explanation about how
to create something like a struct, that C APIs often require as their data
input.

~~~
def-
Usually you don't create a struct yourself, but use c2nim to wrap it, like I
did here: [http://hookrace.net/blog/what-makes-nim-
practical/#wrapping-...](http://hookrace.net/blog/what-makes-nim-
practical/#wrapping-libraries-with-c2nim)

When you look at the resulting Nim wrapper, here's what a C struct got turned
into: [https://github.com/def-/nim-
bpg/blob/master/src/bpg.nim#L61-...](https://github.com/def-/nim-
bpg/blob/master/src/bpg.nim#L61-L65)

------
ch4s3
This is an exceptional post, good enough that I'm going to follow along later
even though I'm not super interested in Nim per se. At first brush it was
interesting enough to pique my interest in the language.

------
porker
An excellent article, well written and incredibly easy to follow along and
understand what's going on. We need projects to start doing documentation like
this.

------
swah
Law of Marketing for Successful Programming Languages: the basic examples
should teach sockets, websockets or http servers.

~~~
w-ll
There are still tons of problems that need solving that don't involve these
things.

~~~
swah
Sure, but they don't sell programming languages in these Node/Go times...

~~~
mwfunk
If all you do is web development, all programming languages look like tools to
build web sites with I guess. I don't think the author was trying to sell
anything, it seemed like more of a gift to like-minded individuals.

~~~
pekk
It is incredibly obvious that Nim is being sold as hard as it can be sold

