Re: mysql-native: Seamlessly supports Phobos-only sockets

2013-05-22 Thread Nick Sabalausky
On Tue, 21 May 2013 12:16:43 +0200
Dicebot m.stras...@gmail.com wrote:

 On Tuesday, 21 May 2013 at 10:12:41 UTC, Nick Sabalausky wrote:
  // Psuedocode
  START TRANSACTION;
  scope(fail) ROLLBACK;
  scope(exit) COMMIT;
 
  Nice :)
 
 You may have meant scope(success) COMMIT;, scope(exit) is 
 executed on both failure and success.

Indeed I did. That's what I get for posting on my way to bed ;)



Re: DConf 2013 Day 1 Talk 6: Concurrent Garbage Collection for D by Leandro Lucarella

2013-05-22 Thread Leandro Lucarella
Diggory, el 21 de May a las 00:52 me escribiste:
 On Monday, 20 May 2013 at 13:55:05 UTC, Regan Heath wrote:
 On Mon, 20 May 2013 13:50:25 +0100, Andrei Alexandrescu
 seewebsiteforem...@erdani.org wrote:
 
 On reddit:
 http://www.reddit.com/r/programming/comments/1eovfu/dconf_2013_day_1_talk_6_concurrent_garbage/
 
 This may be the Windows Copy On Write feature mentioned in the QA
 at the end:
 http://support.microsoft.com/kb/103858
 
 .. but it's not clear to me how useful this is for fork emulation
 or similar.
 
 R
 
 Fork isn't needed at all really in the technique described, this is
 all that's needed:
 - Map a copy of the memory using copy-on-write
 - Run some code concurrently
 
 It just happens that fork does both of these things, but you can
 equally well do the two things using separate calls.
 
 In fact you should be able to avoid the deadlock issue by not using
 fork but just remapping some shared memory using copy on write. The
 GC can exist in a separate thread which pauses itself after every
 run. To run the GC it's then just a case of:
 - stop the world
 - copy registers to stack
 - remap shared memory using COW
 - resume the world
 - resume the GC thread
 
 And that would work on all modern OSes, plus you don't have the
 overhead of creating a new process or even a new thread. Also
 immutable memory doesn't need to be mapped, the GC thread can access
 it directly.

I'm interested in what you're describing, but I don't know how can you
achieve this without fork()ing (or clone()ing in Linux). What does
remap shared memory using COW in a context where fork() doesn't
happen? Why do you even need shared memory if fork() doesn't happen? If
remap shared memory using COW means get a different address for the
same block of memory until a write happens in that block, then you can't
scan the roots anymore.

I'm *very* interested in your suggestion.

-- 
Leandro Lucarella (AKA luca) http://llucax.com.ar/
--
GPG Key: 5F5A8D05 (F8CD F9A7 BF00 5431 4145  104C 949E BFB6 5F5A 8D05)
--
CONDUCTOR BORRACHO CASI PROVOCA UNA TRAGEDIA: BATMAN UNICO TESTIGO
-- Crónica TV


dmd 2.063 beta 5

2013-05-22 Thread Walter Bright


Join the dmd beta mailing list to keep up with the betas. This one is pretty 
much good to go, unless something disastrous crops up.


http://ftp.digitalmars.com/dmd2beta.zip

Remaining regressions:

http://d.puremagic.com/issues/buglist.cgi?query_format=advancedbug_severity=regressionbug_status=NEWbug_status=ASSIGNEDbug_status=REOPENED 



Re: HibernateD and DDBC - ORM and DB abstraction layer for D

2013-05-22 Thread Nick Sabalausky
On Mon, 06 May 2013 11:14:56 +0200
Kagamin s...@here.lot wrote:

 On Monday, 29 April 2013 at 09:38:10 UTC, David wrote:
  Null blows up your code,  doesn't.
 
 There's no difference between null and empty string in D.
 

That's not true:

assert( !is null); // Passes

Or did I misunderstand what you meant?



Re: DConf 2013 Day 1 Talk 2: Copy and Move Semantics in D by Ali Cehreli

2013-05-22 Thread Robert Jacques
On Fri, 10 May 2013 05:08:09 -0700, Andrei Alexandrescu  
seewebsiteforem...@erdani.org wrote:



Enjoy!

https://www.youtube.com/watch?v=mPr2UspS0fE

Andrei


Thanks. I noticed a subtle error in the response to the question on  
logical const (at 32:11). Specifically, overloading the function on  
immutable doesn't allow you to 'know' that the object you are passed is  
const or not, as prior to the invocation of the function (and thus  
overload determination) an immutable object could be bound to a const  
reference. As an alternative, IIRC, the RTTI of a class can be  
introspected inside the function to determine mutable/immutable at runtime.


