October 15, 2009
Adam D. Ruppe wrote:
> The sshfs lag isn't much, but it adds up quickly when doing several
> small changes. I find that if any given task takes hours, I can be very
> patient, but if it takes milliseconds, I get annoyed easily!

I agree. I coquetted with the idea of passing sshfs the option of doing writing in background, but I'm too scared :o).

Andrei
October 15, 2009
Sun, 11 Oct 2009 10:48:30 +0000, language_fan thusly wrote:

> Well since there is already a project working on an Eclipse plugin, I see little use for other IDEs at the moment. The D community is rather small and only a small amount of people are capable of developing and willing to donate their free time on free IDE development (commercial IDEs have small potential now that Netbeans/Eclipse/IntelliJ/KDevelop/Visual Studio dominate the market).

BTW totally off-topic, but I just found out that IntelliJ IDEA has been jumped on the open source wagon. This probably makes it a bit more challenging to make money on the commercial IDE market.
October 16, 2009
Andrei Alexandrescu wrote:
> One cool thing is combining sshfs with autofs.

A cool thing I'd seriously never thought of.  Time to autofs half my /mnt...

-- Chris Nicholson-Sauls
October 18, 2009
I agree D IDE support is very bad, I was coding in D with Kate and a modified build plugin.
After programming a project using C++/Qt and a real IDE (QtCreator), I couldn't go back to D without an IDE so I decided to create my own.
Using existing components like KTextEditor and QDockWidget, it is relatively easy to get a basic environment.
But source code analysis is not as easy.
I used a powerful parser generator (coincidentally named D_Parser) which allow me to parse D using a simple grammar(~200 lines).
It parses as you type, report syntax errors, provide an outliner and let you follow symbols.

Screenshot -> http://matt2000.free.fr/kreator.png
you can go to the definition of the underlined expression

Source -> http://matt2000.free.fr/kreator.zip
depends on kdelibs and dparser (included)

October 19, 2009
On Mon, Oct 12, 2009 at 09:06:38PM -0400, Nick Sabalausky wrote:
> Excellent! Sounds exactly like what I had in mind. I'll definately want to keep an eye on this. Any webpage or svn or anything yet?

I wrote up some of a webpage for it over the weekend:

http://arsdnet.net/dws/

I haven't had a chance to clean up my code yet, so it isn't posted, but there's some overview text there, including some implementation details that I haven't discussed yet here, but the document still has a long way to go.

But there it is, becoming more organized than anything I've written on it before.

Thanks for your interest and to the rest of the group for letting me go off topic like this!

-- 
Adam D. Ruppe
http://arsdnet.net
October 20, 2009
"Adam D. Ruppe" <destructionator@gmail.com> wrote in message news:mailman.208.1255923114.20261.digitalmars-d@puremagic.com...
> On Mon, Oct 12, 2009 at 09:06:38PM -0400, Nick Sabalausky wrote:
>> Excellent! Sounds exactly like what I had in mind. I'll definately want
>> to
>> keep an eye on this. Any webpage or svn or anything yet?
>
> I wrote up some of a webpage for it over the weekend:
>
> http://arsdnet.net/dws/
>
> I haven't had a chance to clean up my code yet, so it isn't posted, but
> there's some overview text there, including some implementation details
> that
> I haven't discussed yet here, but the document still has a long way to go.
>
> But there it is, becoming more organized than anything I've written on it before.
>

Great!

> Thanks for your interest and to the rest of the group for letting me go off topic like this!
>

The offtopics are some of the most interesting bits!


October 20, 2009
Nick Sabalausky wrote:
> "Adam D. Ruppe" <destructionator@gmail.com> wrote in message news:mailman.208.1255923114.20261.digitalmars-d@puremagic.com...
>> On Mon, Oct 12, 2009 at 09:06:38PM -0400, Nick Sabalausky wrote:
>>> Excellent! Sounds exactly like what I had in mind. I'll definately want to
>>> keep an eye on this. Any webpage or svn or anything yet?
>> I wrote up some of a webpage for it over the weekend:
>>
>> http://arsdnet.net/dws/
>>
>> I haven't had a chance to clean up my code yet, so it isn't posted, but
>> there's some overview text there, including some implementation details that
>> I haven't discussed yet here, but the document still has a long way to go.
>>
>> But there it is, becoming more organized than anything I've written on it
>> before.
>>

