-
Notifications
You must be signed in to change notification settings - Fork 39
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Will nimskull
embrace breaking changes?
#8
Comments
Please see the readme specifically the direction section. You'll see we're willing to make breaking changes; however, breaking for the sake of breaking or minor convenience isn't something we have the capacity to work through just yet. If they're on mission then all good, otherwise they're presently a distraction. Specific areas where breaking changes are in fact very welcome are the currently on mission items. Chiefly, nkError related work. We can consider further ones that aren't explicitly part of the current mission as long as they show excellent taste in reducing the over size of the language, standard library, tool chain, and/or bring about greater consistency in both the language and implementation. The first two changes are to areas that aren't actively being thought about but I'm curious which unused features you'd consider removing? |
Allowing identifiers starts with underscore was discussed:
such as |
Probably can kill TRM macros since there is hardly any use for them, even if they weren't that buggy. Maybe move some stdlib modules out into https://github.com/disruptek/dist or deprecate them entirely. |
Just my opinion, but the problem with term-rewriting macros is that they are just way too powerful and become essentially magical in use. It's a tough call. |
The amount of things that have to not only work well but be incredible transparent and easy to debug would put term rewriting macros incredibly out of reach for a good long while. Which means we can't really learn of it's a good idea or not. |
I'll leave this issue open for a day or two more, I think this should turn into some breaking changes guidance doc, that should answer the question: "Under what circumstances is a breaking change acceptable?" |
make sense! |
459: add old code compat to the readme r=haxscramper a=haxscramper This part had already been present in the readme for some time. Original version was ``` <details> <summary class="blue">Will this break my Nim code?</summary> </br> Maybe. Many experienced users will know that a lot of current code 'works' because of various hacks, or create hacks themselves to make code work. See <a href="https://github.com/nim-works/nimskull/issues/8">#8</a> and the <a href="https://github.com/nim-works/nimskull#direction">direction</a> for more on this. </details> ``` I rephrased new to an extended, "maybe, but we won't have any guarantees on that matter" Co-authored-by: haxscramper <haxscramper@gmail.com>
459: add old code compat to the readme r=haxscramper a=haxscramper This part had already been present in the readme for some time. Original version was ``` <details> <summary class="blue">Will this break my Nim code?</summary> </br> Maybe. Many experienced users will know that a lot of current code 'works' because of various hacks, or create hacks themselves to make code work. See <a href="https://github.com/nim-works/nimskull/issues/8">#8</a> and the <a href="https://github.com/nim-works/nimskull#direction">direction</a> for more on this. </details> ``` I rephrased new to an extended, "maybe, but we won't have any guarantees on that matter" Co-authored-by: haxscramper <haxscramper@gmail.com>
For instance, some features I want to see:
_
can be used among identifier names for C interoperabilityecho -0x80'i8
prints 128 (which is out of range) and other bugs nim-lang/Nim#18422 (breaking change)Or
nimskull
will be compatible with Nim as far as possible?The text was updated successfully, but these errors were encountered: