I will welcome contributions to NoSQL, both in the form of new operators, improvements to the current code and to the documentation, porting to other operating systems, and so on. Contributed code, however, will have to abide by the general philosophy of NoSQL. Operators will have to be lightweight ones, written either in C or AWK. While Perl is welcome for utilities that are meant to be used interactively by users at the shell prompt, and for seldom-used commands in general, it is fairly bad (i.e. unefficient) for operators that may occur several times along the same pipeline. See section Perl and the Operator/Stream Paradigm. Common Unix shells, like bash, zsh and ksh, which are great for interactive use, have similar drawbacks, but the availability of lightweight ones, like the aforementioned ash, makes it viable, while Perl doesn't come in any lighter versions (to my knowledge). NoSQL does have some Perl operators, but they are either leftovers of the original RDB system, that will eventually be rewritten in C or AWK, or they are utilities to be used once in a while, and report generators, which appare at most once in a single pipeline (usually at the end).
Unless your code has been accepted for inclusion in the main NoSQL distribution, you should not use the official NoSQL source code banners and Copyright statements in your own operators.
NoSQL supports local extensions through the myprog hook, which you should stick to until, if ever, your extensions become officially part of NoSQL. If you rather modify 'nosqlmain', then when you upgrade to a newer release of NoSQL your modifications will go lost and you will have to restore them manually in the new 'nosqlmain'.