5 ms·
How I Start: Nim
- perturbation 12y agoWhat 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!
- afarrell 12y agoSome 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 12y agoThat'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__ 12y agoI 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- 12y agoUsually 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-libraries-with-c2nim http://hookrace.net/blog/what-makes-nim-practical/#wrapping-... 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-L65 https://github.com/def-/nim-bpg/blob/master/src/bpg.nim#L61-...
- ch4s3 12y agoThis 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.
- deleted 12y ago[deleted]
- rdtsc 12y agoBTW 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!
- deleted 12y ago[deleted]
- porker 12y agoAn 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 12y agoLaw of Marketing for Successful Programming Languages: the basic examples should teach sockets, websockets or http servers.
- w-ll 12y agoThere are still tons of problems that need solving that don't involve these things.
- coolsunglasses 12y agoMy Haskell article for HowIStart was CSV data processing. shrug
- swah 12y agoSure, but they don't sell programming languages in these Node/Go times...
- mwfunk 12y agoIf 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 12y agoIt is incredibly obvious that Nim is being sold as hard as it can be sold
- girvo 12y agoHowIStart isn't something that I'd considering "marketing" for the language, personally. It does what it says on the tin: teach you how to get started from scratch with the language. However, you are correct somewhat; this is why on Nim's homepage[0] there is an example of Jester (a web server/routing DSL)! [0] http://nim-lang.org/ http://nim-lang.org/