May 24, 2012
On Tuesday, 22 May 2012 at 11:21:14 UTC, Roman D. Boiko wrote:
> On Tuesday, 22 May 2012 at 10:59:04 UTC, Jacob Carlborg wrote:
>> On 2012-05-22 12:03, Roman D. Boiko wrote:
>>> http://d-coding.com/2012/05/22/is-the-d-community-lacking-development-tools.html
>>
>> I agree with basically everything in that article.
>
> I would also appreciate any specific feedback


I too agree with what you write!

* do you think such project is worth the effort?

Absolutely! A huge undertaking, but if successful, extremely valuable for the future of D.

* do you feel that D ecosystem lacks tool support?

I do. I believe the toolset is important for any serious language.

* Does this prevent many from using D?

I definitely think it does! It prevents me from doing anything other that simple experiments. I'm an IDE guy - I just won't do real work without a good IDE.

* which tools are needed most?

A good IDE is top prio for me, but an IDE should include a lot of other tools (compiler, refactoring, debugging, profiling, build tool, testing framework etc). Also a GUI library, as others have mentioned.

* Which may be needed, but are not a high priority for you?

Don't know. The more tools the better! ;)

* was this post useful?

Not in itself, but the topic is imporant and the DCT is a great initiative.

* What could I change to make future posts in the series better?

No comment.

* should I add commenting on my blog, or dlang forum is better for that?

dlang is fine.

May 24, 2012
On Thursday, 24 May 2012 at 07:55:28 UTC, Mikael Lindsten wrote:
> On Tuesday, 22 May 2012 at 11:21:14 UTC, Roman D. Boiko wrote:
>> On Tuesday, 22 May 2012 at 10:59:04 UTC, Jacob Carlborg wrote:
>>> On 2012-05-22 12:03, Roman D. Boiko wrote:
>>>> http://d-coding.com/2012/05/22/is-the-d-community-lacking-development-tools.html
>>>
>>> I agree with basically everything in that article.
>>
>> I would also appreciate any specific feedback
>
>
> I too agree with what you write!
>
> * do you think such project is worth the effort?
>
> Absolutely! A huge undertaking, but if successful, extremely valuable for the future of D.
>
> * do you feel that D ecosystem lacks tool support?
>
> I do. I believe the toolset is important for any serious language.
>
> * Does this prevent many from using D?
>
> I definitely think it does! It prevents me from doing anything other that simple experiments. I'm an IDE guy - I just won't do real work without a good IDE.
>
> * which tools are needed most?
>
> A good IDE is top prio for me, but an IDE should include a lot of other tools (compiler, refactoring, debugging, profiling, build tool, testing framework etc). Also a GUI library, as others have mentioned.
>
> * Which may be needed, but are not a high priority for you?
>
> Don't know. The more tools the better! ;)
>
> * was this post useful?
>
> Not in itself, but the topic is imporant and the DCT is a great initiative.
>
> * What could I change to make future posts in the series better?
>
> No comment.
>
> * should I add commenting on my blog, or dlang forum is better for that?
>
> dlang is fine.

Thanks!
May 24, 2012
On May 22, 2012, at 10:05 AM, H. S. Teoh wrote:

> On Tue, May 22, 2012 at 09:55:14AM -0700, Sean Kelly wrote:
>> 
>> 
>> It depends on the platform. GDB works fine on Linux, but is pretty much broken on OSX. Does Visual Studio work on Windows? Because that standalone debugger bundled with DMD is garbage.
> 
> People will probably laugh at me, but over the years, I've found that well-placed printfs/writelns are much more effective in locating bugs than stepping through code with a debugger. Or inserting deliberate infinite loops at suspected problem spots and then using kill -11 to get a stacktrace.

I think a lot of this depends on the type of app.  Interactive debugging can be impractical for server apps, but is often easy for desktop apps.  Either way, I don't think anyone can say that debugger support isn't important for D in general :-)
May 25, 2012
On 2012-05-24 21:16, Sean Kelly wrote:

