Re: mysql-native: Seamlessly supports Phobos-only sockets
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
On Wednesday, 22 May 2013 at 20:51:34 UTC, Walter Bright wrote: ... Really glad to see this :)
Re: spam trolls
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
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
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
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
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
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
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
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
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
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.