Re: Discussion on Go and D

2012-04-08 Thread H. S. Teoh
On Sun, Apr 08, 2012 at 09:42:42AM -0500, Andrei Alexandrescu wrote: On 4/8/12 4:20 AM, Andrej Mitrovic wrote: On 4/7/12, Andrei Alexandrescuseewebsiteforem...@erdani.org wrote: 3. The ability to dispose of memory will disappear along with the delete keyword. Pull this and hopefully that

Re: readonly storage class

2012-04-08 Thread H. S. Teoh
On Sun, Apr 08, 2012 at 06:09:48PM +0200, Benjamin Thaut wrote: [...] Thanks, then this is a misunderstanding on my side, and this topic is irrelevant. But what about calling const methods on immutable objects? [...] Basically, the way const/immutable works is: const

Re: std.benchmark ready for review. Manager sought after

2012-04-08 Thread Andrei Alexandrescu
On 4/8/12 11:59 AM, Denis Shelomovskij wrote: Very good but minimum isn't a best guess. Personally I (and there will be a lot of such maniacs I suppose) will think that this (minimum) time can be significantly smaller than average time. I've analyzed this quite a bit at work and the average

Re: A modest proposal: eliminate template code bloat

2012-04-08 Thread Marco Leise
Am Sun, 08 Apr 2012 20:58:15 +0400 schrieb Dmitry Olshansky dmitry.o...@gmail.com: On 08.04.2012 16:37, Marco Leise wrote: [snip] Template bloat could be especially important to 'fix' on embedded systems. I think I this idea largely formed years ago when I was working with c++ on 8bit

Re: std.benchmark ready for review. Manager sought after

2012-04-08 Thread Dmitry Olshansky
On 08.04.2012 20:59, Denis Shelomovskij wrote: Very good but minimum isn't a best guess. Personally I (and there will be a lot of such maniacs I suppose) will think that this (minimum) time can be significantly smaller than average time. Prime example is networking. So a parameter (probably

Re: std.benchmark ready for review. Manager sought after

2012-04-08 Thread Andrei Alexandrescu
On 4/8/12 12:35 PM, Dmitry Olshansky wrote: Another cool addition IMHO would be parametric benchmarks, so there is a function and a set of parameters (one parameter is fine too) to benchmark on. It makes that much more sense with graphs as algorithm profile plotted for various inputs (sizes) can

Re: Shared library in D on Linux

2012-04-08 Thread Timo Westkämper
On Sunday, 8 April 2012 at 14:52:55 UTC, Ellery Newcomer wrote: On 04/08/2012 03:45 AM, Timo Westkämper timo.westkam...@gmail.com wrote: extern(C) { void gc_init(); void gc_term(); void _init() { gc_init(); } void _fini() { gc_term(); } } I think you want rt_init and rt_term here. I

Documentation improvements

2012-04-08 Thread Jonas H.
Hi everyone, I decided to give D a try yesterday and had quite some trouble with the documentation. I want to help improve the docs on dlang.org. Here are some ideas. The top links in the left menu really should documentation. Most people don't care about Acknowledgements, the Sitemap,

Re: Shared library in D on Linux

