C# version of IntelliJ.....

Someone posted that JetBrains are going to implement a C# version of IntelliJ.

Is this editor going to be implemented in the C# language?
What is the timeframe on this project? (EAP?)


Visual Studio.net is a quick editor, but it lack of refactoring.



25 comments
Comment actions Permalink

Thomas wrote:

Someone posted that JetBrains are going to implement a C# version of
IntelliJ.


]]>


Is this editor going to be implemented in the C# language?


Yes.

What is the timeframe on this project? (EAP?)


Too early to say.


Visual Studio.net is a quick editor, but it lack of refactoring.


true.

</unofficial>

--
Dmitry Lomov
IntelliJ Labs / JetBrains Inc.
http://www.intellij.com
"Develop with pleasure!"

0
Comment actions Permalink

Is this editor going to be implemented in the C#
language?


Wouldn't it be quicker to build on what you already have?

0
Comment actions Permalink

Rayz wrote:
>>Is this editor going to be implemented in the C#
>>language?


Wouldn't it be quicker to build on what you already have?


Then they'd be faced with two choices: (1) stick with running it on the Java
Platform, or (2) use Visual J# to run it on .NET.

If they took the former route they would be forced to reimplement a lot of
things that .NET provides. For example: how would it be able to index files
in a C# assembly where source code wasn't available? They'd have to
reimplement the C# reflection mechanism, which is both extra effort and
extra risk. That's just one example; I'm sure there are plenty of others.

If they chose the second route, they would still be faced with the problem
of API incompatibility between Java and .NET. All of their existing Java
code would need to be rewritten to use .NET APIs (e.g. WinForms instead of
Swing, different XML handling, etc.), which would be a pretty major effort
in and of itself.

I think they'll be able to reuse the architecture and design of IDEA for a
from-scratch C# editor; I doubt they'll be able to reuse any significant
amount of code.

Just my 2p, of course...
Vil.
--
Vilya Harvey, Consultant
vilya.harvey@digitalsteps.com / digital steps /
(W) +44 (0)1483 469 480
(M) +44 (0)7816 678 457 http://www.digitalsteps.com/

Disclaimer

This e-mail and any attachments may be confidential and/or legally
privileged. If you have received this email and you are not a named
addressee, please inform the sender at Digital Steps Ltd by phone on
+44 (0)1483 469 480 or by reply email and then delete the email from
your system. If you are not a named addressee you must not use,
disclose, distribute, copy, print or rely on this email. Although
Digital Steps Ltd routinely screens for viruses, addressees should
check this email and any attachments for viruses. Digital Steps Ltd
makes no representation or warranty as to the absence of viruses in this
email or any attachments.

0
Comment actions Permalink

On Thu, 29 May 2003 10:03:47 +0400, Dmitry Lomov wrote:

>> Is this editor going to be implemented in the C# language?

Yes.


