www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - Refactoring tools

reply Imperatorn <johan_forsberg_86 hotmail.com> writes:
As the title says:

1. Are there any (automated) refactoring tools for D?
2. If not, why? (Is D still too small?)
Feb 02 2021
next sibling parent Mike Parker <aldacron gmail.com> writes:
On Wednesday, 3 February 2021 at 07:20:06 UTC, Imperatorn wrote:
 As the title says:

 1. Are there any (automated) refactoring tools for D?
I believe there's some limited functionality in one or more of the IDE plugins, but I'm not aware of anything full-featured or independent.
 2. If not, why? (Is D still too small?)
The answer to that question is always the same: because no one has felt motivated enough to develop it yet.
Feb 02 2021
prev sibling next sibling parent Max Haughton <maxhaton gmail.com> writes:
On Wednesday, 3 February 2021 at 07:20:06 UTC, Imperatorn wrote:
 As the title says:

 1. Are there any (automated) refactoring tools for D?
 2. If not, why? (Is D still too small?)
D is also designed to not need as much refactoring as other languages, so even for our size there isn't a huge amount of demand. Previously the actual implementation would've been hard but now we have the compiler working fairly well as a library it's just a question of profitability (be that money, fun, or social kudos).
Feb 03 2021
prev sibling parent JN <666total wp.pl> writes:
On Wednesday, 3 February 2021 at 07:20:06 UTC, Imperatorn wrote:
 2. If not, why? (Is D still too small?)
D uses templates and a lot of code is generated at compile time. It's the same reason C++ doesn't have any advanced refactoring tools like e.g. Java does. In Java, it's simple to rename a class in all files that use it, and the tools know that X class is actually the class from module A and not the X class from module B. In D, for all you know you could have someone using mixin("My"~"Class"), good luck automatically renaming that.
Feb 03 2021