nim-wiki/Nim-use-cases.asciidoc

25 lines
1.4 KiB
Plaintext

This is an introductory page on use cases where you might want to use Nim.
### Where Nim works well
Multiarch applications:: As Nim compiles through GCC, any architecture supported by GCC can run Nim.
Gaming:: Nim was designed with gaming in mind. See documentation regarding speed and GC. If you are working on a game like a baseball simulator then Nim can offer the fast performances you need to simulate intensive game play, artificial intelligence, graphics, audio sound processing, and all of the other functionalities of modern gaming.
Embedded systems and microcontrollers:: Nim have some of the smallest memory overhead and binary size compared to other languages.
### Where Nim will work well
The following use case might require larger amounts of libraries, tools, and language maturity in general (as in early 2015)
System libraries:: Nim can produce libraries to be used by other languages. https://gradha.github.io/articles/2015/01/writing-c-libraries-with-nim.html[docs] https://akehrer.github.io/nim/2015/01/24/connecting-nim-to-python.html[example]
Cryptography:: Nim is safer than C [also see System libraries]
### Where Nim might not be the best fit
Scripts and interactive use:: Nim is a complied languages and the interactive interpreter is somewhat limited.
Beginners:: as a first language, Nim is more complex than Python or Ruby
You want much complexity:: Nim not as complex as Rust or C++ so if you want complexity maybe Nim not a good choice