Just starting with Nim and loving it!

2021-06-06 Thread Niminem
13 years old?? Dude, that is amazing. Don't sweat job prospecting right now you literally have thousands of days. Enjoy Nim and what it has to offer, you're going to learn a lot and it's going to be a blast. To answer your question though, I believe the language can become widely adopted in tha

Just starting with Nim and loving it!

2021-06-06 Thread leeooox
The major problem is not Nim lang itself, but lack of strong third party library IMO. There is no such mature 3rd library like Numpy/Scipy/Matplotlib/Pandas in Python. Even though, it is very handful to tackle everyday problems, with a very tiny exe/binary, that's why I love it, and sometime wr

Just starting with Nim and loving it!

2021-06-06 Thread Fire
So, I came across Nim looking for a faster Python alternative and love it, but I am wondering what the chances are of getting a job using it would be in 8 or so years. I am 13 years old. Does it look like Nim will be popular enough to find a job in that area of time? Fire/Pyautogui

Odd issues with HttpClient and AsyncHttpClient

2021-06-06 Thread nxnl
> Put the client on global, and call client.close() explicitly when done. Oh, I didn't even think of the client being closed. That solves one mystery, thank you! I merged the two procs into one as there'll likely only be one request type against the system. The hanging issue with `HttpClient` r

Improving the documentation: Roadmap, community engagement.

2021-06-06 Thread DIzer
"The Rust book, for example, was just brilliant at some point" \- it is brilliant at almost every point.. yet it had been polished over many years and in it was put efforts from many good evangelists.. so (in my opinion) it is worthy to follow if should..

mixed bag seq: allow strings and int in a seq

