DEV Community


Posted on

Nim -- a modern "glue" language like Python

Nim is a statically typed compiled systems programming language. It supports various backends: it compiles to C, C++ or JavaScript so that Nim can be used for all backend and frontend needs. Via importc, importcpp, importjs pragmas, Nim can import C/C++/JS/ObjC methods or symbols in general. You can refer to the manual of Nim.

c2nim is a tool to translate ANSI C code to Nim. The output is human-readable Nim code that is meant to be tweaked by hand after the translation process. If you are tired of wrapping C library, you can try futhark which supports "simply import C header files directly into Nim". Similar to futhark, cinterop allows one to interop with C/C++ code without having to create wrappers. nimLUA is a glue code generator to bind Nim and Lua together using Nim's powerful macro. nimpy and nimporter is a bridge between Nim and Python. rnim is a bridge between R and Nim. nimjl is a bridge between Nim and Julia! Last but not least, genny generates a shared library and bindings for many languages such as Python, Node.js, C.

Top comments (0)