> I think a lot of this depends on the type of app.  Interactive debugging can be impractical for server apps, but is often easy for desktop apps.  Either way, I don't think anyone can say that debugger support isn't important for D in general :-)

I think a proper stack trace is more useful in most of the cases for me. That's basically the only thing I use a debugger for. D won't show a stack trace on a segmentation fault and similar.

-- 
/Jacob Carlborg
May 25, 2012
On Thursday, 24 May 2012 at 19:16:57 UTC, Sean Kelly wrote:
> On May 22, 2012, at 10:05 AM, H. S. Teoh wrote:
>
>> On Tue, May 22, 2012 at 09:55:14AM -0700, Sean Kelly wrote:
>>> 
>>> 
>>> It depends on the platform. GDB works fine on Linux, but is pretty
>>> much broken on OSX. Does Visual Studio work on Windows? Because that
>>> standalone debugger bundled with DMD is garbage.
>> 
>> People will probably laugh at me, but over the years, I've found that
>> well-placed printfs/writelns are much more effective in locating bugs
>> than stepping through code with a debugger. Or inserting deliberate
>> infinite loops at suspected problem spots and then using kill -11 to get
>> a stacktrace.
>
> I think a lot of this depends on the type of app.  Interactive debugging can be impractical for server apps, but is often easy for desktop apps.  Either way, I don't think anyone can say that debugger support isn't important for D in general :-)

I find a debugger as very useful.

For me printf debugging always feel primitive from the time debuggers
didn't have nothing more than next/single step.

Now that the debuggers can provide so much visual information for data
structure navigation, postmortem debugging and REPL like features for
compiled languages, using plain printfs feels like stone age.

--
Paulo


May 25, 2012
On Fri, 25 May 2012 08:39:17 +0200, Jacob Carlborg <doob@me.com> wrote:

> On 2012-05-24 21:16, Sean Kelly wrote:
>
>> I think a lot of this depends on the type of app.  Interactive debugging can be impractical for server apps, but is often easy for desktop apps.  Either way, I don't think anyone can say that debugger support isn't important for D in general :-)
>
> I think a proper stack trace is more useful in most of the cases for me. That's basically the only thing I use a debugger for. D won't show a stack trace on a segmentation fault and similar.
>

No stack trace sucks...

    class C { int a; }
    C c;
    c.a = 1; // --- killed by signal 11
    assert(c); // nice stack trace

Couldn't dmd automatically add an assert(c) in debug mode before accessing members?
I would really like to see (easy to use) non-null references. Non-null by default would have been best.
May 25, 2012
On May 25, 2012, at 12:13 AM, "Paulo Pinto" <pjmlp@progtools.org> wrote:

> On Thursday, 24 May 2012 at 19:16:57 UTC, Sean Kelly wrote:
>> On May 22, 2012, at 10:05 AM, H. S. Teoh wrote:
>> 
>>> On Tue, May 22, 2012 at 09:55:14AM -0700, Sean Kelly wrote:
>>>> It depends on the platform. GDB works fine on Linux, but is pretty much broken on OSX. Does Visual Studio work on Windows? Because that standalone debugger bundled with DMD is garbage.
>>> People will probably laugh at me, but over the years, I've found that well-placed printfs/writelns are much more effective in locating bugs than stepping through code with a debugger. Or inserting deliberate infinite loops at suspected problem spots and then using kill -11 to get a stacktrace.
>> 
>> I think a lot of this depends on the type of app.  Interactive debugging can be impractical for server apps, but is often easy for desktop apps.  Either way, I don't think anyone can say that debugger support isn't important for D in general :-)
> 
> I find a debugger as very useful.
> 
> For me printf debugging always feel primitive from the time debuggers didn't have nothing more than next/single step.
> 
> Now that the debuggers can provide so much visual information for data structure navigation, postmortem debugging and REPL like features for compiled languages, using plain printfs feels like stone age.