2012-04-08 Thread Jacob Carlborg
On 2012-04-08 17:53, mta`chrono wrote: I'm interessting in the same stuff. I've a question to _tlsend and _tlsstart. What are they used for? My disputable presumption was that they point to the begin of TLS segment. Yes, exactly, the start and end of the TLS segment. What is _deh_begin and

Re: GSoC 2012 Proposal: Continued Work on a D Linear Algebra library (SciD - std.linalg)

2012-04-08 Thread Caligo
On Tue, Apr 3, 2012 at 6:20 AM, Cristi Cobzarenco cristi.cobzare...@gmail.com wrote: The point of these is to have light-weight element wise operation support. It's true that in theory the built-in arrays do this. However, this library is built on top BLAS/LAPACK, which means operations on

Re: std.benchmark ready for review. Manager sought after

2012-04-08 Thread Caligo
On Sat, Apr 7, 2012 at 10:25 PM, Andrei Alexandrescu seewebsiteforem...@erdani.org wrote: Hello, I finally found the time to complete std.benchmark. I got to a very simple API design, starting where I like it: one line of code. Andrei I probably missed this somewhere, but what happens to

Re: Shared library in D on Linux

2012-04-08 Thread Timo Westkämper
Does someone know why the lib (.a) packaging instead of objects (.o) works better in this case?

Re: a pretty exciting result for parallel D lang rmd following defrag by name

2012-04-08 Thread Jay Norwood
On Sunday, 8 April 2012 at 16:14:05 UTC, Jay Norwood wrote: There are signficant improvements also in copy operations as a result of defrag by Name. 43 seconds vs 1 min 43 secs for xcopy of sorted 2GB vs unsorted. this is the 2GB folder defragged with sorted LCN by pathname G:\cmd /v:on /c

Re: Small Buffer Optimization for string and friends

2012-04-08 Thread Michel Fortin
On 2012-04-08 17:14:37 +, Andrei Alexandrescu seewebsiteforem...@erdani.org said: On 4/8/12 12:05 PM, Walter Bright wrote: On 4/8/2012 7:53 AM, Andrei Alexandrescu wrote: Once anyone asks for .ptr a conservative copy will be made. That could get expensive. You cannot just point into

Re: std.benchmark ready for review. Manager sought after

2012-04-08 Thread Dmitry Olshansky
On 08.04.2012 21:40, Andrei Alexandrescu wrote: On 4/8/12 12:35 PM, Dmitry Olshansky wrote: Another cool addition IMHO would be parametric benchmarks, so there is a function and a set of parameters (one parameter is fine too) to benchmark on. It makes that much more sense with graphs as

Re: Small Buffer Optimization for string and friends

2012-04-08 Thread Andrei Alexandrescu
On 4/8/12 1:16 PM, Michel Fortin wrote: On 2012-04-08 17:14:37 +, Andrei Alexandrescu seewebsiteforem...@erdani.org said: As I mentioned, the first call to .ptr changes representation, thus making the allocation that the optimization had saved. Things are not worse off than before. This

Re: std.benchmark ready for review. Manager sought after

2012-04-08 Thread Andrei Alexandrescu
On 4/8/12 1:03 PM, Caligo wrote: On Sat, Apr 7, 2012 at 10:25 PM, Andrei Alexandrescu seewebsiteforem...@erdani.org wrote: Hello, I finally found the time to complete std.benchmark. I got to a very simple API design, starting where I like it: one line of code. Andrei I probably missed

Re: Small Buffer Optimization for string and friends

2012-04-08 Thread Andrei Alexandrescu
On 4/8/12 1:26 PM, Andrei Alexandrescu wrote: On 4/8/12 1:16 PM, Michel Fortin wrote: On 2012-04-08 17:14:37 +, Andrei Alexandrescu seewebsiteforem...@erdani.org said: As I mentioned, the first call to .ptr changes representation, thus making the allocation that the optimization had saved.

Re: A modest proposal: eliminate template code bloat

2012-04-08 Thread Dmitry Olshansky
On 08.04.2012 21:24, H. S. Teoh wrote: Yeah, that's what I was thinking of. This would be a very big gain for the new AA implementation, for example. I wouldn't have to worry so much about template bloat if most of the instantiations are going to get merged anyway. :-) Right the advantage is

Re: A modest proposal: eliminate template code bloat

2012-04-08 Thread Andrei Alexandrescu
On 4/8/12 1:49 PM, Dmitry Olshansky wrote: P.S. Damn, I could have done a nice paper on that... too late :) You may always do. Andrei

Re: A modest proposal: eliminate template code bloat

2012-04-08 Thread Walter Bright
On 4/8/2012 4:01 AM, Dmitry Olshansky wrote: I think it's been ages since I meant to ask why nobody (as in compiler vendors) does what I think is rather simple optimization. I worked out how to do it a while ago, but there's been no time to implement it. (You can't do a memcmp because of all

Re: A modest proposal: eliminate template code bloat

2012-04-08 Thread Dmitry Olshansky
On 08.04.2012 22:51, Walter Bright wrote: On 4/8/2012 4:01 AM, Dmitry Olshansky wrote: I think it's been ages since I meant to ask why nobody (as in compiler vendors) does what I think is rather simple optimization. I worked out how to do it a while ago, but there's been no time to implement

Re: GSoC 2012 Proposal: Continued Work on a D Linear Algebra library (SciD - std.linalg)

2012-04-08 Thread H. S. Teoh
On Sun, Apr 08, 2012 at 12:59:08PM -0500, Caligo wrote: On Tue, Apr 3, 2012 at 6:20 AM, Cristi Cobzarenco cristi.cobzare...@gmail.com wrote: [...] Also I'm not sure how a case like this will be compiled, it may or may not allocate a temporary: a[] = b[] * c[] + d[] * 2.0; The

Re: A modest proposal: eliminate template code bloat

2012-04-08 Thread Dmitry Olshansky
On 08.04.2012 22:49, Dmitry Olshansky wrote: The refinement is merging prefixes and suffixes of course. And for that one needs to calculate hashes for all of prefixes and all of suffixes. I will define _all_ later on. First observation is that if you calculated partial checksums for prefixes

Re: A modest proposal: eliminate template code bloat

2012-04-08 Thread H. S. Teoh
On Sun, Apr 08, 2012 at 10:56:43PM +0400, Dmitry Olshansky wrote: On 08.04.2012 22:51, Walter Bright wrote: [...] The main difficulty is not being able to modify the linker. So you're pretty much limited to what the compiler is able to do before linking. D does allow the compiler to deal with

Hitchikers Guide to Porting Phobos / D Runtime to other architectures

2012-04-08 Thread Iain Buclaw
I got asked whether there are any porting hints for phobos on other architectures the other day from the debian GCC maintainers. So I gathered this must be at least a dedicated wiki or article to be written up on the subject. :) I know there are a few working on porting gdc and associated

Re: Hitchikers Guide to Porting Phobos / D Runtime to other architectures

2012-04-08 Thread Alex Rønne Petersen
On 08-04-2012 21:08, Iain Buclaw wrote: I got asked whether there are any porting hints for phobos on other architectures the other day from the debian GCC maintainers. So I gathered this must be at least a dedicated wiki or article to be written up on the subject. :) I know there are a few

Re: A modest proposal: eliminate template code bloat

2012-04-08 Thread Artur Skawina
On 04/08/12 18:14, Andrei Alexandrescu wrote: On 4/8/12 10:59 AM, Artur Skawina wrote: On 04/08/12 17:20, Dmitry Olshansky wrote: On 08.04.2012 18:21, Artur Skawina wrote: On 04/08/12 13:01, Dmitry Olshansky wrote: 3. After any function was generated compiler checks an entry in the

Re: Small Buffer Optimization for string and friends

2012-04-08 Thread Michel Fortin
On 2012-04-08 18:30:49 +, Andrei Alexandrescu seewebsiteforem...@erdani.org said: On 4/8/12 1:26 PM, Andrei Alexandrescu wrote: On 4/8/12 1:16 PM, Michel Fortin wrote: Also, if the variable is a temporary copy such as a by-value function parameter, only the representation of that

Re: Documentation improvements

2012-04-08 Thread Kevin Cox
I would just like to say that I like having the grammar there. It helps me see the relations in the syntax. And I thought there were enough syntax examples.

Re: std.benchmark ready for review. Manager sought after

2012-04-08 Thread Manfred Nowak
Andrei Alexandrescu wrote: Clearly there is noise during normal use as well, but incorporating it in benchmarks as a matter of course reduces the usefulness of benchmarks On the contrary: 1) The noise during normal use has to be measured in order to detect the sensibility of the benchmarked

malloc in core.memory.GC

2012-04-08 Thread Andrei Alexandrescu
At http://dlang.org/phobos/core_memory.html, the spec for GC.malloc is static void* malloc(size_t sz, uint ba = 0); I assume each type has a specific ba. Is there a primitive in core.memory to retrieve it? Thanks, Andrei

Re: std.benchmark ready for review. Manager sought after

2012-04-08 Thread Somedude
Le 08/04/2012 17:48, Dmitry Olshansky a écrit : On 08.04.2012 12:16, Somedude wrote: [snip] Like it. Would it be a good idea to add a column with an average memory used ? In general it's next to impossible and/or entirely OS-specific. What can be done I think is adding a query function to

Re: std.benchmark ready for review. Manager sought after

2012-04-08 Thread Somedude
Le 08/04/2012 18:21, Marco Leise a écrit : Am Sun, 08 Apr 2012 09:35:14 -0500 schrieb Andrei Alexandrescu seewebsiteforem...@erdani.org: On 4/8/12 3:16 AM, Somedude wrote: Like it. Would it be a good idea to add a column with an average memory used ? Interesting idea. I saw

Re: std.benchmark ready for review. Manager sought after

2012-04-08 Thread Andrei Alexandrescu
On 4/8/12 3:03 PM, Manfred Nowak wrote: Andrei Alexandrescu wrote: Clearly there is noise during normal use as well, but incorporating it in benchmarks as a matter of course reduces the usefulness of benchmarks On the contrary: 1) The noise during normal use has to be measured in order to

Re: malloc in core.memory.GC

2012-04-08 Thread Alex Rønne Petersen
On 08-04-2012 22:05, Andrei Alexandrescu wrote: At http://dlang.org/phobos/core_memory.html, the spec for GC.malloc is static void* malloc(size_t sz, uint ba = 0); I assume each type has a specific ba. Is there a primitive in core.memory to retrieve it? Thanks, Andrei Currently, no. I

Is the code for std.database online ?

2012-04-08 Thread Somedude
I would like to have a look at it. Does anyone know if it's somewhere on Github ? Thanks.

Re: malloc in core.memory.GC

2012-04-08 Thread Alex Rønne Petersen
On 08-04-2012 22:33, Alex Rønne Petersen wrote: On 08-04-2012 22:05, Andrei Alexandrescu wrote: At http://dlang.org/phobos/core_memory.html, the spec for GC.malloc is static void* malloc(size_t sz, uint ba = 0); I assume each type has a specific ba. Is there a primitive in core.memory to

Re: Discussion on Go and D

2012-04-08 Thread Andrei Alexandrescu
On 4/8/12 12:21 PM, Walter Bright wrote: On 4/6/2012 9:07 AM, Andrei Alexandrescu wrote: A few more samples of people's perception of the two languages: http://news.ycombinator.com/item?id=3805302 At least we don't have this issue: http://news.ycombinator.com/item?id=3814020 The D gc

Re: Documentation improvements

2012-04-08 Thread Jonas H.
On 04/08/2012 10:02 PM, Kevin Cox wrote: I would just like to say that I like having the grammar there. It helps me see the relations in the syntax. And I thought there were enough syntax examples. Sure but when people click on a link and weird grammar definitions are the only thing that's

Encodings

2012-04-08 Thread Nathan M. Swan
For most of the string processing I do, I read/write text in UTF-8 and convert it to UTF-32 for processing (with std.utf), so I don't have to worry about encoding. Is this a good or bad paradigm? Is there a better way to do this? What method do all of you use? Just curious, NMS

Re: Small Buffer Optimization for string and friends

2012-04-08 Thread Somedude
Le 08/04/2012 17:48, Michel Fortin a écrit : On 2012-04-08 15:06:13 +, Andrei Alexandrescu seewebsiteforem...@erdani.org said: On 4/8/12 9:59 AM, Michel Fortin wrote: But as soon as you take a pointer to that string, you break the immutability guaranty: immutable(char)[] s = abcd;

Re: Documentation improvements

2012-04-08 Thread Kevin Cox
On Apr 8, 2012 4:54 PM, Jonas H. jo...@lophus.org wrote Sure but when people click on a link and weird grammar definitions are the only thing that's on the screen they're likely to think that's not what I looked for and try other pages. For sure. I think there should be both.

Re: Encodings

2012-04-08 Thread Jonathan M Davis
On Sunday, April 08, 2012 23:36:23 Nathan M. Swan wrote: For most of the string processing I do, I read/write text in UTF-8 and convert it to UTF-32 for processing (with std.utf), so I don't have to worry about encoding. Is this a good or bad paradigm? Is there a better way to do this? What

Re: a pretty exciting result for parallel D lang rmd following defrag by name

2012-04-08 Thread Somedude
Le 08/04/2012 18:14, Jay Norwood a écrit : On Sunday, 8 April 2012 at 09:21:43 UTC, Somedude wrote: Hi, You seem to have done a pretty good job with your parallel unzip. Have you tried a parallel zip as well ? Do you think you could include this in std.zip when you're done ? I'm going to

Re: a pretty exciting result for parallel D lang rmd following defrag by name

2012-04-08 Thread Somedude
Le 09/04/2012 00:15, Somedude a écrit : Le 08/04/2012 18:14, Jay Norwood a écrit : On Sunday, 8 April 2012 at 09:21:43 UTC, Somedude wrote: Hi, You seem to have done a pretty good job with your parallel unzip. Have you tried a parallel zip as well ? Do you think you could include this in

x32-abi + D = fat pointers?

2012-04-08 Thread Tove
I just stumbled upon this: https://sites.google.com/site/x32abi/home /rant I remember back in the glorious MC68000 days(24bit addressing)... leaving 8bits for creative optimizations... until 68020 took away all the fun that is. So... I was kinda upset that x86-64 was explicitly designed not

Re: x32-abi + D = fat pointers?

2012-04-08 Thread Kevin Cox
On Apr 8, 2012 6:24 PM, Tove t...@fransson.se wrote: I just stumbled upon this: https://sites.google.com/site/x32abi/home /rant I remember back in the glorious MC68000 days(24bit addressing)... leaving 8bits for creative optimizations... until 68020 took away all the fun that is. So... I

Re: malloc in core.memory.GC

2012-04-08 Thread Sean Kelly
ba is a BlockAttr bit field. On Apr 8, 2012, at 1:05 PM, Andrei Alexandrescu seewebsiteforem...@erdani.org wrote: At http://dlang.org/phobos/core_memory.html, the spec for GC.malloc is static void* malloc(size_t sz, uint ba = 0); I assume each type has a specific ba. Is there a

Re: malloc in core.memory.GC

2012-04-08 Thread Alex Rønne Petersen
On 08-04-2012 22:05, Andrei Alexandrescu wrote: At http://dlang.org/phobos/core_memory.html, the spec for GC.malloc is static void* malloc(size_t sz, uint ba = 0); I assume each type has a specific ba. Is there a primitive in core.memory to retrieve it? Thanks, Andrei Heh, even that is

Re: malloc in core.memory.GC

2012-04-08 Thread Alex Rønne Petersen
On 09-04-2012 00:34, Alex Rønne Petersen wrote: On 08-04-2012 22:05, Andrei Alexandrescu wrote: At http://dlang.org/phobos/core_memory.html, the spec for GC.malloc is static void* malloc(size_t sz, uint ba = 0); I assume each type has a specific ba. Is there a primitive in core.memory to

Re: malloc in core.memory.GC

2012-04-08 Thread Andrei Alexandrescu
On 4/8/12 5:33 PM, Sean Kelly wrote: ba is a BlockAttr bit field. Yah. The question was how can I retrieve a type's native bit field, i.e. NO_SCAN for int, FINALIZE for class objects, etc. Andrei

Re: GSoC 2012 Proposal: Continued Work on a D Linear Algebra library (SciD - std.linalg)

2012-04-08 Thread Cristi Cobzarenco
On 8 April 2012 18:59, Caligo iteronve...@gmail.com wrote: On Tue, Apr 3, 2012 at 6:20 AM, Cristi Cobzarenco cristi.cobzare...@gmail.com wrote: The point of these is to have light-weight element wise operation support. It's true that in theory the built-in arrays do this. However, this

Re: Discussion on Go and D

2012-04-08 Thread Manu
On 8 April 2012 23:44, Andrei Alexandrescu seewebsiteforem...@erdani.orgwrote: On 4/8/12 12:21 PM, Walter Bright wrote: On 4/6/2012 9:07 AM, Andrei Alexandrescu wrote: A few more samples of people's perception of the two languages:

Foreach Closures?

2012-04-08 Thread Kevin Cox
I was wondering about the foreach statement and when you implement opApply() for a class it is implemented using closures. I was wondering if this is just how it is expressed or if it is actually syntatic sugar. The reason I aski is because if you have a return statement inside a foreach it

Re: Discussion on Go and D

2012-04-08 Thread Walter Bright
On 4/8/2012 3:57 PM, Manu wrote: What do you base that statistic on? I'm not arguing that fact, just that I haven't seen any evidence one way or the other. What causes Go to create significantly more garbage than D? Are there benchmarks or test cases I should be aware of on the topic? The

Re: Foreach Closures?

2012-04-08 Thread Alex Rønne Petersen
On 09-04-2012 01:26, Kevin Cox wrote: I was wondering about the foreach statement and when you implement opApply() for a class it is implemented using closures. I was wondering if this is just how it is expressed or if it is actually syntatic sugar. The reason I aski is because if you have a

Re: Discussion on Go and D

2012-04-08 Thread bearophile
Walter: Anyhow, D has a lot of facilities for putting things on the stack rather than the heap, In a system language heap allocations are often among the spots where the program is slower. So a good system language must offer good ways to use the stack as much as possible. D offers some

Re: Foreach Closures?

2012-04-08 Thread Timon Gehr
On 04/09/2012 01:26 AM, Kevin Cox wrote: I was wondering about the foreach statement and when you implement opApply() for a class it is implemented using closures. I was wondering if this is just how it is expressed or if it is actually syntatic sugar. The reason I aski is because if you have

Re: Foreach Closures?

2012-04-08 Thread Kevin Cox
On Apr 8, 2012 7:49 PM, Timon Gehr timon.g...@gmx.ch wrote: On 04/09/2012 01:26 AM, Kevin Cox wrote: I was wondering about the foreach statement and when you implement opApply() for a class it is implemented using closures. I was wondering if this is just how it is expressed or if it is

Re: Discussion on Go and D

2012-04-08 Thread Andrei Alexandrescu
On 4/8/12 5:57 PM, Manu wrote: On 8 April 2012 23:44, Andrei Alexandrescu seewebsiteforem...@erdani.org mailto:seewebsiteforem...@erdani.org wrote: Anyhow, the recent discussions on Go clarify that we need to improve our collector's precision, and pronto. The only thing that didn't

Re: Discussion on Go and D

2012-04-08 Thread Manu
On 9 April 2012 02:24, Walter Bright newshou...@digitalmars.com wrote: On 4/8/2012 3:57 PM, Manu wrote: What do you base that statistic on? I'm not arguing that fact, just that I haven't seen any evidence one way or the other. What causes Go to create significantly more garbage than D? Are

Re: Discussion on Go and D

2012-04-08 Thread Andrej Mitrovic
On 4/9/12, Andrei Alexandrescu seewebsiteforem...@erdani.org wrote: and pass-by-alias Speaking of alias, one killer feature would be to enable using alias for expressions. E.g.: struct Window { struct Point { int x, y; } Point point; } void test() { Window window; alias window.point.x

Re: Discussion on Go and D

2012-04-08 Thread Alex Rønne Petersen
On 09-04-2012 02:18, Manu wrote: On 9 April 2012 02:24, Walter Bright newshou...@digitalmars.com mailto:newshou...@digitalmars.com wrote: On 4/8/2012 3:57 PM, Manu wrote: What do you base that statistic on? I'm not arguing that fact, just that I haven't seen any

Re: Discussion on Go and D

2012-04-08 Thread Andrei Alexandrescu
On 4/8/12 7:21 PM, Andrej Mitrovic wrote: On 4/9/12, Andrei Alexandrescuseewebsiteforem...@erdani.org wrote: and pass-by-alias Speaking of alias, one killer feature would be to enable using alias for expressions. E.g.: struct Window { struct Point { int x, y; } Point point; } void test() {

Re: Discussion on Go and D

2012-04-08 Thread Manu
On 9 April 2012 03:21, Andrej Mitrovic andrej.mitrov...@gmail.com wrote: On 4/9/12, Andrei Alexandrescu seewebsiteforem...@erdani.org wrote: and pass-by-alias Speaking of alias, one killer feature would be to enable using alias for expressions. E.g.: struct Window { struct Point { int x,

Re: Discussion on Go and D

2012-04-08 Thread Manu
On 9 April 2012 03:25, Andrei Alexandrescu seewebsiteforem...@erdani.orgwrote: On 4/8/12 7:21 PM, Andrej Mitrovic wrote: On 4/9/12, Andrei AlexandrescuSeeWebsiteForEmai**l...@erdani.orgseewebsiteforem...@erdani.org wrote: and pass-by-alias Speaking of alias, one killer feature would

Re: Discussion on Go and D

2012-04-08 Thread Andrej Mitrovic
On 4/9/12, Manu turkey...@gmail.com wrote: (...why can't you use 'ref' in regular declarations? I frequently find myself wanting to use ref locally for this exact reason.) I think the reason for this was because references are supposed to be hidden from the user. But if you look it from a

Re: a pretty exciting result for parallel D lang rmd following defrag by name

2012-04-08 Thread Jay Norwood
On Sunday, 8 April 2012 at 22:17:43 UTC, Somedude wrote: Well, you can always do something like this: version (parallel) { import std.parallelism; // multithreaded ... } else { // single thread ... } Or rather: // single thread zip ... version (parallel) { import

std library hooks

2012-04-08 Thread Manu
So one thing that almost every major middleware provides, is an interface to hook your own allocation and filesystem callbacks under the hood, to allow integration with your potentially complex technology. In my industry, memory and filesystem hooks are non-negotiable. We can't use any middleware

Re: Discussion on Go and D

2012-04-08 Thread Manu
On 9 April 2012 03:46, Andrej Mitrovic andrej.mitrov...@gmail.com wrote: On 4/9/12, Manu turkey...@gmail.com wrote: (...why can't you use 'ref' in regular declarations? I frequently find myself wanting to use ref locally for this exact reason.) I think the reason for this was because

Re: Discussion on Go and D

2012-04-08 Thread Andrej Mitrovic
On 4/9/12, Manu turkey...@gmail.com wrote: I don't follow. Can you give an example that shows this insecurity? I mean escaping references to locals: ref int xref; void foo() { int x; xref = x; } or ref int foo() { int x; ref int xref = x; return xref; } I mean a ref would

Re: A modest proposal: eliminate template code bloat

2012-04-08 Thread Daniel Murphy
Artur Skawina art.08...@gmail.com wrote in message news:mailman.1480.1333900846.4860.digitalmar...@puremagic.com... Note that my point is just that the compiler needs to emit a dummy so that the addresses remain unique, eg module.f!uint: jmp module.f!int Or use a nop slide before

Re: A modest proposal: eliminate template code bloat

2012-04-08 Thread Daniel Murphy
Dmitry Olshansky dmitry.o...@gmail.com wrote in message news:jlsmka$22ce$1...@digitalmars.com... The refinement is merging prefixes and suffixes of course. And for that one needs to calculate hashes for all of prefixes and all of suffixes. I will define _all_ later on. I think you'll find

deimos libX11 not compiling

2012-04-08 Thread Nathan M. Swan
I'm not sure if I would post this here, but: https://github.com/D-Programming-Deimos/libX11/issues/7

Re: A modest proposal: eliminate template code bloat

2012-04-08 Thread H. S. Teoh
On Mon, Apr 09, 2012 at 10:59:26AM +1000, Daniel Murphy wrote: Artur Skawina art.08...@gmail.com wrote in message news:mailman.1480.1333900846.4860.digitalmar...@puremagic.com... Note that my point is just that the compiler needs to emit a dummy so that the addresses remain unique, eg

Re: D and Heterogeneous Computing

2012-04-08 Thread Josh Klontz
On Saturday, 7 April 2012 at 18:47:21 UTC, Robert Jacques wrote: On Sat, 07 Apr 2012 11:38:15 -0500, Josh Klontz josh.klo...@gmail.com wrote: Greetings! As someone with a research interest in software abstractions for image processing, the D programming language appears to offer unsurpassed

Re: Discussion on Go and D

2012-04-08 Thread Marco Leise
Am Mon, 9 Apr 2012 03:38:15 +0300 schrieb Manu turkey...@gmail.com: On 9 April 2012 03:25, Andrei Alexandrescu seewebsiteforem...@erdani.orgwrote: On 4/8/12 7:21 PM, Andrej Mitrovic wrote: On 4/9/12, Andrei AlexandrescuSeeWebsiteForEmai**l...@erdani.orgseewebsiteforem...@erdani.org

Re: A modest proposal: eliminate template code bloat

2012-04-08 Thread Marco Leise
Am Sun, 8 Apr 2012 19:14:22 -0700 schrieb H. S. Teoh hst...@quickfur.ath.cx: On Mon, Apr 09, 2012 at 10:59:26AM +1000, Daniel Murphy wrote: Artur Skawina art.08...@gmail.com wrote in message news:mailman.1480.1333900846.4860.digitalmar...@puremagic.com... Note that my point is just

Re: D and Heterogeneous Computing

2012-04-08 Thread Dmitry Olshansky
On 09.04.2012 6:49, Josh Klontz wrote: On Saturday, 7 April 2012 at 18:47:21 UTC, Robert Jacques wrote: On Sat, 07 Apr 2012 11:38:15 -0500, Josh Klontz josh.klo...@gmail.com wrote: Greetings! As someone with a research interest in software abstractions for image processing, the D programming

Re: malloc in core.memory.GC

2012-04-08 Thread Sean Kelly
On Apr 8, 2012, at 3:42 PM, Andrei Alexandrescu seewebsiteforem...@erdani.org wrote: On 4/8/12 5:33 PM, Sean Kelly wrote: ba is a BlockAttr bit field. Yah. The question was how can I retrieve a type's native bit field, i.e. NO_SCAN for int, FINALIZE for class objects, etc. getAttr for

Re: Static Associative Arrays

2012-04-08 Thread Caligo
On Sat, Apr 7, 2012 at 11:01 PM, Jonathan M Davis jmdavisp...@gmx.com wrote: What do you mean my static associative arrays? Are you asking why you can't initialize a static variable which is an AA at compile time? e.g. - Jonathan M Davis The same way I can create a static array: int[4] =

Re: Static Associative Arrays

2012-04-08 Thread Jonathan M Davis
On Sunday, April 08, 2012 01:24:02 Caligo wrote: On Sat, Apr 7, 2012 at 11:01 PM, Jonathan M Davis jmdavisp...@gmx.com wrote: What do you mean my static associative arrays? Are you asking why you can't initialize a static variable which is an AA at compile time? e.g. - Jonathan M

Re: string concatenation

2012-04-08 Thread Andrej Mitrovic
On 4/8/12, dnewbie r...@myopera.com wrote: I have a wchar[] and I want to convert it to UTF8 then append a string. This is my code. import std.c.windows.windows; import std.string; import std.utf; int main() { wchar[100] v; v[0] = 'H'; v[1] = 'e'; v[2] = 'l'; v[3] =

Re: Win GUI Single Exe - Newbie

2012-04-08 Thread Jacob Carlborg
On 2012-04-07 23:34, vmars316 wrote: On Saturday, 7 April 2012 at 12:25:27 UTC, Jacob Carlborg wrote: On 2012-04-06 17:37, Jesse Phillips wrote: Building stand alone executables with DWT works great. DWT doesn't depend on any third party libraries, only on the system libraries. I

Re: asm stackframe question

2012-04-08 Thread Stefan
On Sunday, 8 April 2012 at 01:15:48 UTC, Timon Gehr wrote: The D calling convention leaves stack cleanup up to the callee. Either mark your function as extern(C) or use leave ret 16 The second option might not be portable across all currently available compilers though. Hi Timon, Works

Re: asm stackframe question

2012-04-08 Thread Stefan
On Saturday, 7 April 2012 at 23:50:42 UTC, bearophile wrote: Use the naked attribute and do it all by yourself? Then I would also have to do the throw a) fully by myself (with mangling, etc), or b) at least get the stack frame in order so that the throw finds the stack the way it expects...

DMD/Windows: Inspect generated ASM?

2012-04-08 Thread Stefan
Hi all, Which is the most convenient way to have a look at the ASM code generated by Win-dmd? Unlike gdc, dmd it has no -S option, so I guess I will have to disassemble .obj files. Any good tools for this (link)? So far I only found old .obj tools from the 90s on the web... Thanks,

Re: DMD/Windows: Inspect generated ASM?

2012-04-08 Thread dennis luehring
ida 5.0 freeware http://www.hex-rays.com/products/ida/support/download_freeware.shtml Am 08.04.2012 14:42, schrieb Stefan: Hi all, Which is the most convenient way to have a look at the ASM code generated by Win-dmd? Unlike gdc, dmd it has no -S option, so I guess I will have to disassemble

Re: string concatenation

2012-04-08 Thread bearophile
dnewbie: string s = toUTF8(v) ~ , world!; MessageBoxA(null, s.toStringz, myapp, MB_OK); return 0; } I suggest to compile all your code with -property plus -w (or -wi), unless you have some specific needs to not do it. Bye, bearophile

Re: DMD/Windows: Inspect generated ASM?

2012-04-08 Thread Andrej Mitrovic
On 4/8/12, Stefan ste...@schuerger.com wrote: Any good tools for this (link)? So far I only found old .obj tools from the 90s on the web... I use objconv. http://www.agner.org/optimize/#objconv I use this batch script to disasm an .obj file and open the .asm file: @echo off setlocal

Re: GC-less tutorial?

2012-04-08 Thread Tove
On Saturday, 7 April 2012 at 17:31:02 UTC, Artur Skawina wrote: On 04/07/12 17:25, Tove wrote: Hi, are there any good tutorials for using D totally without GC, detailing some common pitfalls? One thing on my wishlist would be a way to detect accidental GC allocations resulting from

Re: DMD/Windows: Inspect generated ASM?

2012-04-08 Thread bearophile
Stefan: Unlike gdc, dmd it has no -S option, I'd like that. This seems a nice enhancement request for you to add in Bugzilla. Bye, bearophile

Re: Operator Overloading : opOpAssign

2012-04-08 Thread Timon Gehr
On 04/08/2012 07:56 PM, Eyyub wrote: Hai, I would to know how to overload this operator and why I have this error at compile-time : http://paste.pocoo.org/show/vlfSSekGLCAriCJpiZvp/ Thanks a lot. Try void opOpAssign(string op)(const Matrix other) if(op == +) I think the fact that

Re: Operator Overloading : opOpAssign

2012-04-08 Thread Eyyub
On Sunday, 8 April 2012 at 18:05:58 UTC, Timon Gehr wrote: On 04/08/2012 07:56 PM, Eyyub wrote: Hai, I would to know how to overload this operator and why I have this error at compile-time : http://paste.pocoo.org/show/vlfSSekGLCAriCJpiZvp/ Thanks a lot. Try void opOpAssign(string

Re: string concatenation

2012-04-08 Thread dnewbie
On Sunday, 8 April 2012 at 05:27:50 UTC, Jonathan M Davis wrote: On Sunday, April 08, 2012 07:08:09 dnewbie wrote: I have a wchar[] and I want to convert it to UTF8 then append a string. This is my code. import std.c.windows.windows; import std.string; import std.utf; int main() {

Re: Operator Overloading : opOpAssign

2012-04-08 Thread Artur Skawina
On 04/08/12 20:50, Eyyub wrote: On Sunday, 8 April 2012 at 18:05:58 UTC, Timon Gehr wrote: On 04/08/2012 07:56 PM, Eyyub wrote: Hai, I would to know how to overload this operator and why I have this error at compile-time : http://paste.pocoo.org/show/vlfSSekGLCAriCJpiZvp/ Thanks a lot.

Re: Operator Overloading : opOpAssign

2012-04-08 Thread Eyyub
Ho, if I replace a+=b; by a.opOpAssign!+(b); it works...why ?

Re: Operator Overloading : opOpAssign

2012-04-08 Thread Eyyub
arthur: It still does not work to, I think that is a bug.

Re: Operator Overloading : opOpAssign

2012-04-08 Thread Eyyub
It works with : http://paste.pocoo.org/show/4oIhMg5eBdUoirhk5iYS/ Thanks for all, kiss !

<    1   2   3   >