[MonoDevelop] Code analysis soc project
Marek Safar
marek.safar at gmail.com
Wed Mar 24 04:21:53 EDT 2010
Hello,
> On Tue, Mar 23, 2010 at 6:50 AM, nikhil sarda <diff.operator at gmail.com> wrote:
>
>> Thanks for the reply.
>>
>> On Tue, Mar 23, 2010 at 11:48 AM, Mike Krüger <mkrueger at novell.com> wrote:
>>
>>> Hi
>>>
>>>> Apparently the current
>>>> version of NRefactory is not good enough to detect certain types of
>>>> semantic errors. Hence detecting errors such as invalid return types,
>>>> incorrect parameters and so on are very difficult to do with the
>>>> current NRefactory.
>>>>
>>> These two are possible :) (but anything that needs some more analyzation
>>> than a resolve + type check is painful to implement)
>>>
>>>
>>>> This is because there is presently no way to go to
>>>> the parent of the node you've no way to go to the parent and top-down
>>>> analysis is difficult because "<mkrueger>: because you can't go to the
>>>> children of the nodes without knowing the type of the node". Some
>>>> things that can be implemented however are naming conventions,
>>>> spellings in comments and string literals and so on. Given this
>>>> backdrop is there any point proceeding with this project? Or should
>>>> one wait for the new DOM to be completed?
>>>>
>>> The new dom currently is almost ready - if you want to work with that
>>> it's possible. You just need a customized mono compiler source code &
>>> comment out the parser file.
>>>
>> Has it been committed to trunk yet? Also a small introduction to the
>> API would be very handy as well :)
>>
>
> That's great to hear!
>
> I'm a huge fan of the idea of on-the-fly analysis.
>
> As I see it, the core part is a framework for background analysers -
> an extension point, a service to run the analysers on new
> ParsedDocuments and report the errors and warnings, and some basic
> configuration UI. This is the initial "barrier" that needs to be
> implemented before anyone can write any analysis rules. This could
> take quite a few weeks to fully implement and polish. It would also
> be nice to have a way for rules to attach "fixes" to their results,
> and this would need a UI too. All of this is completely language
> agnostic. For example, I might want to write analysers for ASP.NET
> documents or XML, not just C#.
>
This is maybe no that hard to implement if the new DOM allows better
resolve integration with gmcs.
Marek
More information about the Monodevelop-list
mailing list