Adam.  What you written at your web site is a very interesting read.

Re your use of a binary protocol.

Perhaps instead of re-inventing the wheel, you may want to look at what
Google has done with the design of their  Google Protocol Buffers, which also implements a very fast binary protocol.  See here for a overview:

http://code.google.com/apis/protocolbuffers/docs/overview.html

It is also worthwhile reading the section called "A bit of history".

Note that there is also D implementation.

http://256.makerslocal.org/wiki/index.php/ProtocolBuffer

I don't know how current this is, though.

One more point. What, if any, library to you plan to use ?

cheers
Nick B
October 21, 2009
On 10/20/09, Nick B <nickB@gmail.com> wrote:
 > Re your use of a binary protocol.
 >
 > Perhaps instead of re-inventing the wheel,

 Eh, my code is already written and works. One of the advantages to my
 code generator reading a C like syntax is that I might be able to
 fully automate porting some existing APIs down the wire - I'm
 particularly looking at OpenGL, or at least a subset of it, to work
 with ease. Another one is porting my generator to a new language is easy
- I already know the code and it is fairly simple anyway.

 Anyway, quickly skimming through the google page, their system isn't
 bad (Coincidentally, it and I encode unsigned ints and strings in
 exactly the same way! Cool.), but I don't think there's much to gain
 by me switching to it. Though, their signed varint algorithm is pretty
 elegant; I might have to use that.

 And it reminds me that I didn't even consider optional arguments on
 functions. Trivial to implement though, even compatible with my
 current protocol: if message length is shorter than what you expect,
 use default values for the rest of the arguments. This means they'd
 have to be at the end, but you expect that from C like functions
 anyway.

 > It is also worthwhile reading the section called "A bit of history".

 I thought about future compatibility, which is why my protocol has a
 length field on every message. If you read the length and the function
 number and find it isn't something you know, you can simply skip past
 the whole message and carry on.

 The ugliness might be that future functions deprecate old functions...
 if this took off and was widely used, it might end up looking like
 Win32 in 10 years (CreateWindow() nope, CreateWindowEx()!), but I'm ok
 with that.


 > One more point. What, if any, library to you plan to use ?

 The D side is all custom code (I've written various libraries and
 helper tools over the years for myself - the big one used here is a
 network manager thing that handles incoming connections and output
 buffering) and Phobos - nothing third party there. I'm using D2, but
 there's nothing preventing it from being backported to D1 at some
 point. I actually want to do a DMDScript port that speaks it too, but
 that's way down the line.

 For the viewer, my current implementation is C++ with Qt. I'd like to
 actually do various viewers, including ones with less fat dependencies
 (asking users to download Qt just to run it is a bit heavy), but for
 now, I just wanted something I could start using immediately without
 too much trouble for me. Qt on C++ works pretty well across platforms,
 and I already know how to use it, so it was an easy choice for early
 stages.

 >
 > cheers
 > Nick B
 >

 Thanks!
 -Adam
October 21, 2009
Matthias Fauconneau schrieb:
> I agree D IDE support is very bad, I was coding in D with Kate and a modified build plugin.
> After programming a project using C++/Qt and a real IDE (QtCreator), I couldn't go back to D without an IDE so I decided to create my own.
> Using existing components like KTextEditor and QDockWidget, it is relatively easy to get a basic environment.
> But source code analysis is not as easy.
> I used a powerful parser generator (coincidentally named D_Parser) which allow me to parse D using a simple grammar(~200 lines).
> It parses as you type, report syntax errors, provide an outliner and let you follow symbols.
> 
> Screenshot -> http://matt2000.free.fr/kreator.png
> you can go to the definition of the underlined expression
> 
> Source -> http://matt2000.free.fr/kreator.zip
> depends on kdelibs and dparser (included)
> 

Thanks for your code! The grammar was exactly what I was looking for. I will try to implement it in my IDE to support code-completion! (a plugin for SharpDevelop)

Matthias
October 21, 2009
Matthias Pleh Wrote:
> Thanks for your code! The grammar was exactly what I was looking for. I will try to implement it in my IDE to support code-completion! (a plugin for SharpDevelop)
> 
> Matthias

Are you going to use D_Parser ?
If you are using a weaker parser, you may be interested in http://seatd.mainia.de/grammar.html