Re: HibernateD and DDBC - ORM and DB abstraction layer for D

2013-05-22 Thread Diggory

On Tuesday, 21 May 2013 at 22:24:06 UTC, Nick Sabalausky wrote:

On Mon, 06 May 2013 11:14:56 +0200
Kagamin s...@here.lot wrote:


On Monday, 29 April 2013 at 09:38:10 UTC, David wrote:
 Null blows up your code,  doesn't.

There's no difference between null and empty string in D.



That's not true:

assert( !is null); // Passes

Or did I misunderstand what you meant?


Strings are slices which are a pointer and a length. I think a 
slice compares equal to null only if the pointer part is null. 
However, a slice with a null pointer and a length of zero is 
still a valid empty slice, which is slightly odd behaviour 
compared to other languages...


An empty string literal initialises the pointer to non-null 
because string literals are null terminated, so the memory block 
actually has a length of one, even though the slice has length 
zero.


Re: DConf 2013 Day 1 Talk 6: Concurrent Garbage Collection for D by Leandro Lucarella

2013-05-22 Thread Leandro Lucarella
Dicebot, el 21 de May a las 09:55 me escribiste:
 Can't wait to see a prototype for D2 :) I have a feeling that this
 may solve at least some of vibe.d latency issues at high concurrency
 levels.

I hope I can start porting it to D2 at some (not so far in the future)
point...

-- 
Leandro Lucarella (AKA luca) http://llucax.com.ar/
--
GPG Key: 5F5A8D05 (F8CD F9A7 BF00 5431 4145  104C 949E BFB6 5F5A 8D05)
--
Did you know the originally a Danish guy invented the burglar-alarm
unfortunately, it got stolen


Re: HibernateD and DDBC - ORM and DB abstraction layer for D

2013-05-22 Thread Nick Sabalausky
On Wed, 22 May 2013 02:10:52 +0200
Diggory digg...@googlemail.com wrote:

 On Tuesday, 21 May 2013 at 22:24:06 UTC, Nick Sabalausky wrote:
  On Mon, 06 May 2013 11:14:56 +0200
  Kagamin s...@here.lot wrote:
 
  On Monday, 29 April 2013 at 09:38:10 UTC, David wrote:
   Null blows up your code,  doesn't.
  
  There's no difference between null and empty string in D.
  
 
  That's not true:
 
  assert( !is null); // Passes
 
  Or did I misunderstand what you meant?
 
 Strings are slices which are a pointer and a length. I think a 
 slice compares equal to null only if the pointer part is null. 
 However, a slice with a null pointer and a length of zero is 
 still a valid empty slice, which is slightly odd behaviour 
 compared to other languages...
 
 An empty string literal initialises the pointer to non-null 
 because string literals are null terminated, so the memory block 
 actually has a length of one, even though the slice has length 
 zero.

Right, exactly. In other words, there *is* a difference between null and
empty string in D (even though it's sometimes a clouded issue since
'==' counts them as equal).



Re: DConf 2013 Day 1 Talk 6: Concurrent Garbage Collection for D by Leandro Lucarella

2013-05-22 Thread Diggory

On Tuesday, 21 May 2013 at 20:08:16 UTC, Leandro Lucarella wrote:


I'm interested in what you're describing, but I don't know how 
can you
achieve this without fork()ing (or clone()ing in Linux). What 
does
remap shared memory using COW in a context where fork() 
doesn't
happen? Why do you even need shared memory if fork() doesn't 
happen? If
remap shared memory using COW means get a different address 
for the
same block of memory until a write happens in that block, then 
you can't

scan the roots anymore.

I'm *very* interested in your suggestion.


I do mean mapping the same physical block of memory into two 
virtual memory blocks, such that a write will cause the OS to 
make a copy and sever the link.


Given that we're dealing with significantly large blocks of 
memory all in multiples of the page size, it should be a simple 
matter to map from one copy of the memory to the other and back 
again using basic pointer arithmetic, so scanning the roots 
should not be a problem.


You need shared memory because a file handle is needed when 
calling mmap to enable the COW functionality, and shared memory 
lets you get a file handle to a block of memory.


Re: DConf 2013 Day 1 Talk 2: Copy and Move Semantics in D by Ali Cehreli

2013-05-22 Thread Ali Çehreli

On 05/21/2013 04:58 PM, Robert Jacques wrote:

 the response to the question on logical const (at 32:11).

I think 31:22 is more precise.

Ali



Re: dmd 2.063 beta 5

