Re: wxD - dead or alive?

2013-03-06 Thread Matthew Caron
On 03/05/2013 08:18 AM, Matthew Caron wrote:
> On 03/04/2013 11:24 AM, SaltySugar wrote:
>> On Monday, 4 March 2013 at 13:25:22 UTC, Matthew Caron wrote:
>>> On 03/03/2013 08:16 AM, SaltySugar wrote:
>>>> wxD - dead or alive?
>>>
>>> I've been using it. What makes you think that it's dead?
>>
>> Because It's latest release was at 2011-08-26
> 
> In all fairness, I haven't been using it *recently*. Apparently, I am
> suffering from a time dilation, perhaps because my wife watches too much
> Doctor Who. Anyway, the last time I built the aforementioned project was
> Sept of 2011 and, while the extant binaries still build, the wxd I was
> using (0.15) does not compile with a more modern gdc. I have not tried
> the newer 0.16 to see if that works.
> 
> 
So, I've fixed the compilation errors and pushed a fork to:

git://github.com/mattcaron/wxd.git

(Web page is: https://github.com/mattcaron/wxd)

Now, that said, it's not perfect. My test program crashes during garbage
collection after you close it, and I don't believe that it used to.

-- 

"The curious task of economics is to demonstrate to men how little
they really know about what they imagine they can design."
  - Friedrich von Hayek
PGP Key: http://www.mattcaron.net/pgp_key.txt
 ~~ Matt Caron ~~



Re: wxD - dead or alive?

2013-03-05 Thread Matthew Caron

On 03/04/2013 11:24 AM, SaltySugar wrote:

On Monday, 4 March 2013 at 13:25:22 UTC, Matthew Caron wrote:

On 03/03/2013 08:16 AM, SaltySugar wrote:

wxD - dead or alive?


I've been using it. What makes you think that it's dead?


Because It's latest release was at 2011-08-26


In all fairness, I haven't been using it *recently*. Apparently, I am 
suffering from a time dilation, perhaps because my wife watches too much 
Doctor Who. Anyway, the last time I built the aforementioned project was 
Sept of 2011 and, while the extant binaries still build, the wxd I was 
using (0.15) does not compile with a more modern gdc. I have not tried 
the newer 0.16 to see if that works.



--
Matthew Caron, Software Build Engineer
Sixnet, a Red Lion business | www.sixnet.com
+1 (518) 877-5173 x138 office


Re: wxD - dead or alive?

2013-03-04 Thread Matthew Caron

On 03/03/2013 08:16 AM, SaltySugar wrote:

wxD - dead or alive?


I've been using it. What makes you think that it's dead?

--
Matthew Caron, Software Build Engineer
Sixnet, a Red Lion business | www.sixnet.com
+1 (518) 877-5173 x138 office


Re: Why is null lowercase?

2013-01-24 Thread Matthew Caron

On 01/24/2013 12:04 PM, Rob T wrote:

You'll get used to it, it's actually much better than typing in NULL,
and it's a real type instead on an int, which never worked well in C.

Just be warned that when checking for null *do not* use equality operator


Yeah, the compiler helped me find that one out. That takes a little 
getting used to as well. Old habits and such.



for not null checks

if ( ptr !is null) ...


And too much perl has me wanting to write:

if (ptr is not null)


BTW, half of what you thought worked well in C/C++ will get turned
upside down if you stick with D, and once you get it, moving back to
C/C++ becomes unbearable.


It already is. I have very little desire to do anything in any other 
language. C and C++ are too primitive. Java and C# don't play as nicely 
with native libraries as I'd like and require a whole VM which consumes 
gobs of memory and takes forever to start. D gives me the features I 
want from Java and C# while falling somewhere between them and C in 
terms of speed. I can get more done, faster, in D.


Meanwhile, it seems like the rest of the world is moving towards writing 
everything in JavaScript, and that's just leaving me scratching my head 
in amazement.

--
Matthew Caron, Software Build Engineer
Sixnet, a Red Lion business | www.sixnet.com
+1 (518) 877-5173 x138 office


Re: Why is null lowercase?

2013-01-24 Thread Matthew Caron

On 01/24/2013 12:50 PM, Ali Çehreli wrote:

Similarly, the common macros TRUE and FALSE are replaced by the 'true'
and 'false' keywords.


Ironically, those don't bother me because I never used them.

--
Matthew Caron, Software Build Engineer
Sixnet, a Red Lion business | www.sixnet.com
+1 (518) 877-5173 x138 office


Why is null lowercase?

2013-01-24 Thread Matthew Caron

This is probably a question for Walter, but maybe others know.

Of all of the differences between C and D, the one which I have the most 
difficulty adapting to is null being lowercase. Does anyone know why 
this decision was made?

--
Matthew Caron, Software Build Engineer
Sixnet, a Red Lion business | www.sixnet.com
+1 (518) 877-5173 x138 office


Re: Simple makefile problem - implicit rule

2013-01-09 Thread Matthew Caron

On 01/09/2013 01:13 PM, deed wrote:

Yeah, that's not the problem. Replacing %.obj and %.d with main.obj
and main.d works.


And $< with main.d


 don't know what make you're using, but this works for me:

OBJS= hello.obj hello_loop.obj
DC  = gdc
DCFLAGS =

all : $(OBJS)

%.obj : %.d
$(DC) $< $(DCFLAGS) -o $@

Output:
gdc hello.d  -o hello.obj
gdc hello_loop.d  -o hello_loop.obj

and hello.obj and hello_loop.obj both exist

Note that there is a tab before $(DC).

make --version says:
GNU Make 3.81
Copyright (C) 2006  Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.

This program built for x86_64-pc-linux-gnu

--
Matthew Caron, Software Build Engineer
Sixnet, a Red Lion business | www.sixnet.com
+1 (518) 877-5173 x138 office


Re: Reading and writing a class to a (binary) file

2013-01-07 Thread Matthew Caron

On 01/07/2013 05:00 PM, Omid wrote:

Thanks all, specially bearophile. I said "as my first language" but I
didn't mean that I don't know anything about programming. I passed
pascal around 18 years ago in my undergrad but never did programming
since then. I should say, learning D is more fun and logical for me,
compared to my several attempts to learn C++.


My elevator pitch to folks is:

"D is C++ done correctly"

It really is a joy.
--
Matthew Caron, Software Build Engineer
Sixnet, a Red Lion business | www.sixnet.com
+1 (518) 877-5173 x138 office


Re: Googling about D

2012-12-18 Thread Matthew Caron

On 12/18/2012 08:12 AM, egslava wrote:

For example, I try to use that phrase:

d programming language sha256

I needed only sha-256 library for my course work. Only. Don't ask me why :)
And I really don't know: is there RIGHT library or not? And there are a
lot of noise in google results. There're much noise and there're few
common cipher libraries.


Wouldn't one just use OpenSSL?

FYI - I search for d language .

--
Matthew Caron, Software Build Engineer
Sixnet, a Red Lion business | www.sixnet.com
+1 (518) 877-5173 x138 office


Why the lack of networky bits in the standard library

2012-12-10 Thread Matthew Caron
In C, if I want to parse a UDP packet, I need to build my own offsets 
into data based off constants in:

net/ethernet.h
netinet/udp.h

Things like:

#define PACKET_DATA_OFFSET_DEFAULT (
 ETHER_HDR_LEN + sizeof(struct iphdr) + \
 sizeof(struct udphdr))

That would be easy to port to D, if I had access to those structs and 
defines, but it doesn't seem like these have been ported over. Am I 
missing something obvious?


Thanks.

--
Matthew Caron, Software Build Engineer
Sixnet, a Red Lion business | www.sixnet.com
+1 (518) 877-5173 x138 office


question on buffer passed in to recvFrom

2012-12-07 Thread Matthew Caron

Hey folks.

Given a configured socket, called server, and the following code:

Address fromAddress;
void[] buffer[2048];
long bytes;

bytes = server.receiveFrom(buffer, fromAddress);

All works grand.

However, if I try to do:

Address fromAddress;
void[] buffer;
long bytes;

bytes = server.receiveFrom(buffer, fromAddress);

bytes comes back as 0, presumably because the buffer is too small.

Might anyone be able to explain why the standard library can't 
automatically size the buffer for me, before calling the underlying C 
library code, then return to me the correct size buffer which is 
automatically garbage collected?


Thanks in advance.
--
Matthew Caron, Software Build Engineer
Sixnet, a Red Lion business | www.sixnet.com
+1 (518) 877-5173 x138 office