February 07, 2006
"Derek Parnell" <derek@psych.ward> wrote in message news:1ohbygoysxj15.1fzj523pfiokn$.dlg@40tude.net...
> e.g. A clean up of the phobos code: correct all the 'module' statements (including missing ones) and get it to compile with "-w" turned on. Should take about an afternoon to complete and makes me feel like Walter actually cares about it.

The -w switch is there to support a different philosophy of programming than is used in Phobos. So it's not that I don't care about it, it's that I don't agree with it. Not everything in D I agree with <g>.


February 07, 2006
On Mon, 6 Feb 2006 19:23:50 -0800, Walter Bright wrote:

> "Derek Parnell" <derek@psych.ward> wrote in message news:1ohbygoysxj15.1fzj523pfiokn$.dlg@40tude.net...
>> e.g. A clean up of the phobos code: correct all the 'module' statements (including missing ones) and get it to compile with "-w" turned on. Should take about an afternoon to complete and makes me feel like Walter actually cares about it.
> 
> The -w switch is there to support a different philosophy of programming than is used in Phobos.

"-w"  ==> Explicitness, Obvious Coder Intent ( a.k.a. clarity)
!"-w" ==> Implicitness, Ambiguous Coder Intent ( a.k.a. bug-attractor)

Isn't one of the reasons for need to use the 'alias' statement to remove some of the implicitness in D?

> So it's not that I don't care about it,

