First of all, this is a metatopic, it is not about Nim, it is about the 
development process for Nim.

I really like this programming language, and I see a lot of potential for it, 
and I would really like to contribute to it to make it a better language, but I 
do not know how I can contribute most effectively. To better understand me, I 
would like to give an example. I recently rediscoverd the [operator 
equals](http://forum.nim-lang.org///nim-lang.org/docs/manual.html#type-bound-operations-operator)
 and destructors. But I think it is not ready to use.

`discard` on a returned value from a proc creates a leak (no `=destroy` is 
called). Top level variables (globals) do not get destroyed. The assignment 
operator is used for both the first time initialization and the reused 
initialization, but It is unanswered weather `operator =` should deinitialize 
(destroy) the left operand. And this compile error:
    
    
    proc `=destroy`(obj: var MyType)
    for a 'var' type a variable needs to be passed, but 'a' is immutable
    

Not everything I mentioned is a bug it might be intentional, but I think it is 
at least worth talking about each item.

If I write a proposal, on how I can come up with a solution to these problems, 
I would like the best possible feedback on in before implementing it. On the 
other hand, I would like my proposal to have the option to get some important 
status so it will not get lost over time just because of some inactivity. I am 
thinking of a formal protocol that proposals should go.

My current options to start a proposal are, I can create a thread here on this 
forum, or I can create an issue on github. Recently I wore an article here on 
the forums, where I got the offer, that it could be published as a "guest blog 
article". So I like the idea to start as a forum post, and then transition into 
something of more weight. But to make it short, I don't have a solution for 
this yet. But I would like to start the discussion here. 

Reply via email to