The problem with prints debugging IMO is that if you don't print the right stuff at the right places you need to change the code, rebuild, and hope the bug occurs again. I find that log output combined with a stack trace is typically enough to find a problem, but just logging isn't always enough. I do like printf debugging though. Just look at core.demangle :-p
May 25, 2012
On Tuesday, 22 May 2012 at 16:21:23 UTC, deadalnix wrote:
> Le 22/05/2012 12:18, Dejan Lekic a écrit :
>> On Tuesday, 22 May 2012 at 10:03:36 UTC, Roman D. Boiko wrote:
>>> http://d-coding.com/2012/05/22/is-the-d-community-lacking-development-tools.html
>>>
>>
>> My opinion - no.
>>
>> We already have:
>> 1) Mono-D, a MonoDevelop plugin - my personal favourite.
>> 2) Code::Blocks - I used it for years, still provides excellent D support.
>> 3) Visual D - for VisualStudio users.
>> 4) DDT - for Eclipse users
>> 5) NetbeansD - for NetBeans users
>> 6) Geany and Kate - for those who want to write a quick D proggy.
>> 7) VIM and Emacs
>>
>> Sure, all of them can be better, provide more fancy features, etc...
>>
>
> Refactoring tools ? Static code analysis ? Formaters ?
>
> I'd say, just compare to what exists in Java or C# and you'll know that yes, many things are missing.

Well, the OT was about lacking of development tools. The author did not specify the level of proficiency. Sure many things are missing from current tools, but come on, the fact is that one can do a serious D project with Mono-D. Well, at least I think without a second thought that it is possible.

May 25, 2012
On 25.05.2012 18:07, Dejan Lekic wrote:
> On Tuesday, 22 May 2012 at 16:21:23 UTC, deadalnix wrote:
>> Le 22/05/2012 12:18, Dejan Lekic a écrit :
>>> On Tuesday, 22 May 2012 at 10:03:36 UTC, Roman D. Boiko wrote:
>>>> http://d-coding.com/2012/05/22/is-the-d-community-lacking-development-tools.html
>>>>
>>>>
>>>
>>> My opinion - no.
>>>
>>> We already have:
>>> 1) Mono-D, a MonoDevelop plugin - my personal favourite.
>>> 2) Code::Blocks - I used it for years, still provides excellent D
>>> support.
>>> 3) Visual D - for VisualStudio users.
>>> 4) DDT - for Eclipse users
>>> 5) NetbeansD - for NetBeans users
>>> 6) Geany and Kate - for those who want to write a quick D proggy.
>>> 7) VIM and Emacs
>>>
>>> Sure, all of them can be better, provide more fancy features, etc...
>>>
>>
>> Refactoring tools ? Static code analysis ? Formaters ?
>>
>> I'd say, just compare to what exists in Java or C# and you'll know
>> that yes, many things are missing.
>
> Well, the OT was about lacking of development tools. The author did not
> specify the level of proficiency. Sure many things are missing from
> current tools, but come on, the fact is that one can do a serious D
> project with Mono-D. Well, at least I think without a second thought
> that it is possible.
>

I tried Mono-D. No dice, it uses about 1.5Gb of RAM on my 2 file "project".
And of course runs out of memory on every single click. Guess I'll wait till the end of GSOC. What it does is for now:
-looks nice
-shows errors in-line, I actually kind of liked it
-almost good auto-completion

But it lacks:
- fast editor ;)
- no crashes & mem leaks plz

-- 
Dmitry Olshansky
May 25, 2012
On Friday, May 25, 2012 13:52:05 simendsjo wrote:
> Couldn't dmd automatically add an assert(c) in debug mode before accessing
> members?

That's been argued for ages. Walter is against it, because the OS already takes care of it with segfaults. you can either run the program again (which isn't necessarily true, but I believe with the programs that he seems to run normally, it is, so he's got somewhat of a skewed perspective on that), or if you have core dumps enabled, you can just examine the core dump to see what happened. Also, adding all of those assertions would also negatively impact non-release mode - and possibly by quite a bit, since it would be happening all over the place, so there's that to consider.

Regardless, it's a rather devisive subject. I think that _most_ people would like to have such assertions added in non-release mode, but since Walter's against it, it's never happened.

- Jonathan M Davis