Sorry, but I'm not convinced by that argument.
* Why are some of the module statements wrong? (I've sent you the list
twice now)
* Why are some module statements missing? (I've also sent you this list)
* Why don't you want others to recompile Phobos using a heightened measure
of caution (ie "-w" switch)

> it's that I don't agree with it.

The "it" being what? Explicit and unambiguous code?

> Not everything in D I agree with <g>.

I should hope not!

-- 
Derek
(skype: derek.j.parnell)
Melbourne, Australia
"Down with mediocracy!"
7/02/2006 2:55:10 PM
February 07, 2006
Walter Bright wrote:
> "Sean Kelly" <sean@f4.ca> wrote in message news:ds8tqr$11ti$1@digitaldaemon.com...
>> The problem is that while the D libraries are open source, not all applications using D will be.  Given the viral nature of open-source licenses, I think this would prevent Qt from being used in such a project, no?
> 
> That's right. A *standard* component of D needs to be usable by commercial projects without needing to pay license fees. That would be no problem if Qt were optional, but if it was standard it would impede the adoption of D. 
>

I made several rush posts from work, and I want to take this post to remove any ambiguity.

My #1 point is that SWT is just a horrible option. I used it at work and I am biased against it, but I know it well enough to say that this: <http://www.hacknot.info/hacknot/action/showEntry?eid=74> is all true. AWT and Swing really aren't much better.

QT is amazing, and people love it, but we can't use it. Now that I have Walter's blessing, I will attempt to contact Scott and ask him for guidance in this matter. I will also gather info on existing options. The least we will get out of this is a good picture of where things stand.
February 07, 2006
clayasaurus wrote:

>> Let the first say I find quite good this idea of having a common (i.e. standard) primitive graphics library in D. Not only because it is more readily available, but especially because it can later be used upon to build higher level libraries like the advanced graphics lib or a GUI lib, with a higher degree of unification. (For instance there could be several GUI libs, but nonetheless they would share the same graphic primitives).
>>
>> As for this primitive graphics library, there already exists one, (made in C), and it not only exists, but it is *The* library. I hope you know which one I'm talking about, and I hope too that you realize that your work should be to make a D layer/version of this lib. Not a direct C wrapper, as that already exists, but one to make use of the relevant D's prime features (OO and structured namespacing)
>>
>>
> 
> Are you talking about GTK? If so, maybe you should check out DUI. ( www.dsource.org/projects/dui )


I think he means Cairo.

GTK is a gui library... not a graphics primitive library.

-JJR
February 07, 2006
"nick" <nick.atamas@gmail.com> wrote in message news:ds9bg6$1bto$1@digitaldaemon.com...
> I made several rush posts from work, and I want to take this post to remove any ambiguity.
>
> My #1 point is that SWT is just a horrible option. I used it at work and I am biased against it, but I know it well enough to say that this: <http://www.hacknot.info/hacknot/action/showEntry?eid=74> is all true. AWT and Swing really aren't much better.

Keep in mind, though, that AWT despite its flaws is what got Java off the ground and kept it going for the initial few years. (I don't think AWT or Swing are contenders for D because of Sun licensing issues.)

> QT is amazing, and people love it, but we can't use it. Now that I have Walter's blessing, I will attempt to contact Scott and ask him for guidance in this matter. I will also gather info on existing options. The least we will get out of this is a good picture of where things stand.

Yes, and thanks for doing this. A free D version of QT can benefit QT by building its brand and market momentum.


February 07, 2006
In article <ds88k3$fho$1@digitaldaemon.com>, Walter Bright says...
>
>
>One issue stood out for me - that Swing is 7 years ahead of SWT. This reiterates my belief that if D tries to develop our own gui, it will take 10 years. We don't have 10 years to do it. An existing one has to be used.

So starting from Swing you'll be 7 years ahead ;-)

I've had another idea: let's get both. Don't get me wrong: they are already-made libraries, the task to port them can be made once for each.

The fact is that Swing is completely software made: this permits its high portability. To port Swing you need only a few system-dependent objects:

- a set of Graphics drawing primitives
- a set of Font primitives
- the two root widget Window and Frame

Nearly all the rest is embedded in Swing itself.
I think DWT can be a perfect source for thoose few classes.
Then the user can choose: the high portability of Swing or the high performance
of DWT, the higher user-based and bug-fixed Swing or the latest whistles and
bells on DWT.

Note also that porting Swing to another platform means implementing only the little DWT part that Swing needs. Porting DWT can be done as a later step.

Ciao

---
http://www.mariottini.net/roberto/
February 07, 2006
In article <ds9kot$1j45$1@digitaldaemon.com>, Walter Bright says...
>
>
[...]
>Keep in mind, though, that AWT despite its flaws is what got Java off the ground and kept it going for the initial few years.

I completely disagree. I used Java from the beginning, and I can remember for sure that Java was nearly dead because of AWT. I remember the "Corel Office for Java" thing very well. Swing was the right choice, making Java exit the niche of server-side applications.

>(I don't think AWT or Swing are contenders for D because of Sun licensing issues.)

I hate to repeat myself, but there is a free Swing available at www.classpath.org.

Ciao

---
http://www.mariottini.net/roberto/
February 07, 2006
nick wrote:

>>QT cannot be used because it's a proprietary, non-free product. 
> 
> QT is an open source product. It is only proprietary if you plan to use it for
> proprietary means. KDE is based on QT from ground up.

Seems that the "open source" and "proprietary, non-free" terms
are a bit broad and undefined here. There's more to OS than GPL ?

As I understand it, Qt offers two totally separate products...
Similar to what MySQL offers for embedded databases, it seems.


Either you pay for the full commercial per-developer license,
or you make your program Free Software under the GPL license.

If you want to use another Open Source license (say a BSDish),
or want to make freeware (without code), it seems you're SOL ?


At least that's how I understood it...
http://www.trolltech.com/products/licensing.html
http://www.trolltech.com/company/model.html

Looks like just the first year would run me €3380 ?
(developing a desktop application for three platforms)
http://www.trolltech.com/products/qt/pricing.html?cid=18

--anders

PS.
And there still needs to be Qt C++ -> D wrappers written,
which could prove to be a lot of work to accomplish too ?

But I won't stop anyone else from doing it, of course. :-)
Just that Qt isn't my own personal favorite lib either.
February 07, 2006
"Roberto Mariottini" <Roberto_member@pathlink.com> wrote in message news:ds9l6u$1jjq$1@digitaldaemon.com...
> In article <ds88k3$fho$1@digitaldaemon.com>, Walter Bright says...
>>One issue stood out for me - that Swing is 7 years
>>ahead of SWT. This reiterates my belief that if D tries to develop our own
>>gui, it will take 10 years. We don't have 10 years to do it. An existing
>>one
>>has to be used.
> So starting from Swing you'll be 7 years ahead ;-)

Isn't Swing tightly controlled by Sun? Anyone have a copy of the license for it?


February 07, 2006
Dave wrote:

> After the initial selections are made, as part of the overall eval., I think
> someone should develop an app. for each that opens a window with a button that
> would display "Hello World" 10 times in a (rich) text box. Simplistic? Yes, but
> half the battle is convincing people to use the library, and most of those
> people will start out with an app. just that simple.
> 
> For example, considering D's 'style' the ideal would be something like this for
> me:
> 
> import D.gui;
> Form f;
> Button b;
> TextBox t;
> void main()
> {
> f = new Form(0,0,300,300); // default modal,x,y,w,h
> b = new Button(f,"Click Me",8,8,75,23); // parent,caption,x,y,w,h
> b.Click = &buttonb_onclick;
> t = new TextBox(f,88,8,192,248,true); // parent,x,y,w,h,multi-line
> f.Show;
> }
> void buttonb_onclick(EventInfo* e)
> {
> for(int i = 0; i < 10; i++)
> t += "Hello World\n";
> }
> 
> Just so we can look at the various development 'styles' represented by each.

Here is one (real-life, working) example:
http://wxd.sourceforge.net/Minimal.html

Could modify it into the above, later...
(for comparison with the other libraries)

--anders