Re: Nim's status discussion

2018-03-06 Thread Libman
I wouldn't say that "corporations suck" \- they are a means to an end. They 
need to make things work in a cost-effective and dependable way, without making 
themselves dependent on genius. Average-IQ programmers are the base, the bread 
and butter of the industry, and so they are the standard.

Nim is a really beautiful language. It can be very scary...


Re: Nim's status discussion

2018-02-23 Thread echo
I really like NiGui.

[https://github.com/trustable-code/NiGui](https://github.com/trustable-code/NiGui)


Re: Nim's status discussion

2018-02-23 Thread Libman
> Does standard library is stable for usage in the enterprise?

No.

The "enterprise" had reluctantly transitioned from their legacy systems only 
because COBOL programmers were dying of old age. IBM / SAP / Oracle / etc were 
pushing Java, and Microsoft was pushing BASIC and C# (especially in colleges / 
tech schools), so that's what they invested in for the new generation of 
developers. After that generation dies off, maybe they'll try "new" hipster 
language like Python. 

Nim isn't for the "enterprise", which makes programming language choices based 
on how easy it would be to hire replacement programmers. At least not yet.


Re: Nim's status discussion

2018-02-22 Thread r3d9u11
Wow, many thanks for detailed answer! This is very usefull post about Real 
Valley! Under "MultiMedia engine" I mean library/framework/engine for making 
visual crossplatform application, who can be rendered to opengl/directx/webgl, 
something like a [Kha](https://forum.nim-lang.org/kha.tech), 
[OpenFL](https://forum.nim-lang.org/openfl.org) or 
[NME](https://github.com/haxenme/nme) for Haxe. Probably, Godot and Nuclear is 
it. Nim have a really impressive stuff and a lot of bindings for mainstream 
GUI-frameworks, cool!


Re: Nim's status discussion

2018-02-21 Thread mratsim
Hey r3d9u11,

Reel Valley was written from scrath in Nim and targeted all Facebook, Andorid 
and iOS from scratch. You can read the making of 
[here](https://yglukhov.github.io/Making-ReelValley-Overview/).

What do you mean by multimedia? GUI or something else, Godot is more like a 
game engine, for games you can check:

>   * Nimx (the core of Reel Valley: 
> [https://github.com/yglukhov/nimx](https://github.com/yglukhov/nimx))
>   * Godot: 
> [https://github.com/pragmagic/godot-nim](https://github.com/pragmagic/godot-nim)
>   * Unreal Engine: 
> [https://github.com/pragmagic/nimue4](https://github.com/pragmagic/nimue4)
>   * SDL2: several links: 
> [https://github.com/nim-lang/sdl2](https://github.com/nim-lang/sdl2) and 
> [https://github.com/Vladar4/sdl2_nim](https://github.com/Vladar4/sdl2_nim)
>   * Frag and Zengine (pure Nim: 
> [https://github.com/zacharycarter](https://github.com/zacharycarter)
> 


For GUI: Nimx, Nuklear, QML bindings or the ongoing GTK work by Stefan.

Regarding companies using Nim, you have a list there: 
[https://github.com/nim-lang/Nim/wiki/Companies-using-Nim](https://github.com/nim-lang/Nim/wiki/Companies-using-Nim)

Also you can check a feedback from Windgo in the forum: 
[https://forum.nim-lang.org/t/3456#21617](https://forum.nim-lang.org/t/3456#21617).
 It is a company selling smart home devices powered by Nim.


Re: Nim's status discussion

2018-02-21 Thread r3d9u11
Many thanks for your answer!

Is [it a port for 
android](https://play.google.com/store/apps/details?id=com.onsetgame.reelvalley)
 of Real Valley that you noted?

Can I ask, wich engine was used for this project? I'm looking for a good 
cross-platform multimedia engines, too. I'm found gotod bindings for Nim (but I 
haven't HTML5 export, yet) and Frag (but it's last activity on github about 
1y.ago).

Also, does sombody knowns a good visual debugger for Nim?

  * for C-target I'm tried NativeDebugger for VSCode, but I have some troubles 
with it and was applied to issue on 
[github](https://github.com/pragmagic/vscode-nim/issues/65).
  * for JS-target debugging isn't possible yet, because Nim can't make 
sourcemap, right?




Re: Nim's status discussion

2018-02-21 Thread mashingan
Another (more experienced) answers from others will follow:

> Does standard library is stable for usage in the enterprise?

Unless you do something magic with code for the project, IMO, it's safe

> As I understand, Nim allows to use it's GC to manage memory automatically, or 
> to control it manually, when it needed (for Native, C/C++ targets)?

Yes, Nim have traced and untraced reference. Traced reference work with GC 
while untraced would have to be managed manually.

> Is it realistic (and how to difficult in practice) with Nim to maintain a 
> single code base in the project, who particulary requires access to both 
> levels (low-level: allow to manage memory by developers, usage a static 
> datatyes, bit operations and etc.; hight-level for faster development of 
> resource-inpedendets parts)?

This is relative on how much the complexity, one of viable way to do it by 
dividing it per module.

> Also critically availability cross-language support via usage of dynamic 
> modules (dll, dynlib, so): use it in Nim's application and export some 
> functions (generate own dynamic module) to dll/so/dynlib.

Nim has easiest CFFI to work with. But of course you must be careful about GC 
when using functions from dynamic libs.

> Is there successfull stories of individual developers/companys of usage Nim 
> for real/huge projects (enterprise, gamedev, web or something else)?

[Reel Valley](https://apps.facebook.com/reelvalley?utm_source=nimsite) 
(facebook game) 


Nim's status discussion

2018-02-21 Thread r3d9u11
Hey, Nimers!  I'm a novice in world of Nim, my generic/work languages is 
C/C++/C#, sometimes JS/Haxe as a hobbie. But also I was interested in Nim. Wich 
status of Nim?

  * Does standard library is stable for usage in the enterprise?
  * As I understand, Nim allows to use it's **GC** to manage memory 
automatically, or to control it manually, when it needed (for Native, C/C++ 
targets)?
  * Is it realistic (and how to difficult **in practice**) with Nim to maintain 
a **single code base** in the project, who particulary requires **access to 
both levels** (**low-level**: allow to manage memory by developers, usage a 
static datatyes, bit operations and etc.; **hight-level** for faster 
development of resource-inpedendets parts)?
  * Also critically availability **cross-language support** via usage of 
**dynamic modules** (dll, dynlib, so): use it in Nim's application and export 
some functions (generate own dynamic module) to dll/so/dynlib.
  * Is there **successfull stories** of **individual developers**/**companys** 
of usage Nim for **real/huge projects** (enterprise, gamedev, web or something 
else)?