Yuck - that means it will probably ( unless you use SW# ) that it'll only
be for windows :(

--
...turn to the light - don't be frightened by the shadows it creates,
...turn to the light - turning away could be a terrible mistake
...dream theater - the great debate


0
Comment actions Permalink

Agree with your first point, but not the second.

I don't think that the language that the IDE is written has that much to do with the language it was designed to work with. As long as the IDE understands how to generate code using the language/API, then I don't think what it's written in will really matter.

0
Comment actions Permalink

On Thu, 29 May 2003 10:21:37 +0100, Vilya Harvey
<vilya.harvey@digitalsteps.com> wrote:

>Rayz wrote:
>>>Is this editor going to be implemented in the C# language?
>>
>> Wouldn't it be quicker to build on what you already have?
>
>Then they'd be faced with two choices: (1) stick with running it on the Java
>Platform, or (2) use Visual J# to run it on .NET.

Or (3) use JuggerNET from Codemesh (http://www.codemesh.com/en) :)

>If they took the former route they would be forced to reimplement a lot of
>things that .NET provides. For example: how would it be able to index files
>in a C# assembly where source code wasn't available? They'd have to
>reimplement the C# reflection mechanism, which is both extra effort and
>extra risk. That's just one example; I'm sure there are plenty of others.

Using JuggerNET solves this problem.

>If they chose the second route, they would still be faced with the problem
>of API incompatibility between Java and .NET. All of their existing Java
>code would need to be rewritten to use .NET APIs (e.g. WinForms instead of
>Swing, different XML handling, etc.), which would be a pretty major effort
>in and of itself.

Using JuggerNET also solves this problem.

I'm not saying it would be trivial, just much easier than
re-implementing from scratch.

Political issues may override technical ones, however.


Neil
Codemesh, Inc.
Solutions for Language Integration

0
Comment actions Permalink

Rayz wrote:

Agree with your first point, but not the second.


Are you referring to the API differences between Java on the Java Platform
and Visual J# on .NET? If so, what do you disagree with? The entire point
was fact rather than opinion... at least as far as I'm aware. If I'm wrong,
please correct me. I believe that the only way at present to run Java
programs on .NET is via Visual J#, which (again, as far as I know) has the
same syntax as Java but relies on the .NET runtime and class libraries, and
so doesn't have all of the standard Java APIs. I think Microsoft released a
package of tools to help migrating Java programs to .NET a while ago (it was
called JUMP, if I remember correctly); maybe that would help?

I don't think that the language that the IDE is written has that much to

> do with the language it was designed to work with. As long as the IDE
> understands how to generate code using the language/API, then I don't
> think what it's written in will really matter.

I disagree. All of the successful IDEs that I know of are written in the
language for which they are intended. IMHO there are three reasons behind this:

  • because the IDE developers can use their own tools to develop their

product (as JetBrains do);

  • people extending the IDE (e.g. plugin developers) don't need to know a

second language; and

  • there are successful IDEs that I don't know about. :)


Cheerio,
Vil.
--
Vilya Harvey, Consultant
vilya.harvey@digitalsteps.com / digital steps /
(W) +44 (0)1483 469 480
(M) +44 (0)7816 678 457 http://www.digitalsteps.com/

Disclaimer

This e-mail and any attachments may be confidential and/or legally
privileged. If you have received this email and you are not a named
addressee, please inform the sender at Digital Steps Ltd by phone on
+44 (0)1483 469 480 or by reply email and then delete the email from
your system. If you are not a named addressee you must not use,
disclose, distribute, copy, print or rely on this email. Although
Digital Steps Ltd routinely screens for viruses, addressees should
check this email and any attachments for viruses. Digital Steps Ltd
makes no representation or warranty as to the absence of viruses in this
email or any attachments.

0
Comment actions Permalink

>> Political issues may override technical ones, however. <<

Well, political issues aside, I imagine that this tool isn't licensed for free, which may add to the cost of IDEA/C#.

.. and then there is the question of speed; the more layers they go through, then the slower it'll be.

0
Comment actions Permalink

Neil Galarneau wrote:
> Or (3) use JuggerNET from Codemesh (http://www.codemesh.com/en) :)

I hadn't heard of JuggerNET; It looks interesting. As far as I could gather
from the site, the integration is one way only: .NET classes can call Java
classes, but Java classes cannot call .NET classes. Is that right? If so,
how would plugins written in C# (say) be handled?

Cheerio,
Vil.
--
Vilya Harvey, Consultant
vilya.harvey@digitalsteps.com / digital steps /
(W) +44 (0)1483 469 480
(M) +44 (0)7816 678 457 http://www.digitalsteps.com/

Disclaimer

This e-mail and any attachments may be confidential and/or legally
privileged. If you have received this email and you are not a named
addressee, please inform the sender at Digital Steps Ltd by phone on
+44 (0)1483 469 480 or by reply email and then delete the email from
your system. If you are not a named addressee you must not use,
disclose, distribute, copy, print or rely on this email. Although
Digital Steps Ltd routinely screens for viruses, addressees should
check this email and any attachments for viruses. Digital Steps Ltd
makes no representation or warranty as to the absence of viruses in this
email or any attachments.

0
Comment actions Permalink

Visual Studio.net is a quick editor, but it lack of refactoring.


I know of 2 commercial C# Visual.NET add-ons that add refactorings to the
environment
http://www.xtreme-simplicity.net/CSharpRefactory.html
http://www.dotnetrefactoring.com/


0
Comment actions Permalink

>>Are you referring to the API differences between Java on the Java Platform
and Visual J# on .NET? If so, what do you disagree with? The entire point
was fact rather than opinion... at least as far as I'm aware. If I'm wrong,
please correct me.<<

This depends on where IDEA/# is intended to run; I imagined that it would just be a Windows-type client application. If this is the case then it can run anywhere that there is a JVM, much as it does now.


>> I disagree. All of the successful IDEs that I know of are written in the language for which they are intended. <<

Mmmm ....

>> * there are successful IDEs that I don't know about. :) <<

.. and there's your answer.

CodeWright
Ed for Windows
Visual SlickEdit

And the original VisualAge for Java was actually written in SmallTalk. A bit slow, but some folk swore by it (and still do). I think IBM has replaced it with an Eclipse derivative, which itself, is shaping up to be a multi-language IDE.

0
Comment actions Permalink

Mark Derricutt wrote:

On Thu, 29 May 2003 10:03:47 +0400, Dmitry Lomov wrote:

>>>Is this editor going to be implemented in the C# language?
>>
>>Yes.


Yuck - that means it will probably ( unless you use SW# ) that it'll only
be for windows :(


Considering that there really is only one full implementation of .NET --
the MS implementation on Windows -- you would find it difficult to run
or test your applications on a non-Windows platform such as Linux using
Mono.

Ciao,
Gordon

--
Gordon Tyler (Software Developer)
Quest Software <http://java.quest.com/>
260 King Street East, Toronto, Ontario M5A 4L5, Canada
Voice: 416-643-4846 | Fax: 416-594-1919

0
Comment actions Permalink

HOORAY! HOORAY!

I love Java, and I love C#...

I love Java 10x more because of IDEA...
...but in C# I feel crippled in any editor I have tried to use.

And by the way, the folks who seem to get it about the sort of IDE that's missing, they all know about IDEA (I've spoken with Refactory and Flywheel guys, and they both credit IDEA with holding the golden standard).

... problem is, the big corporate $$ are behind the projects that rely on ASP.NET and also have teams of developers who are stuck on VB.NET (why anybody would use that language is beyond me...) that's a big bite to chew.


Please please try and make it possible for individual developers like me to be able to afford this... I just cannot spend hundreds of dollars on an IDE... as an example, I got started by buying VC#.NET, wich is widely available for $99.

Promise: I'll promote IDEA for C# everywhere I go if it's anywhere near as good as it is for Java...
(best steve martin impression)
all I really need is auto-import, that's it.
... and code folding, I need code folding and auto-import, and that's it...
...and a few refactorings. I need refactoring, auto-import and code-folding...
...oh yes, I need helpers to implement interfaces and override methods...
...and a gutter that shows me overrides and implements...
...and another gutter with error and warning markers...
...that's all I need.

RATS! I need the whole thing!

0
Comment actions Permalink

You're really missing something if you think IDEA is only about auto imports, gutter marks and refactoring :)

0
Comment actions Permalink

...well there's no integration with my SC software (Continuus) and I don't do EJB or JSP development.
We have our own make/test utilities, and unfortunately our make isn't ANT, so I don't use that.
The code inspections take so long on my projects I can't run them at all.
Code templates are cool, but I don't rely upon them so heavily.

The standard error checking, todo lists, quick help features are hugely helpful... just had to stop listing stuff, I was gushing enough :)

...yes the debugger is great too.

All together there's an awesome productivity that comes from a total management of your code and its relationship to all the other elements in your module.

What is the big picture you say I'm missing, though?

0
Comment actions Permalink

He, nothing you didn't already know about, judging by the parent post. You're as familiar with IDEA as any experienced user would be, and have found the IDEA golden point already: that each feature may be small in itself, but the sum represent a great gain in productivity.

My previous post was just a nag :)

0
Comment actions Permalink

On Thu, 29 May 2003 11:25:22 -0400, Gordon Tyler wrote:

Considering that there really is only one full implementation of .NET --
the MS implementation on Windows -- you would find it difficult to run or
test your applications on a non-Windows platform such as Linux using Mono.


Currently yes, however, Mono is coming along very nicely, and will
continue to do so.


--
...turn to the light - don't be frightened by the shadows it creates,
...turn to the light - turning away could be a terrible mistake
...dream theater - the great debate


0
Comment actions Permalink

On Thu, 29 May 2003 14:38:06 +0100, Vilya Harvey
<vilya.harvey@digitalsteps.com> wrote:

>Neil Galarneau wrote:

Or (3) use JuggerNET from Codemesh (http://www.codemesh.com/en) :)

>
>I hadn't heard of JuggerNET; It looks interesting. As far as I could gather
>from the site, the integration is one way only: .NET classes can call Java
>classes, but Java classes cannot call .NET classes. Is that right?

The support for .NET calling Java is automatic & complete. The
support for the other direction won't be complete in 1.0.

If so, how would plugins written in C# (say) be handled?


This, actually, will be doable in 1.0.

Plugins implement interfaces. In JuggerNET you mark those interfaces
as callback & we automatically generate code that supports Java
calling those classes through the interfaces. I.e. .NET classes
implementing Java interfaces will be able to be called by Java through
those interfaces.

After 1.0 we will add full support for going both ways.


Neil

0
Comment actions Permalink

How plugins written in C# are supposed to create Swing UI's?

Eugene


"Neil Galarneau" <neil@codemesh.com> wrote in message
news:j5vcdv825ugbi3e3jsiafqll6v7d1et2gv@4ax.com...

On Thu, 29 May 2003 14:38:06 +0100, Vilya Harvey
<vilya.harvey@digitalsteps.com> wrote:

>

>Neil Galarneau wrote:

Or (3) use JuggerNET from Codemesh (http://www.codemesh.com/en) :)

>
>I hadn't heard of JuggerNET; It looks interesting. As far as I could

gather

>from the site, the integration is one way only: .NET classes can call

Java

>classes, but Java classes cannot call .NET classes. Is that right?

>

The support for .NET calling Java is automatic & complete. The
support for the other direction won't be complete in 1.0.

>

If so, how would plugins written in C# (say) be handled?

>

This, actually, will be doable in 1.0.

>

Plugins implement interfaces. In JuggerNET you mark those interfaces
as callback & we automatically generate code that supports Java
calling those classes through the interfaces. I.e. .NET classes
implementing Java interfaces will be able to be called by Java through
those interfaces.

>

After 1.0 we will add full support for going both ways.

>
>

Neil

>


0
Comment actions Permalink

Alex,

This is the IntelliJ CTO.

Creating the Swing UI is no problem, right? Just like in C++?


Neil

On Fri, 30 May 2003 19:40:35 +0200, "Eugene Belyaev"
<beg@intellij.com> wrote:

>How plugins written in C# are supposed to create Swing UI's?
>
>Eugene
>
>
>"Neil Galarneau" <neil@codemesh.com> wrote in message
>news:j5vcdv825ugbi3e3jsiafqll6v7d1et2gv@4ax.com...
>> On Thu, 29 May 2003 14:38:06 +0100, Vilya Harvey
>> <vilya.harvey@digitalsteps.com> wrote:
>>
>> >Neil Galarneau wrote:
>> > > Or (3) use JuggerNET from Codemesh (http://www.codemesh.com/en) :)
>> >
>> >I hadn't heard of JuggerNET; It looks interesting. As far as I could
>gather
>> >from the site, the integration is one way only: .NET classes can call
>Java
>> >classes, but Java classes cannot call .NET classes. Is that right?
>>
>> The support for .NET calling Java is automatic & complete. The
>> support for the other direction won't be complete in 1.0.
>>
>> > If so, how would plugins written in C# (say) be handled?
>>
>> This, actually, will be doable in 1.0.
>>
>> Plugins implement interfaces. In JuggerNET you mark those interfaces
>> as callback & we automatically generate code that supports Java
>> calling those classes through the interfaces. I.e. .NET classes
>> implementing Java interfaces will be able to be called by Java through
>> those interfaces.
>>
>> After 1.0 we will add full support for going both ways.
>>
>>
>> Neil

0
Comment actions Permalink

So if we already have a license for idea/java does that mean we get the c# version too? At a discount? What about a discount for existing idea/java users who are willing to do alpha/beta testing?

0
Comment actions Permalink

It is very easy to make C# code that displays a Swing GUI. We have
done this.

What wouldn't be so easy is to add a Swing panel to a .NET Winforms
GUI. That would require some Professional Services work on our end.

Neil

On Fri, 30 May 2003 19:40:35 +0200, "Eugene Belyaev"
<beg@intellij.com> wrote:

>How plugins written in C# are supposed to create Swing UI's?
>
>Eugene
>
>
>"Neil Galarneau" <neil@codemesh.com> wrote in message
>news:j5vcdv825ugbi3e3jsiafqll6v7d1et2gv@4ax.com...
>> On Thu, 29 May 2003 14:38:06 +0100, Vilya Harvey
>> <vilya.harvey@digitalsteps.com> wrote:
>>
>> >Neil Galarneau wrote:
>> > > Or (3) use JuggerNET from Codemesh (http://www.codemesh.com/en) :)
>> >
>> >I hadn't heard of JuggerNET; It looks interesting. As far as I could
>gather
>> >from the site, the integration is one way only: .NET classes can call
>Java
>> >classes, but Java classes cannot call .NET classes. Is that right?
>>
>> The support for .NET calling Java is automatic & complete. The
>> support for the other direction won't be complete in 1.0.
>>
>> > If so, how would plugins written in C# (say) be handled?
>>
>> This, actually, will be doable in 1.0.
>>
>> Plugins implement interfaces. In JuggerNET you mark those interfaces
>> as callback & we automatically generate code that supports Java
>> calling those classes through the interfaces. I.e. .NET classes
>> implementing Java interfaces will be able to be called by Java through
>> those interfaces.
>>
>> After 1.0 we will add full support for going both ways.
>>
>>
>> Neil
>>
>

0
Comment actions Permalink

What wouldn't be so easy is to add a Swing panel to a .NET Winforms
GUI. That would require some Professional Services work on our end.


Sorry, but sounds like Not-Very-Professional Advertisement.

--
Dmitry Skavish
-


Boston, MA, USA
tel. +1 781 370-6909
http://www.jzox.com
http://www.flashgap.com

0
Comment actions Permalink

On Fri, 30 May 2003 20:44:54 +0000, charles decroes wrote:

users who are willing to do alpha/beta testing?


I would assume they may do an EAP process for the C# version, but I doubt
the IDEA/J ( hopefully it never gets renamed that ) licenses would work
for C#.

--
...turn to the light - don't be frightened by the shadows it creates,
...turn to the light - turning away could be a terrible mistake
...dream theater - the great debate


0
Comment actions Permalink

On Fri, 30 May 2003 19:56:41 -0400, Dmitry Skavish <dmitry@jzox.com>
wrote:

>> What wouldn't be so easy is to add a Swing panel to a .NET Winforms
>> GUI. That would require some Professional Services work on our end.
>
>Sorry, but sounds like Not-Very-Professional Advertisement.

That's true. In a Professional Advertisement you never admit that
there is something that your product can't do. That's why engineers
don't do well in advertising. Most engineers are too honest.

The capabilities that JuggerNET actually DOES have are quite useful
for lots and lots of people and projects.

Neil

P.S. We actually have a lot of experience in cross-GUI integration. We
did Swing applets in an MFC GUI for a Professional Services client.
Cross-GUI is very hard because making it work correctly relies heavily
on the implementation details of BOTH GUIs. The internals of awt.dll
can and do change drastically from version to version.

0

Please sign in to leave a comment.