[MonoDevelop] #D coorporation

Ben Maurer 05mauben@hawken.edu
Fri, 19 Mar 2004 09:17:19 -0500


Hey Mike!

I think you have a very good point about namespaces. I for one would
vote reverting any namespace changes for code that can be shared between
versions.

I really hope we can share code parsing stuff between the IDEs, there is
no reason it cant be done. I have been thinking about doing some work in
the parser area, and I would love to see it shared. The expression
finder thing you talk about is one of the things I was going to do -- i
would love to see it merged in to MD.

I had a few ideas, I hope you can take them as food for thought. It is
unlikely I could really dive into the parser for a few months, so if any
of these ideas seem easy to do, please feel free to steal them:

Offer `smarter' choices:

Lets say you are typing:
try {
   // ...
} catch (

Rather than show every class in the classlibs, I think that only classes
that are children of System.Exception should show up. In the same
manner, if you have
[|
public void Foo () {
}

With the cursor at |, only attribute classes should be shown. If the
name of the class ends in Attribute, when you press enter, the
`attribute' should not be typed (so you get [CLSCompliant, not
[CLSCompliantAttribute).

lets say you have the following

enum MyEnum { Foo, Bar, Baz }
public void DoFoo (MyEnum e, int i, string s);

DoFoo (|

I would love to see the following items at the top of the autocomplete
list
MyEnum.Foo
MyEnum.Bar
MyEnum.Baz

As these are the most likely items to be chosen.

if you are typing

public class Foo : ParentClass, |

Only interfaces would show up, as that is the only valid thing you could
put.

Also, I have been thinking about performance and if it is possible to
parse less stuff then we do now (eg, only parse the method your cursor
is in when you are typing).

I would really love to see this stuff in both ides.

-- Ben

>>> Mike Krueger <mike@icsharpcode.net> 03/19/04 08:50 AM >>>
Hi

Are you guys interrested in coorporation with #D or not (if not I don't 
waste time writing about new #D technology) ?

- Have you looked at the new file templates yet?
- I've fixed some bugs in the projects layer
- I've added a new functionality to the language backend: expression 
finder -> this is used for finding the expression before the '.'.
   I changed the algorithm it works much better now.
- I worked a bit on the pretty printer -> anybody cares to help?
- fixed many parser bugs :)  btw. isn't it really stupid to change 
namespaces of code that can be shared with ease between #D and 
MonoDevelop, what is the point?
  As long as I maintain #Refactory (and don't work for Ximian/Novell :))

I won't change the namespace to MonoDevelop ... will you fork the whole 
stuff, change the
  namespace every release of the basic libraries or will you replace it 
with something different ?

Regards
Mike

_______________________________________________
Monodevelop-list mailing list
Monodevelop-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/monodevelop-list