www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.ide - IDE written in D

reply "Trvhgoy" <trvhgoy gmail.com> writes:
Hello,
is there somebody who works on an open source integrated
developement environment written in D?
I have heared of Poseiden, but nobody works actively on it, right?

Regards Trvhgoy
Jul 29 2013
next sibling parent reply "John Colvin" <john.loughran.colvin gmail.com> writes:
On Monday, 29 July 2013 at 09:47:09 UTC, Trvhgoy wrote:
 Hello,
 is there somebody who works on an open source integrated
 developement environment written in D?
 I have heared of Poseiden, but nobody works actively on it, 
 right?

 Regards Trvhgoy

From the looks of the dsource page, poseidon hasn't had any attention in a few years. D-IDE (http://d-ide.sourceforge.net/) is in active development, but it's windows only. Visual D (https://github.com/rainers/visuald http://www.dsource.org/projects/visuald) is an extension for VisualStudio, almost entirely written in D
Jul 29 2013
parent reply Jacob Carlborg <doob me.com> writes:
On 2013-08-06 09:09, eles wrote:

 I have a question about DWT: the fact that is (largely) a wrapper for
 native widgets, that is widgets provided by the operating system...
 won't make this kind of toolkit inappropriate for... writing user
 interfaces of operating systems?

 Imagine that one day you are writing the next version of Windows, from
 scratch, in D. What you will wrap in order to provide the widgets?

I'm not sure I understand the question. You would create the GUI in D just as it's now in C or C++. Then you would wrap the widgets, just as know, in the DWT interface. You could theoretically decided that the Windows GUI API would be the same as DWT and then you could use it directly. Or, the DWT implementation for this Windows version would be very small and light. Note that DWT contains quite a lot of code making the widgets behave somewhat similar on all platforms.
  From this point of view, I tend to think that a Swing/AWT-like approach
 is the better choice. This is also why I pushed a bit for FOX Toolkit.

AWT uses native widgets as well. -- /Jacob Carlborg
Aug 06 2013
parent reply Jacob Carlborg <doob me.com> writes:
On 2013-08-06 14:23, eles wrote:

 Yes, but in order to create the GUI (remember, you have no widgets to
 wrap), I tend to think it would be better to have the toolkit designing
 its own widgets (you will still need some graphic primitives, but that
 is basically drivers).

 For example, how you wold solve this problem with DWT or any other
 wrapper toolkit:

 "implement a calendar-like widget for an operating system"

 You cannot rely on wrapping a "calendar" widget of the OS' GUI, simply
 because you are writing the GUI.

If a widget isn't available on a given platform one would have to implement that using the graphics primitives, that's also what DWT does.
 OTOH, if the toolkit designs its own widgets (in terms of "draw pixel;
 draw line" etc.), you could build up the GUI of the OS itself.

 In my view, a systems programming language should not rely on the fact
 that widgets already exist and only needs to wrap those.

You would still need to some graphics primitives. Do you want to implement them yourself as well? I mean, you have to draw the line somewhere. There's always a layer beneath you that you rely on, if you're not doing embedded or similar.
 Yes, C++ GUI libraries, many of them, rely on that assumption; however,
 none of them is standard.

 Imagine the guys at Microsoft writing the basic DLLs that provide the
 user the pushbutton, the radiobutton etc. They have no previously
 existing widgets to wrap. They are creating the widgets that others will
 wrap.

 So, what a systems language should provide in its *standard* toolkit?
 Something that could be run on the bare metal and allow building on top
 of it, or something that rely on already having those things written by
 somebody else? Who will write this "else" and in what language, and with
 what library? (it still could be in D, but *without the support of the
 standard toolkit*)

You will always have to rely on something else, see above.
 I think that providing only a wrapper of native widgets will make
 writing native widgets in D less appealing.

So you want a non-native toolkit. -- /Jacob Carlborg
Aug 07 2013
parent reply Jacob Carlborg <doob me.com> writes:
On 2013-08-07 16:20, eles wrote:

 It does, but only for those platforms where those widgets are not
 available. For many widgets on Windows, it does not. How would you write
 those widgets for the next version of Windows?

As I said, use some form of graphics primitives. These would be implemented on top of OpenGL or DirectX. OpenGL is implemented in the graphics drivers, don't know how it works with DirectX. -- /Jacob Carlborg
Aug 07 2013
parent Jacob Carlborg <doob me.com> writes:
On 2013-08-08 09:25, eles wrote:
 On Wednesday, 7 August 2013 at 17:32:15 UTC, Suliman wrote:
 I am still using Poseidon IDE

Thanks. It looks nice. Maybe there could be some synergy between Poseidon and DDT. Both share something with Eclipse, and Eclipse is SWT incarnation. Not necessarily in code, but could be, for example, in interface.

Poseidon is built using DWT (which is a port of SWT to D), the older version. Eclipse is built using SWT as well. -- /Jacob Carlborg
Aug 08 2013
prev sibling next sibling parent "Trvhgoy" <trvhgoy gmail.com> writes:
On Monday, 29 July 2013 at 11:48:59 UTC, John Colvin wrote:
 On Monday, 29 July 2013 at 09:47:09 UTC, Trvhgoy wrote:
 Hello,
 is there somebody who works on an open source integrated
 developement environment written in D?
 I have heared of Poseiden, but nobody works actively on it, 
 right?

 Regards Trvhgoy

From the looks of the dsource page, poseidon hasn't had any attention in a few years. D-IDE (http://d-ide.sourceforge.net/) is in active development, but it's windows only. Visual D (https://github.com/rainers/visuald http://www.dsource.org/projects/visuald) is an extension for VisualStudio, almost entirely written in D

Thanks for your answer. D-IDE is written in .NET, so not interesting for me. Visual D is windows only too, right? I'm looking for a cross-plattform stand alone solution (at least theoretical cross-plattform). Maybe I should have a look at Poseidon. Better than nothing. :) Is it right, that DWT is not further developed? The only stable option I know is GtkD. Is there any others?
Jul 29 2013
prev sibling next sibling parent "kdmult" <kdmult ya.ru> writes:
On Monday, 29 July 2013 at 16:34:27 UTC, Trvhgoy wrote:
 The only stable option I know is GtkD. Is there any others?

Please look at http://wiki.dlang.org/IDEs
Jul 29 2013
prev sibling next sibling parent "Chris" <wendlec tcd.ie> writes:
 Is it right, that DWT is not further developed?
 The only stable option I know is GtkD. Is there any others?

GtkD works for me, the most mature framework IMO. DWT never quite made it. All other options have been discontinued as far as I know, like for example wxD. IUPD would have been interesting. Cf. http://www.tecgraf.puc-rio.br/iup/. Like Gtk, it is written in C, so maybe you can write your own D interface. The API is not big, they say.
Jul 29 2013
prev sibling next sibling parent "John Colvin" <john.loughran.colvin gmail.com> writes:
On Monday, 29 July 2013 at 16:34:27 UTC, Trvhgoy wrote:
 On Monday, 29 July 2013 at 11:48:59 UTC, John Colvin wrote:
 On Monday, 29 July 2013 at 09:47:09 UTC, Trvhgoy wrote:
 Hello,
 is there somebody who works on an open source integrated
 developement environment written in D?
 I have heared of Poseiden, but nobody works actively on it, 
 right?

 Regards Trvhgoy

From the looks of the dsource page, poseidon hasn't had any attention in a few years. D-IDE (http://d-ide.sourceforge.net/) is in active development, but it's windows only. Visual D (https://github.com/rainers/visuald http://www.dsource.org/projects/visuald) is an extension for VisualStudio, almost entirely written in D

Thanks for your answer. D-IDE is written in .NET, so not interesting for me.

Woops sorry, I thought D-IDE was written in D, my mistake.
Jul 29 2013
prev sibling next sibling parent "evilrat" <evilrat666 gmail.com> writes:
On Monday, 29 July 2013 at 22:19:35 UTC, Chris wrote:
 Is it right, that DWT is not further developed?
 The only stable option I know is GtkD. Is there any others?

GtkD works for me, the most mature framework IMO. DWT never quite made it. All other options have been discontinued as far as I know, like for example wxD. IUPD would have been interesting. Cf. http://www.tecgraf.puc-rio.br/iup/. Like Gtk, it is written in C, so maybe you can write your own D interface. The API is not big, they say.

gtk has lots of bugs and glitches especially on OS X. i hate using xamarin studio and mono-d, but unfortunately there is no other tools with good enough autocomplete for mac(and i think linux too). so it looks like we need a truly D UI(not wrapper) first.
Jul 29 2013
prev sibling next sibling parent "Brian Schott" <briancschott gmail.com> writes:
On Tuesday, 30 July 2013 at 03:49:36 UTC, evilrat wrote:
 On Monday, 29 July 2013 at 22:19:35 UTC, Chris wrote:
 Is it right, that DWT is not further developed?
 The only stable option I know is GtkD. Is there any others?

GtkD works for me, the most mature framework IMO. DWT never quite made it. All other options have been discontinued as far as I know, like for example wxD. IUPD would have been interesting. Cf. http://www.tecgraf.puc-rio.br/iup/. Like Gtk, it is written in C, so maybe you can write your own D interface. The API is not big, they say.

gtk has lots of bugs and glitches especially on OS X. i hate using xamarin studio and mono-d, but unfortunately there is no other tools with good enough autocomplete for mac(and i think linux too). so it looks like we need a truly D UI(not wrapper) first.

Or, you could provide autocompletion with a standalone program that's called by whatever text editor you already use. Go has GoCode (https://github.com/nsf/gocode) which shows that this sort of thing is possible. I have a theory that something similar can be done for D.
Jul 29 2013
prev sibling next sibling parent "Trvhgoy" <trvhgoy gmail.com> writes:
On Tuesday, 30 July 2013 at 03:49:36 UTC, evilrat wrote:
 On Monday, 29 July 2013 at 22:19:35 UTC, Chris wrote:
 Is it right, that DWT is not further developed?
 The only stable option I know is GtkD. Is there any others?

GtkD works for me, the most mature framework IMO. DWT never quite made it. All other options have been discontinued as far as I know, like for example wxD. IUPD would have been interesting. Cf. http://www.tecgraf.puc-rio.br/iup/. Like Gtk, it is written in C, so maybe you can write your own D interface. The API is not big, they say.

gtk has lots of bugs and glitches especially on OS X. i hate using xamarin studio and mono-d, but unfortunately there is no other tools with good enough autocomplete for mac(and i think linux too). so it looks like we need a truly D UI(not wrapper) first.

Two important things that I miss in D are a D UI, as you said, and a really good IDE (written in D, stand alone, cross-plattform, open source, modern features and so on). I would offer time for developing these things, cause I think it would be a great contribution to the D toolchain and would boost the popularity of D. But I dont know any interesting project. The UIs are "just" wrappers and the active IDEs are "just" extensions. I dont wanna say that these projects are poor. I see the hard work people invest in it. But these projects aren't what I'm searching for.
Jul 29 2013
prev sibling next sibling parent "eles" <eles eles.com> writes:
On Tuesday, 30 July 2013 at 05:46:42 UTC, Trvhgoy wrote:
 On Tuesday, 30 July 2013 at 03:49:36 UTC, evilrat wrote:
 On Monday, 29 July 2013 at 22:19:35 UTC, Chris wrote:


 Two important things that I miss in D are a D UI, as you said,

Choice of a good toolkit is a long discussion. See this thread: http://forum.dlang.org/thread/vtaufckbpdkpuxyztyoi forum.dlang.org and my own suggestion therein: http://forum.dlang.org/thread/vtaufckbpdkpuxyztyoi forum.dlang.org?page=10#post-ksirfxsiejlweyhomwmh:40forum.dlang.org that is, the FOX toolkit (http://fox-toolkit.org/goals.html). AFAICT, the choice to take SWT (or other famous toolkit) and fork it, then port it to D (such as DWT is), is not the best option. For a simple reason. The D port will always be compared against the original toolkit, which will be almost always more advanced and a moving target. People tend to go with the brand, especially if the brand is well-known. It is a marketing paradigm. OTOH, a good, but rather anonymous toolkit will be more appropriate, at least for the following reasons: - a D-ported version of it won't be shaded by the original - evolution is slower, so not a fast-moving target - the team behind that toolkit will be more than glad to help, as their toolkit will gain in popularity, and could even be converted to D-development (instead of C or C++ or whatever)
 and a really good IDE (written in D, stand alone, 
 cross-plattform, open source, modern features and so on).

Before going into that, the toolkit should be chosen. And, obviously, the IDE should be written with the help of that toolkit. It will not be just a useful tool, but also a showroom for the toolkit (just like Borland's IDEs were for TurboVision and, later, OWL).
Jul 30 2013
prev sibling next sibling parent "Chris" <wendlec tcd.ie> writes:
On Tuesday, 30 July 2013 at 08:00:15 UTC, eles wrote:
 On Tuesday, 30 July 2013 at 05:46:42 UTC, Trvhgoy wrote:
 On Tuesday, 30 July 2013 at 03:49:36 UTC, evilrat wrote:
 On Monday, 29 July 2013 at 22:19:35 UTC, Chris wrote:


 Two important things that I miss in D are a D UI, as you said,

Choice of a good toolkit is a long discussion. See this thread: http://forum.dlang.org/thread/vtaufckbpdkpuxyztyoi forum.dlang.org and my own suggestion therein: http://forum.dlang.org/thread/vtaufckbpdkpuxyztyoi forum.dlang.org?page=10#post-ksirfxsiejlweyhomwmh:40forum.dlang.org that is, the FOX toolkit (http://fox-toolkit.org/goals.html). AFAICT, the choice to take SWT (or other famous toolkit) and fork it, then port it to D (such as DWT is), is not the best option. For a simple reason. The D port will always be compared against the original toolkit, which will be almost always more advanced and a moving target. People tend to go with the brand, especially if the brand is well-known. It is a marketing paradigm. OTOH, a good, but rather anonymous toolkit will be more appropriate, at least for the following reasons: - a D-ported version of it won't be shaded by the original - evolution is slower, so not a fast-moving target - the team behind that toolkit will be more than glad to help, as their toolkit will gain in popularity, and could even be converted to D-development (instead of C or C++ or whatever)
 and a really good IDE (written in D, stand alone, 
 cross-plattform, open source, modern features and so on).

Before going into that, the toolkit should be chosen. And, obviously, the IDE should be written with the help of that toolkit. It will not be just a useful tool, but also a showroom for the toolkit (just like Borland's IDEs were for TurboVision and, later, OWL).

I'm still dreaming of a pure D UI. But for now interfacing to C seems to be the only option / viable solution. I would recommend pure C frameworks such as Gtk or IUP. So far GtkD has worked for me on Linux. It is a mature framework and well documented. Also it features Glade Interface Designer (no need to code the layout by hand which is - IMO - a must have feature nowadays). SWT / DWT is almost impossible to maintain for a small group. SWT was and is a 24/7 nightmare for developers, and they do it 24/7. SWT is a moving target, I agree, but so is D itself (deprecated features, new features etc.). So you have two moving targets to keep in sync with each other.
Jul 30 2013
prev sibling next sibling parent "eles" <eles eles.com> writes:
On Tuesday, 30 July 2013 at 09:56:46 UTC, Chris wrote:
 On Tuesday, 30 July 2013 at 08:00:15 UTC, eles wrote:
 On Tuesday, 30 July 2013 at 05:46:42 UTC, Trvhgoy wrote:
 On Tuesday, 30 July 2013 at 03:49:36 UTC, evilrat wrote:
 On Monday, 29 July 2013 at 22:19:35 UTC, Chris wrote:




Hey, I was suggesting to re-write FOX tk in D, not to bind to it (besides, it is C++).
Jul 30 2013
prev sibling next sibling parent "Chris" <wendlec tcd.ie> writes:
 I'm still dreaming of a pure D UI. But for now interfacing to C

Hey, I was suggesting to re-write FOX tk in D, not to bind to it (besides, it is C++).

Of course, something written in D, that would be really fantastic. But for now, we only have C/bindings solutions, if we need a UI toolkit. Or am I mistaken here?
Jul 30 2013
prev sibling next sibling parent "eles" <eles eles.com> writes:
On Tuesday, 30 July 2013 at 12:31:26 UTC, Chris wrote:
 we need a UI toolkit. Or am I mistaken here?

Unfortunately, you are not mistaken. AFAIK, DWT was the sole project that actually tried to go that way.
Jul 30 2013
prev sibling next sibling parent "Chris" <wendlec tcd.ie> writes:
On Tuesday, 30 July 2013 at 15:29:44 UTC, eles wrote:
 On Tuesday, 30 July 2013 at 12:31:26 UTC, Chris wrote:
 we need a UI toolkit. Or am I mistaken here?

Unfortunately, you are not mistaken. AFAIK, DWT was the sole project that actually tried to go that way.

DWT is way too big for a small community like the D community. SWT had the Eclipse guys SWeaTing for a long time (pardon the eye-pun). "Moving target" is right.
Jul 30 2013
prev sibling next sibling parent "Trvhgoy" <trvhgoy gmail.com> writes:
On Tuesday, 30 July 2013 at 08:00:15 UTC, eles wrote:
 On Tuesday, 30 July 2013 at 05:46:42 UTC, Trvhgoy wrote:
 On Tuesday, 30 July 2013 at 03:49:36 UTC, evilrat wrote:
 On Monday, 29 July 2013 at 22:19:35 UTC, Chris wrote:


 Two important things that I miss in D are a D UI, as you said,

Choice of a good toolkit is a long discussion. See this thread: http://forum.dlang.org/thread/vtaufckbpdkpuxyztyoi forum.dlang.org and my own suggestion therein: http://forum.dlang.org/thread/vtaufckbpdkpuxyztyoi forum.dlang.org?page=10#post-ksirfxsiejlweyhomwmh:40forum.dlang.org that is, the FOX toolkit (http://fox-toolkit.org/goals.html). AFAICT, the choice to take SWT (or other famous toolkit) and fork it, then port it to D (such as DWT is), is not the best option. For a simple reason. The D port will always be compared against the original toolkit, which will be almost always more advanced and a moving target. People tend to go with the brand, especially if the brand is well-known. It is a marketing paradigm. OTOH, a good, but rather anonymous toolkit will be more appropriate, at least for the following reasons: - a D-ported version of it won't be shaded by the original - evolution is slower, so not a fast-moving target - the team behind that toolkit will be more than glad to help, as their toolkit will gain in popularity, and could even be converted to D-development (instead of C or C++ or whatever)
 and a really good IDE (written in D, stand alone, 
 cross-plattform, open source, modern features and so on).

Before going into that, the toolkit should be chosen. And, obviously, the IDE should be written with the help of that toolkit. It will not be just a useful tool, but also a showroom for the toolkit (just like Borland's IDEs were for TurboVision and, later, OWL).

I started to reading the posted thread. Very interesting. Now I think the D-Community really needs a solid UI Toolkit first and then a IDE developed with this Toolkit, as you said. In my opinion a software rendered approach would be very fine. Where you can define the layout with a markup language like XAML or XUL for example and the styling with a CSS-like definition. I've planned to make some further research on this topic. Thanks for all replys!
Jul 30 2013
prev sibling next sibling parent "Mike Parker" <aldacron gmail.com> writes:
On Wednesday, 31 July 2013 at 05:32:49 UTC, Trvhgoy wrote:

 In my opinion a software rendered approach would be very fine. 
 Where you can define the layout with a markup language like 
 XAML or XUL for example and the styling with a CSS-like 
 definition.

Have you seen Harmonia[1]? It was implemented along those lines. It was abandoned long ago, but it might be a good place to start. [1] http://harmonia.terrainformatica.com/doku.php
Jul 31 2013
prev sibling next sibling parent "Chris" <wendlec tcd.ie> writes:
On Wednesday, 31 July 2013 at 08:51:47 UTC, Mike Parker wrote:
 On Wednesday, 31 July 2013 at 05:32:49 UTC, Trvhgoy wrote:

 In my opinion a software rendered approach would be very fine. 
 Where you can define the layout with a markup language like 
 XAML or XUL for example and the styling with a CSS-like 
 definition.

Have you seen Harmonia[1]? It was implemented along those lines. It was abandoned long ago, but it might be a good place to start. [1] http://harmonia.terrainformatica.com/doku.php

I have seen Harmonia. IMO, XML (or whatever markup language) and CSS are a good solution. It gives you a lot of freedom. Also, a UI tool like Glade or Interface Builder is indispensible these days. I don't want to acutally code the basic behavior and exact position of a widget. An utter waste of time. JavaFX and Scene Builder are another example of markup + CSS.
Jul 31 2013
prev sibling next sibling parent "Trvhgoy" <trvhgoy gmail.com> writes:
On Wednesday, 31 July 2013 at 09:30:08 UTC, Chris wrote:
 On Wednesday, 31 July 2013 at 08:51:47 UTC, Mike Parker wrote:
 On Wednesday, 31 July 2013 at 05:32:49 UTC, Trvhgoy wrote:

 In my opinion a software rendered approach would be very 
 fine. Where you can define the layout with a markup language 
 like XAML or XUL for example and the styling with a CSS-like 
 definition.

Have you seen Harmonia[1]? It was implemented along those lines. It was abandoned long ago, but it might be a good place to start. [1] http://harmonia.terrainformatica.com/doku.php


Thanks for the hint! I have not known Harmonia before and I think your right, it would be a good place to start at least for research. :)
 I have seen Harmonia. IMO, XML (or whatever markup language) 
 and CSS are a good solution. It gives you a lot of freedom. 
 Also, a UI tool like Glade or Interface Builder is 
 indispensible these days. I don't want to acutally code the 
 basic behavior and exact position of a widget. An utter waste 
 of time.

 JavaFX and Scene Builder are another example of markup + CSS.

Yes, I'm with you. A UI designer would be a necessary tool to get somebody to work with the toolkit.
Jul 31 2013
prev sibling next sibling parent "Jeremy DeHaan" <dehaan.jeremiah gmail.com> writes:
On Monday, 29 July 2013 at 09:47:09 UTC, Trvhgoy wrote:
 Hello,
 is there somebody who works on an open source integrated
 developement environment written in D?
 I have heared of Poseiden, but nobody works actively on it, 
 right?

 Regards Trvhgoy

I was actually going to start work on a D IDE pretty soon. I just needed to wrap up some other projects first. I was going to use gtkD as the GUI system for it though. Creating a new UI for D would be a pretty huge undertaking!
Jul 31 2013
prev sibling next sibling parent "Trvhgoy" <trvhgoy gmail.com> writes:
On Wednesday, 31 July 2013 at 21:30:43 UTC, Jeremy DeHaan wrote:
 On Monday, 29 July 2013 at 09:47:09 UTC, Trvhgoy wrote:
 Hello,
 is there somebody who works on an open source integrated
 developement environment written in D?
 I have heared of Poseiden, but nobody works actively on it, 
 right?

 Regards Trvhgoy

I was actually going to start work on a D IDE pretty soon. I just needed to wrap up some other projects first. I was going to use gtkD as the GUI system for it though. Creating a new UI for D would be a pretty huge undertaking!

In the current state I would design the architecture of an IDE so that you can easily (more or less) change the used GUI system. Just a first idea: maybe some kind of the abstract factory pattern.
Aug 01 2013
prev sibling next sibling parent "Jacob Carlborg" <doob me.com> writes:
On Monday, 29 July 2013 at 16:34:27 UTC, Trvhgoy wrote:

 Is it right, that DWT is not further developed?

DWT is still being maintained. Basically just so it will compile with the latest compiler. I'm currently focusing on (slowly) finish the Mac OS X port. Any help is welcome. -- /Jacob Carlborg
Aug 05 2013
prev sibling next sibling parent "Trvhgoy" <trvhgoy gmail.com> writes:
On Monday, 5 August 2013 at 14:50:59 UTC, Jacob Carlborg wrote:
 On Monday, 29 July 2013 at 16:34:27 UTC, Trvhgoy wrote:

 Is it right, that DWT is not further developed?

DWT is still being maintained. Basically just so it will compile with the latest compiler. I'm currently focusing on (slowly) finish the Mac OS X port. Any help is welcome. -- /Jacob Carlborg

Oh that's good news. :) DWT is more what I'm looking for (not just a wrapper like GtkD). I will have a further look on it and maybe build some something with DWT. Thanks for the information and for working on DWT.
Aug 05 2013
prev sibling next sibling parent "eles" <eles eles.com> writes:
On Tuesday, 6 August 2013 at 06:43:54 UTC, Trvhgoy wrote:
 On Monday, 5 August 2013 at 14:50:59 UTC, Jacob Carlborg wrote:
 On Monday, 29 July 2013 at 16:34:27 UTC, Trvhgoy wrote:

DWT is more what I'm looking for (not just a wrapper like GtkD).

I have a question about DWT: the fact that is (largely) a wrapper for native widgets, that is widgets provided by the operating system... won't make this kind of toolkit inappropriate for... writing user interfaces of operating systems? Imagine that one day you are writing the next version of Windows, from scratch, in D. What you will wrap in order to provide the widgets? From this point of view, I tend to think that a Swing/AWT-like approach is the better choice. This is also why I pushed a bit for FOX Toolkit.
Aug 06 2013
prev sibling next sibling parent "eles" <eles eles.com> writes:
On Tuesday, 6 August 2013 at 11:42:33 UTC, Jacob Carlborg wrote:
 On 2013-08-06 09:09, eles wrote:

 I'm not sure I understand the question. You would create the 
 GUI in D just as it's now in C or C++. Then you would wrap the 
 widgets, just as know, in the DWT interface.

Yes, but in order to create the GUI (remember, you have no widgets to wrap), I tend to think it would be better to have the toolkit designing its own widgets (you will still need some graphic primitives, but that is basically drivers). For example, how you wold solve this problem with DWT or any other wrapper toolkit: "implement a calendar-like widget for an operating system" You cannot rely on wrapping a "calendar" widget of the OS' GUI, simply because you are writing the GUI. OTOH, if the toolkit designs its own widgets (in terms of "draw pixel; draw line" etc.), you could build up the GUI of the OS itself. In my view, a systems programming language should not rely on the fact that widgets already exist and only needs to wrap those. Yes, C++ GUI libraries, many of them, rely on that assumption; however, none of them is standard. Imagine the guys at Microsoft writing the basic DLLs that provide the user the pushbutton, the radiobutton etc. They have no previously existing widgets to wrap. They are creating the widgets that others will wrap. So, what a systems language should provide in its *standard* toolkit? Something that could be run on the bare metal and allow building on top of it, or something that rely on already having those things written by somebody else? Who will write this "else" and in what language, and with what library? (it still could be in D, but *without the support of the standard toolkit*) I think that providing only a wrapper of native widgets will make writing native widgets in D less appealing.
Aug 06 2013
prev sibling next sibling parent "evilrat" <evilrat666 gmail.com> writes:
On Tuesday, 6 August 2013 at 12:23:41 UTC, eles wrote:
 So, what a systems language should provide in its *standard* 
 toolkit? Something that could be run on the bare metal and 
 allow building on top of it, or something that rely on already 
 having those things written by somebody else? Who will write 
 this "else" and in what language, and with what library? (it 
 still could be in D, but *without the support of the standard 
 toolkit*)

 I think that providing only a wrapper of native widgets will 
 make writing native widgets in D less appealing.

what? O_o we are not talking about "native" GUI, original question is about how much do we need an IDE(preferably written in D), i just point that not IDE should be done first, but GUI(which provides much more opportunities than IDE). because in my opinion(no, i'm not UI/UX expert) we have GUI toolkit crisis, there are almost no declarative crossplatform(i mean major OS) toolkit for writing simple yet highly customizable UI's, with HTML markup-like, customizable UI's without messing with imperative(C/C++/D/whatever) code. that's how i see a "must have" GUI lib, not all that gtk/qt/swing crap, we should program algorithms, not ui widgets! (i repeat, i'm not UI/UX expert, but have some little sad experience with existing libs(except WPF))
Aug 06 2013
prev sibling next sibling parent "eles" <eles eles.com> writes:
On Wednesday, 7 August 2013 at 09:58:15 UTC, Jacob Carlborg wrote:
 On 2013-08-06 14:23, eles wrote:
 If a widget isn't available on a given platform one would have 
 to implement that using the graphics primitives, that's also 
 what DWT does.

It does, but only for those platforms where those widgets are not available. For many widgets on Windows, it does not. How would you write those widgets for the next version of Windows?
 You would still need to some graphics primitives. Do you want 
 to implement them yourself as well? I mean, you have to draw 
 the line somewhere. There's always a layer beneath you that you 
 rely on, if you're not doing embedded or similar.

[First: this is a doubt that I have, is not a war] Yes. But, for systems languages, I have the feeling that the line should be lower. You could not very much rely on a system to write a system (especially when the two systems are... the same). I was pointing to drivers as the lower bound in my original post. The rest should be drawn...
 So you want a non-native toolkit.

I think so.
Aug 07 2013
prev sibling next sibling parent "Suliman" <evermind live.ru> writes:
I am still using Poseidon IDE 
http://www.dsource.org/projects/poseidon
And I do not see reasons to write else another from scratch. It's 
much better to contribute to this and continue it's developing.

It's really compact IDE. The distrib size is only 1.6MB!
Aug 07 2013
prev sibling next sibling parent "eles" <eles eles.com> writes:
On Wednesday, 7 August 2013 at 17:32:15 UTC, Suliman wrote:
 I am still using Poseidon IDE

Thanks. It looks nice. Maybe there could be some synergy between Poseidon and DDT. Both share something with Eclipse, and Eclipse is SWT incarnation. Not necessarily in code, but could be, for example, in interface.
Aug 08 2013
prev sibling parent "Paul Z. Barsan" <paulmegabyte gmail.com> writes:
    After reading this thread, I decided that I should start a new 
project and make a new widget toolkit. Right now I'm just fooling 
around and try to paint something on the screen using libX11, 
doing some research and collecting ideas. For this purpose I 
collected most of the ideas listed here and opened a new forum 
thread : 
http://forum.dlang.org/thread/tlpikltmamsfmqunndwm forum.dlang.org

    You are welcomed to participate :)
Aug 13 2013