2013-05-22 Thread kdmult

On Wednesday, 22 May 2013 at 04:45:57 UTC, kdmult wrote:

On Tuesday, 21 May 2013 at 20:36:20 UTC, Walter Bright wrote:


Join the dmd beta mailing list to keep up with the betas. This 
one is pretty much good to go, unless something disastrous 
crops up.


http://ftp.digitalmars.com/dmd2beta.zip


windows/bin/d.chm was generated using version 2.058, so there is
no some new information there.


Actually, the documentation included into the archive is not 
up-to-date. It should be re-generated.


Re: dmd 2.063 beta 5

2013-05-22 Thread kdmult

On Tuesday, 21 May 2013 at 20:36:20 UTC, Walter Bright wrote:


Join the dmd beta mailing list to keep up with the betas. This 
one is pretty much good to go, unless something disastrous 
crops up.


http://ftp.digitalmars.com/dmd2beta.zip


windows/bin/d.chm was generated using version 2.058, so there is
no some new information there.


DConf 2013 Day 1 Talk 7: Panel with Walter Bright and Andrei Alexandrescu

2013-05-22 Thread Andrei Alexandrescu

Destroy:

http://www.reddit.com/r/programming/comments/1etxqy/dconf_2013_day_1_talk_7_panel_with_walter_bright/

Andrei


Re: DConf 2013 Day 1 Talk 7: Panel with Walter Bright and Andrei Alexandrescu

2013-05-22 Thread Dicebot
Also, about that publicity discussion. Currently only way to 
read D-related announcement on dlang.org (if you are not a forum 
explorer) is embedded Twitter stuff. It is not very informative 
and does not bring attention. What about doing proper news feed 
page on dlang.org (with RSS, yay!) and linking to posts there 
from #D_Programming ?


Re: DConf 2013 Day 1 Talk 7: Panel with Walter Bright and Andrei Alexandrescu

2013-05-22 Thread Dicebot
Eh, official definition of breaking change keeps breaking my 
heart. But I guess this is a mindset set in stone now and 
changing it is close to impossible.


One positive thing to add, though: a question was asked about 
automatic tools that can make required changes automatically when 
something breaking is introduced. Starting if next release 
standard flag will appear that will list all places in code that 
are subject to specific behavior change: 
https://github.com/D-Programming-Language/dmd/pull/2039


Re: DConf 2013 Day 1 Talk 7: Panel with Walter Bright and Andrei Alexandrescu

2013-05-22 Thread Nick Sabalausky
On Wed, 22 May 2013 09:08:50 -0400
Andrei Alexandrescu seewebsiteforem...@erdani.org wrote:

 Destroy:
 
 http://www.reddit.com/r/programming/comments/1etxqy/dconf_2013_day_1_talk_7_panel_with_walter_bright/
 
 Andrei

Torrents of the youtube videos (the [HD] archive.org page doesn't
appear to be up yet):
http://semitwist.com/download/misc/dconf2013/



Re: DConf 2013 Day 1 Talk 7: Panel with Walter Bright and Andrei Alexandrescu

2013-05-22 Thread Jesse Phillips
On Wednesday, 22 May 2013 at 13:08:50 UTC, Andrei Alexandrescu 
wrote:

Destroy:

http://www.reddit.com/r/programming/comments/1etxqy/dconf_2013_day_1_talk_7_panel_with_walter_bright/

Andrei


I'm still not sure what the plan is on this, but Kickstarter 
backers should be informed that these videos are posted from the 
Kickstarter update system:


http://www.kickstarter.com/projects/2083649206/the-d-programming-language-conference-2013-0/posts


Re: DConf 2013 Day 1 Talk 7: Panel with Walter Bright and Andrei Alexandrescu

2013-05-22 Thread Graham Fawcett
On Wednesday, 22 May 2013 at 13:08:50 UTC, Andrei Alexandrescu 
wrote:

Destroy:

http://www.reddit.com/r/programming/comments/1etxqy/dconf_2013_day_1_talk_7_panel_with_walter_bright/

Andrei


A request, sir: When posting these videos to /r/programming, 
would you mind also posting them to /r/d_language ? As a 
lower-volume, targetted subreddit, the links will stay near the 
top for longer there, and will be easier to find.


Regards,
Graham


Re: DConf 2013 Day 1 Talk 7: Panel with Walter Bright and Andrei Alexandrescu

2013-05-22 Thread Andrei Alexandrescu

On 5/22/13 2:56 PM, Jesse Phillips wrote:

On Wednesday, 22 May 2013 at 13:08:50 UTC, Andrei Alexandrescu wrote:

Destroy:

http://www.reddit.com/r/programming/comments/1etxqy/dconf_2013_day_1_talk_7_panel_with_walter_bright/


Andrei


I'm still not sure what the plan is on this, but Kickstarter backers
should be informed that these videos are posted from the Kickstarter
update system:

http://www.kickstarter.com/projects/2083649206/the-d-programming-language-conference-2013-0/posts



Done: 
http://www.kickstarter.com/projects/2083649206/the-d-programming-language-conference-2013-0/posts/488715


Andrei


spam trolls

2013-05-22 Thread Walter Bright
We occasionally get a drive-by hosing with spam and trolling. Fortunately, not 
very often.


When I see them, I just delete them from the server. If I miss one, please email 
me about it.


Please do not reply to those posts. That's what they want. It confirms to them 
that they have an audience. It spreads their contagion, especially when your 
reply quotes the posts. I delete replies, too, as a general rule.


If you want to talk about spam, start a new thread. Don't reply in the spam or 
troll threads, don't quote them, don't reply with do not feed the trolls 
posts, don't acknowledge them in any way.



Oh, and I don't mind occasional off-topic posts from forum regulars.



Re: spam trolls

2013-05-22 Thread Dicebot

On Wednesday, 22 May 2013 at 20:51:34 UTC, Walter Bright wrote:

...


Really glad to see this :)


Re: spam trolls

2013-05-22 Thread Idan Arye

On Wednesday, 22 May 2013 at 21:06:21 UTC, Dicebot wrote:

On Wednesday, 22 May 2013 at 20:51:34 UTC, Walter Bright wrote:

...


Really glad to see this :)


+1!

Trolls are one of the only two kinds of problems known to 
humanity that actually get solved by themselves if you ignore 
them.


The other kind of problems, in case you wondered, is clients ;-P


Re: DConf 2013 Day 1 Talk 7: Panel with Walter Bright and Andrei Alexandrescu

2013-05-22 Thread Nick Sabalausky
On Wed, 22 May 2013 13:54:56 -0400
Nick Sabalausky seewebsitetocontac...@semitwist.com wrote:
 
 Torrents of the youtube videos (the [HD] archive.org page doesn't
 appear to be up yet):
 http://semitwist.com/download/misc/dconf2013/
 

Torrent/link for the full original quality video is up now, too.


Re: spam trolls

2013-05-22 Thread Walter Bright

On 5/22/2013 2:06 PM, Dicebot wrote:

On Wednesday, 22 May 2013 at 20:51:34 UTC, Walter Bright wrote:

...


Really glad to see this :)



BTW, I am inordinately pleased at the decorum in this forum, such that I've 
never felt a need to post guidelines about that. Coupled with how great everyone 
was at the D conference, I think we have a fantastic community, one we can all 
be proud of.


Re: spam trolls

2013-05-22 Thread Nick Sabalausky
On Wed, 22 May 2013 23:26:55 +0200
Idan Arye generic...@gmail.com wrote:

 On Wednesday, 22 May 2013 at 21:06:21 UTC, Dicebot wrote:
  On Wednesday, 22 May 2013 at 20:51:34 UTC, Walter Bright wrote:
  ...
 
  Really glad to see this :)
 
 +1!
 
 Trolls are one of the only two kinds of problems known to 
 humanity that actually get solved by themselves if you ignore 
 them.
 
 The other kind of problems, in case you wondered, is clients ;-P

And suicide cults...