2021-06-06 Thread ElegantBeef
I actually just released a [library](https://github.com/beef331/sumtypes) which automates the construction of these object variants specifically for cases like this. The solution using that is as simple as: import sumtypes type AcceptedTypes = int or string sumTypeSeq(YourN

Improving the documentation: Roadmap, community engagement.

2021-06-06 Thread Zoom
I know you had some tensions with some people in the community. Hope everything gets resolved. There's always _some_ tensions when there's more than 1 person present, we can only hope it doesn't get reflected on the products of the work. Fixed the link. You have some issues with the SSL certific

Improving the documentation: Roadmap, community engagement.

2021-06-06 Thread Stefan_Salewski
> not some form of arrogance Unfortunately there is some. It was there already in 2015, when I tried hard to proofread doms book, and some of my serious comments have been ignored. I can understand well that people are tired when they have written something, and do not like critical comments, i

mixed bag seq: allow strings and int in a seq

2021-06-06 Thread Zoom
The obvious answer for a question without specifics of the required application is that with strongly-typed languages you almost always better off with **parsing your input first** into the appropriate types, unless you have very specific, clearly-stated and understood requirements for not doing

Improving the documentation: Roadmap, community engagement.

2021-06-06 Thread Zoom
Yeah, my post verges on the edge of being cringy, "shut up and write PRs" is a deserved response. Have no excuse besides that it was really late into the night.

Improving the documentation: Roadmap, community engagement.

2021-06-06 Thread Zoom
This is not exactly the topic of the thread, but it's important too. The official book would be great. The Rust book, for example, was just brilliant at some point, but it evolves constantly and I don't know how good it is currently. For now we have [Computer Programming with the Nim Programming

Improving the documentation: Roadmap, community engagement.

2021-06-06 Thread timothee
> There should be a coordinated effort with a roadmap, a standard and some form > of a protocol maybe, but in practice, actual PR's tend to be more effective than simply talking about how we need coordinated effort, roadmap, protocol. eg PRs like these:

Improving the documentation: Roadmap, community engagement.

2021-06-06 Thread Stefan_Salewski
> I need some guidance Have you finally read my book carefully?

How to make Nim more popular

2021-06-06 Thread ITwrx
thanks, that's pretty cool and i hadn't seen it, but i mean each library should have it's own little wiki/knowledgebase like many other (library) foss projects do (or are starting to do). Github (i wish foss code would use a freedom and privacy-respecting repo web gui so users don't have to be d

Release candidates for 1.4.8 and 1.2.14

2021-06-06 Thread Menny11
Dont want to rain on your parade guys... but tried to make installation on a new machine of the latest nim with choosenim 0.7.4 (and after failed attempt with 0.6) and the windows defender still blocks nimble.exe, claiming that it contains a virus Trojan:Win32/Wacatac.B!ml. And even if you unblo

Improving the documentation: Roadmap, community engagement.

2021-06-06 Thread masiarek2
Nim Cookbook with examples

Using Clang LibFuzzer coverage-guided fuzzing engine with Nim

2021-06-06 Thread ahmadaa
کیف آلومینیومی

How to make Nim more popular

2021-06-06 Thread alexeypetrushin
I thnk Nim has too wide area and use cases. I think it would be beneficial for Nim adoption to hide some of its features. Like when you buy a car, and it also can fly and be used as a boat, and used as electricity generator for your house, and has modular structure for easy repair. It's hard to

How to make Nim more popular

2021-06-06 Thread alexeypetrushin
> doAssert t.values.sum == 1 + 2 # works with MCS/UFCS > doAssert > t.values.toSeq == @[1,2] Nice! :)

mixed bag seq: allow strings and int in a seq

2021-06-06 Thread PMunch
Short answer, you can't. Seqs in Nim are single type only. Long answer, object variants: type IntOrStringKind = enum Int, String IntOrString = object case kind: IntOrStringKind of Int: intVal: int of String: strVal: string var x: seq[IntOr

mixed bag seq: allow strings and int in a seq

2021-06-06 Thread juancarlospaco

How to make Nim more popular

2021-06-06 Thread juancarlospaco
Theres a Wiki, example:

mixed bag seq: allow strings and int in a seq

2021-06-06 Thread masiarek2
how to get a 'mixed bag seq' in Nim. I probably need to learn about generics... In Crystal: mixed_bag_seq = [1, "aa"] Run here is Nim example that fails: proc foo(a: int|string): int|string = # works: both string and int accepted discard

How to make Nim more popular

2021-06-06 Thread Zoom
I'd like to second the pov that the work on the docs should be raised in the priority list, if there is one. Listed some of my views in a separate thread: [Improving the documentation: Roadmap, community engagement.](https://forum.nim-lang.org/t/8091) > Then you need technical English, add a fe

Using Clang LibFuzzer coverage-guided fuzzing engine with Nim

2021-06-06 Thread b3liever
These two articles explain the differences: 1. [Super Awesome Fuzzing, Part One](https://blog.f-secure.com/super-awesome-fuzzing-part-one/) 2. [An introduction to LLVM libFuzzer](https://www.moritz.systems/blog/an-introduction-to-llvm-libfuzzer/)

Improving the documentation: Roadmap, community engagement.

2021-06-06 Thread Zoom
Thought this deserves it's own thread. The notion that current Nim docs are not the "best in the biz" is a common one and the issue is raised regularly (I don't think there's ever no room for improving the docs actually). I'd be happy to support this point of view with some data but unfortunatel

NimVM eventually get replaced?

2021-06-06 Thread gemath
Another way: an actual microVM like [firecracker](https://github.com/firecracker-microvm/firecracker/blob/main/FAQ.md) running it's own instance of the Nim compiler. pros: * encapsulation for security * (near)-native performance cons: * supports only newish 64-bit x86 and ARM processo

Using nim `method` to wrap C++ methods

2021-06-06 Thread haxscramper_
When interfacing with C++ classes and methods it is necessary to re-wrap methods as procedures for each derived class. E.g. if I have `Base` and `Derived` I would have to repeat wrapping of the `Base` methods for `Derived` type. I tried using `method`, but it gives me `'invalid pragma: importcpp