[cfe-dev] clang-refactoring tool proposal
Kirill Bobyrev via cfe-dev
cfe-dev at lists.llvm.org
Sun Aug 21 12:22:40 PDT 2016
Hi Krzysztof,
Apologies for that, there's a small delay. Just want to make sure they're
in a good shape before releasing. This is on top of my priority list, so
I'll do that as soon as these docs will be good enough.
-Kirill
On Sun, Aug 21, 2016 at 8:49 PM, Krzysztof Wiśniewski <
k.k.wisniewski1 at gmail.com> wrote:
> Hey Kirill,
>
> are there any news like design docs or in general more info that you said
> will appear in the end of this week?
>
> Regards,
> Chris Wisniewski
>
> On Thu, Aug 18, 2016 at 1:54 PM Alexander Droste <alexander.ra.droste@
> googlemail.com> wrote:
>
>> Hi Kirill,
>>
>> sounds great. Thanks for being open to contributions!
>>
>> -Alex
>>
>> On 17.08.16 10:27, Kirill Bobyrev wrote:
>> > Hi Alexander and Krzysztof,
>> >
>> > Thank you for your interest!
>> >
>> > Please find my comment inline.
>> >
>> > On Sun, Aug 14, 2016 at 4:36 PM, Krzysztof Wiśniewski <
>> k.k.wisniewski1 at gmail.com
>> > <mailto:k.k.wisniewski1 at gmail.com>> wrote:
>> >
>> > Hi everyone!
>> >
>> > I've just started to search for some open-source project to join
>> because
>> > a) I want to re-learn C++ (there have been a few years since I've
>> used it)
>> > b) need some topic for my masters thesis
>> >
>> > The tool Kirill proposes sounds like a good opportunity for me to
>> join - as
>> > far as I understand, it does not exist yet and there seems to be a
>> community
>> > that is interested in using it when it's done. Do you have any
>> timeline when
>> > the planning and development could kick-off? Are there any
>> discussions/docs
>> > I should go through first? If you think I should start by doing
>> some bugs in
>> > other clang-related projects let me know.
>> >
>> > As soon as design docs look fine for me. I am currently working on
>> design docs
>> > and I hope to finish them soon. There will be enough info about
>> everything in
>> > these docs. Feedback on them will be highly appreciated.
>> >
>> > Yes, it does not exist in upstream yet, there's a "demo" that I have,
>> but it's
>> > still very basic one. I don't have any timeline, but I hope to get
>> design docs
>> > to public by the end of this week.
>> >
>> > I suppose there'll be a lot of work in that direction, so feedback and
>> > contributions are always nice!
>> >
>> > By the way, there's a page about Open Projects @ Clang
>> > <http://clang.llvm.org/OpenProjects.html> if you are interested.
>> >
>> > Best regards,
>> >
>> > Chris Wisniewski
>> >
>> > On Sun, Aug 14, 2016 at 12:11 PM Alexander Droste via cfe-dev
>> > <cfe-dev at lists.llvm.org <mailto:cfe-dev at lists.llvm.org>> wrote:
>> >
>> > Hi,
>> >
>> > like everyone else, I think improved refactoring capabilities
>> > in clang would be pretty exciting. This is something I would
>> > really like to work on. So if there's interest to delegate
>> > some chunks of work I'd like to help.
>> >
>> > -Alex
>> >
>> > On 11.08.16 14:01, Kirill Bobyrev via cfe-dev wrote:
>> > > Ben, Milian,
>> > >
>> > > Thank you for the feedback!
>> > >
>> > > On Wed, Aug 10, 2016 at 12:59 PM, Milian Wolff via cfe-dev
>> > > <cfe-dev at lists.llvm.org <mailto:cfe-dev at lists.llvm.org>
>> > <mailto:cfe-dev at lists.llvm.org <mailto:cfe-dev at lists.llvm.org>>>
>> wrote:
>> > >
>> > > On Mittwoch, 10. August 2016 00:06:46 CEST Ben Jackson
>> via cfe-dev wrote:
>> > > > First, I think clang-refactor is a great idea and a
>> great point of focus for
>> > > > really useful tools.
>> > > > > My proposed solution is to create clang-refactor
>> tool, which would be an
>> > > > > “umbrella” for other refactoring modules. A prototype
>> of clang-refactor
>> > > > > would merge clang-rename inside of it and other
>> modules and refactorings
>> > > > > would be added later.
>> > > > >
>> > > > > A properly designed clang-refactor tool would be able
>> to process multiple
>> > > > > Translation Units, which is crucial for all mentioned
>> refactoring.
>> > > >
>> > > > As a maintainer of a code comprehension tool which uses
>> libclang, it would
>> > > > be really useful if such a refactoring ability was
>> exposed via the
>> > > > higher-level APIs. We’d *love* to have IDE-like
>> refactoring for C/C++/etc.
>> > > > in the tool, and I’m sure our users would too :).
>> > > >
>> > > > One of the challenges we have with clang-rename,
>> clang-include-fixer etc. is
>> > > > that they are difficult to integrate with existing
>> applications which use
>> > > > libclang. Or perhaps I should say, they require
>> orthogonal integration -
>> > > > currently to integrate these tools, even though I have
>> successfully
>> > > > generated a TU/AST etc., I have to shell out to a
>> binary which users may or
>> > > > may not have installed.
>> > >
>> > > That's true. Clang-refactor should consider making the
>> interface to all of the
>> > > subtools more or less uniform.
>> > >
>> > > >
>> > > > I know that is probably complex to deliver in practice,
>> and I understand
>> > > > that the maintainers may have different opinions on the
>> scope of libclang
>> > > > (or even the scope of this discussion!), but I wanted
>> to throw the idea out
>> > > > there, in case there is appetite. Certainly, I would be
>> super excited to
>> > > > integrate these tools into ycmd/YouCompleteMe. I don’t
>> doubt others would
>> > > > similarly benefit.
>> > >
>> > > Yes, ycmd and YCM are very good things to integrate into, but
>> I think that
>> > > shouldn't be the only focus, i.e. a good high-level API
>> should provide a nice
>> > > and easy way of integration to any other third-party
>> projects, too.
>> > >
>> > >
>> > > I can only second the above. KDevelop is in exactly the
>> same position, and I
>> > > bet lots of other tools out there are as well. Just think
>> of the potential
>> > > time that can be saved by handing in an existing TU
>> instead of having to parse
>> > > that yet again.
>> > >
>> > > Cheers
>> > >
>> > > --
>> > > Milian Wolff
>> > > mail at milianw.de <mailto:mail at milianw.de> <mailto:
>> mail at milianw.de
>> > <mailto:mail at milianw.de>>
>> > > http://milianw.de
>> > > _______________________________________________
>> > > cfe-dev mailing list
>> > > cfe-dev at lists.llvm.org <mailto:cfe-dev at lists.llvm.org>
>> > <mailto:cfe-dev at lists.llvm.org <mailto:cfe-dev at lists.llvm.org>>
>> > > http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
>> > <http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev>
>> > > <http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
>> > <http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev>>
>> > >
>> > >
>> > >
>> > > --
>> > > Best regards,
>> > > Kirill Bobyrev
>> > >
>> > >
>> > > _______________________________________________
>> > > cfe-dev mailing list
>> > > cfe-dev at lists.llvm.org <mailto:cfe-dev at lists.llvm.org>
>> > > http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
>> > <http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev>
>> > >
>> > _______________________________________________
>> > cfe-dev mailing list
>> > cfe-dev at lists.llvm.org <mailto:cfe-dev at lists.llvm.org>
>> > http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
>> > <http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev>
>> >
>> >
>> >
>> >
>> > --
>> > Best regards,
>> > Kirill Bobyrev
>>
>
--
Best regards,
Kirill Bobyrev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20160821/da4e2071/attachment.html>
More information about the cfe-dev
mailing list