(...Just sayin'!)


Re: spam trolls

2013-05-22 Thread bearophile

Walter Bright:

BTW, I am inordinately pleased at the decorum in this forum, 
such that I've never felt a need to post guidelines about that. 
Coupled with how great everyone was at the D conference, I 
think we have a fantastic community, one we can all be proud of.


I agree it's one of the best forums I have seen.

Bye,
bearophile


Re: DConf 2013 Day 1 Talk 7: Panel with Walter Bright and Andrei Alexandrescu

2013-05-22 Thread Graham Fawcett

On Wednesday, 22 May 2013 at 19:06:14 UTC, Graham Fawcett wrote:
On Wednesday, 22 May 2013 at 13:08:50 UTC, Andrei Alexandrescu 
wrote:

Destroy:

http://www.reddit.com/r/programming/comments/1etxqy/dconf_2013_day_1_talk_7_panel_with_walter_bright/

Andrei


A request, sir: When posting these videos to /r/programming, 
would you mind also posting them to /r/d_language ? As a 
lower-volume, targetted subreddit, the links will stay near the 
top for longer there, and will be easier to find.


Regards,
Graham


I've just posted the first seven videos there.

Graham



Re: DConf 2013 Day 1 Talk 7: Panel with Walter Bright and Andrei Alexandrescu

2013-05-22 Thread Andrei Alexandrescu

On 5/22/13 7:01 PM, Graham Fawcett wrote:

On Wednesday, 22 May 2013 at 19:06:14 UTC, Graham Fawcett wrote:

On Wednesday, 22 May 2013 at 13:08:50 UTC, Andrei Alexandrescu wrote:

Destroy:

http://www.reddit.com/r/programming/comments/1etxqy/dconf_2013_day_1_talk_7_panel_with_walter_bright/


Andrei


A request, sir: When posting these videos to /r/programming, would you
mind also posting them to /r/d_language ? As a lower-volume, targetted
subreddit, the links will stay near the top for longer there, and
will be easier to find.

Regards,
Graham


I've just posted the first seven videos there.

Graham



Awesome, thanks very much!

Andrei


Re: DConf 2013 Day 1 Talk 5: Using D Alongside a Game Engine by Manu Evans

2013-05-22 Thread Brad Anderson

On Friday, 17 May 2013 at 13:28:20 UTC, Andrei Alexandrescu wrote:

Great talk. Vote up!

http://www.reddit.com/r/programming/comments/1eiku4/dconf_2013_day_1_talk_5_using_d_alongside_a_game/


Andrei


Great talk indeed. My favorite so far (if I had to choose).

Also, Microsoft just had their big XBox One keynote and one of 
the games featured prominently was Quantum Break by Manu's very 
own Remedy Games.  Any chance the system you described in your 
talk is being used for Quantum Break, Manu?  XBox One is x86 and 
I can't think of a reason you couldn't be using dmd on it.


Re: DConf 2013 Day 1 Talk 5: Using D Alongside a Game Engine by Manu Evans

2013-05-22 Thread Nick Sabalausky
On Thu, 23 May 2013 02:08:15 +0200
Brad Anderson e...@gnuk.net wrote:

 On Friday, 17 May 2013 at 13:28:20 UTC, Andrei Alexandrescu wrote:
  Great talk. Vote up!
 
  http://www.reddit.com/r/programming/comments/1eiku4/dconf_2013_day_1_talk_5_using_d_alongside_a_game/
 
 
  Andrei
 
 Great talk indeed. My favorite so far (if I had to choose).
 
 Also, Microsoft just had their big XBox One keynote

Pardon the OT, but:

What the fuck?! MS went from their first...to 360...to **One**?

No, Halo 437 isn't for the XBox1, it's for the XBox One.

Between that and Win8, that's it: now I *know* Redmond has slipped
into the multiverse's asylum reality.

First, I thought Wii was an unimaginably dumb name. Then I think:

Holy shit, they actually managed to top it with 'Weeyuu'
http://www.youtube.com/watch?v=0JElywbkSbY, I didn't think such a
level of dumb was even possible!

And now, the mere following year, Microsoft manages to
out-Nintendo Nintendo itself by naming their *third* Xbox XBox One?!?
What the fuck is wrong with these people? Is there *no* sanity left?

I *used* to think I miss when consoles has *good* names. Now I miss
*that*: the days then they had *merely* generic names, or even merely
*bad* names.

XBox Onefor god's sake...

 and one of 
 the games featured prominently was Quantum Break by Manu's very 
 own Remedy Games.  Any chance the system you described in your 
 talk is being used for Quantum Break, Manu?  XBox One is x86 and 
 I can't think of a reason you couldn't be using dmd on it.

That would certainly be interesting to hear. Although unless they've
secretly had two AAA games in development, I imagine we can make a
pretty safe guess.



Re: DConf 2013 Day 1 Talk 5: Using D Alongside a Game Engine by Manu Evans

2013-05-22 Thread Brad Anderson

On Thursday, 23 May 2013 at 03:56:00 UTC, Nick Sabalausky wrote:

On Thu, 23 May 2013 02:08:15 +0200
Brad Anderson e...@gnuk.net wrote:
and one of the games featured prominently was Quantum Break by 
Manu's very own Remedy Games.  Any chance the system you 
described in your talk is being used for Quantum Break, Manu?  
XBox One is x86 and I can't think of a reason you couldn't be 
using dmd on it.


That would certainly be interesting to hear. Although unless 
they've
secretly had two AAA games in development, I imagine we can 
make a

pretty safe guess.


Looking at their release history it doesn't look like they work 
on multiple titles at the same time (several years between each 
major title).  Quantum Break doesn't come out until 2014 so I 
think it's a safe bet to say they are using D for a game featured 
prominently during a major console announcement. Very cool.