Nim (programming language)

Nim is a general-purpose, multi-paradigm, statically typed, compiled systems programming language, designed and developed by a team around Andreas Rumpf. Nim is designed to be "efficient, expressive, and elegant", supporting metaprogramming, functional, message passing, procedural, and object-oriented programming styles by providing several features such as compile time code generation, algebraic data types, a foreign function interface (FFI) with C, C++, Objective-C, and JavaScript, and supporting compiling to those same languages as intermediate representations.

Author
enAndrew Binstock, editor-in-chief of Dr. Dobb's Journal, 2014
Comment
enNim is a general-purpose, multi-paradigm, statically typed, compiled systems programming language, designed and developed by a team around Andreas Rumpf. Nim is designed to be "efficient, expressive, and elegant", supporting metaprogramming, functional, message passing, procedural, and object-oriented programming styles by providing several features such as compile time code generation, algebraic data types, a foreign function interface (FFI) with C, C++, Objective-C, and JavaScript, and supporting compiling to those same languages as intermediate representations.
Cs1Dates
eny
Date
enJuly 2022
Designer
enAndreas Rumpf
Developer
enNim Lang Team
FileExt
en.nim, .nims, .nimble
Has abstract
enNim is a general-purpose, multi-paradigm, statically typed, compiled systems programming language, designed and developed by a team around Andreas Rumpf. Nim is designed to be "efficient, expressive, and elegant", supporting metaprogramming, functional, message passing, procedural, and object-oriented programming styles by providing several features such as compile time code generation, algebraic data types, a foreign function interface (FFI) with C, C++, Objective-C, and JavaScript, and supporting compiling to those same languages as intermediate representations.
Hypernym
Language
InfluencedBy
Ada (programming language)
C++
Lisp (programming language)
Modula-3
Oberon (programming language)
Object Pascal
Python (programming language)
Rust (programming language)
Influenced by
Ada (programming language)
C++
Lisp (programming language)
Modula-3
Oberon (programming language)
Object Pascal
Python (programming language)
Rust (programming language)
Is primary topic of
Nim (programming language)
Label
enNim (programming language)
License
MIT License
License
MIT License
Link from a Wikipage to an external page
github.com/dom96/choosenim
github.com/StefanSalewski/gintro
stackoverflow.com/questions/tagged/nim-lang
ssalewski.de/nimprogramming.html
github.com/yglukhov/nimpy
github.com/nimterop/nimterop
nim-lang.github.io/Nim/testament.html
Link from a Wikipage to another Wikipage
%22Hello, World!%22 program
Aarch64
Abstract syntax tree
Ada (programming language)
Algebraic data type
Android (operating system)
ANSI C
API
ARM architecture
await
Await
Berkeley Software Distribution
Binary operator
C (programming language)
C++
Cairo (graphics)
Case-insensitive
Category:2008 software
Category:Concurrent programming languages
Category:Cross-platform software
Category:Functional languages
Category:Multi-paradigm programming languages
Category:Procedural programming languages
Category:Programming languages
Category:Programming languages created in 2008
Category:Software using the MIT license
Category:Source-to-source compilers
Category:Statically typed programming languages
Category:Systems programming languages
Clang
Compiled language
Compiled programming language
Compiler
Compile time
Concurrent programming
COVID-19
Cross-platform
Crystal (programming language)
C Sharp (programming language)
CURL
D (programming language)
Dr. Dobb's Journal
Factorial
Fat pointer
First-class function
Foreign function interface
FOSDEM
Free and open-source software
Free Pascal
Functional programming
Game Boy Advance
Game development
Garbage collection (computer science)
General-purpose programming language
Generic programming
Git
GitHub
GNU Compiler Collection
Go (programming language)
GTK
Homoiconicity
Hypertext Transfer Protocol
IA-32
Identifier
Imperative programming
Indentation
Inheritance (object-oriented programming)
Intermediate representation
Internet of things
IOS
JavaScript
JSON
Julia (programming language)
Language binding
Library (computing)
Libzip
Linux
Lisp (programming language)
LLVM
Lua (programming language)
MacOS
Macro (computer science)
Message passing
Metaprogramming
Microsoft Visual C++
MinGW
MIT License
Mobile development
Modula-3
Multi-paradigm programming language
Multiple dispatch
MySQL
Node.js
O'Reilly Open Source Convention
Oberon (programming language)
Objective-C
Object-oriented programming
Object Pascal
Off-side rule
OpenGL
OpenSSL
Operator overloading
Package manager
Pascal (programming language)
PostgreSQL
PowerPC
Procedural programming
Programming paradigm
Python (programming language)
Qt (software)
Reference counting
Reserved word
RISC-V
Rust (programming language)
Scope (computer science)
Self-hosting (compilers)
Side effect (computer science)
Simple DirectMedia Layer
Source-to-source compiler
SQLite
Stack Overflow
Statement (computer science)
Statically typed
Static typing
Strong and weak typing
Stropping (syntax)
Structural type system
Systems programming language
Type inference
TypeScript
Uniform Function Call Syntax
Vulkan
Whitespace character
Windows API
WxWidgets
X86-64
YouTube
Zlib
LogoCaption
enThe Nim crown logo
LogoSize
120
Name
enNim
Name
enNim
OperatingSystem
Cross-platform
Paradigms
Compiled language
Concurrent programming
Functional programming
Imperative programming
Metaprogramming
Multi-paradigm programming language
Object-oriented programming
Procedural programming
Platform
Aarch64
ARM architecture
IA-32
PowerPC
RISC-V
X86-64
ProgrammingLanguage
enNim
SameAs
m.012vxsb4
Nim
Nim
Nim
Nim
Nim (langage)
Nim (linguagem de programação)
Nim (ohjelmointikieli)
Nim (programlama dili)
Nim (programming language)
Q20080327
upUz
نيم (لغة برمجة)
نیم (زبان برنامه‌نویسی)
നിം (പ്രോഗ്രാമിങ് ഭാഷ)
님 (프로그래밍 언어)
Scope
Scope (computer science)
Subject
Category:2008 software
Category:Concurrent programming languages
Category:Cross-platform software
Category:Functional languages
Category:Multi-paradigm programming languages
Category:Procedural programming languages
Category:Programming languages
Category:Programming languages created in 2008
Category:Software using the MIT license
Category:Source-to-source compilers
Category:Statically typed programming languages
Category:Systems programming languages
Text
en[Nim] ... presents a most original design that straddles Pascal and Python and compiles to C code or JavaScript.
Typing
Static typing
Strong and weak typing
Structural type system
Type inference
WasDerivedFrom
Nim (programming language)?oldid=1124846183&ns=0
WikiPageLength
45006
Wikipage page ID
45413679
Wikipage revision ID
1124846183
WikiPageUsesTemplate
Template:As of
Template:Blockquote
Template:Expand section
Template:GitHub
Template:Infobox programming language
Template:JavaScript
Template:Missing information
Template:Official website
Template:Portal
Template:Programming languages
Template:Reflist
Template:Rp
Template:Short description
Template:Start date and age
Template:URL
Template:Use dmy dates
Template:Version
Template:Wikidata