I may feel a bit guilty as I critisized the former Nim Homepage content...

But sorry, the new draft is really not nice.

Page look is unfriendly, content is not great also.

So here is my first content suggestion -- I just hacked it together in a few 
minutes. It would be easy to improve the text further, I guess I forgot some 
points, and we can steal some wording from pages of other languages. Of course 
I am not a native English speaker, and do not know well all Nim details. But it 
is so easy to make a better text, so I could not resists, of course knowing 
that my draft will newer make it to the Nim homepage. So I have not fixed 
spelling errors and I have not tuned the wording in any way. But you may get 
the feeling. I would maybe group the statements in boxes as it is done for 
Julia -- Julia in a nutshell.

* * *

Nim is a modern universal programming language suited for systems and 
application programming

Nim combines successful concepts from mature language like Python, Ada and 
Modula with a few sounding concepts of latest research. It offers high 
performance while keeping the source code short and readable.

Its clean Python like syntax makes programming easy and fun for beginners, 
without applying any restrictions to experienced systems programmers.

Nim is efficient:

  * The generated native, dependency free executables are small and allow easy 
redistribution.
  * Nim supports various backends -- the C and LLVM based backends allow easy 
OS library calls without additional glue code, while the Javascript backends 
generates high quality code for web applications. More backends already exists 
or can be easily added.
  * The Compiler itself and the generated executables support all mayor 
plattforms like Windows, Linux, BSD and Mac OS X. Porting to other platforms is 
easy.
  * Modern concepts like Zero-overhead iterators, compile time evaluation of 
user-defined functions and Cross-module inlining in combination with the 
preference of value-based, stack located datatypes leads to extremly performant 
code.
  * Various memory management strategies exists: Selectable and tunable high 
performance Garbage Collectors are supported by manually and semi manually 
memory managent. This makes Nim a good choice for Application development and 
close to the hardware system programming at the same time.
  * The unrestricted hardware access, small executables and optional GC will 
make Nim a perfect solution for embedded systems, hardware driver and Operating 
Systems development



Nim is Expressive

  * Nim supports the well know concepts like operator and function overloading 
and ...
  * While the traditional Object-Oriented Programming styles is supported, Nim 
does not enforce this programming paradigma and offers modern concepts like ...
  * The Powerful AST-based hygienic macro system offers nearly unlimited ... 
for the advanced programmer.



Nim is Elegant

  * Modern type system with local type inference, tuples, variants, generics, 
etc.



Nim is Open and Free.

  * The Nim compiler and all of the standard library are implemented in Nim. 
All source codes are available under the unrestricted MIT license.



Nim has a friendly growing community

  * IRC
  * Forum (coded in Nim)
  * ...



Nim has a bright future

  * Started 10 years ago as a small project of some bright CS students leaded 
by Mr A. Rumpf, it is now considered as one of the most promising programming 
languages supported by uncounted individuals and companies of leading computer 
industry, ie. from the area of game development, cryptology and bitcoin stuff.


Reply via email to