Re: Better lambdas!!!!!!!!!!

2015-09-12 Thread Prudence via Digitalmars-d
On Saturday, 12 September 2015 at 10:44:05 UTC, Pierre Krafft wrote: On Saturday, 12 September 2015 at 03:32:51 UTC, Prudence wrote: On Saturday, 12 September 2015 at 02:13:11 UTC, Pierre Krafft wrote: On Saturday, 12 September 2015 at 01:03:54 UTC, Prudence wrote: On Thursday, 10 September 201

Re: Better lambdas!!!!!!!!!!

2015-09-11 Thread Prudence via Digitalmars-d
On Saturday, 12 September 2015 at 02:13:11 UTC, Pierre Krafft wrote: On Saturday, 12 September 2015 at 01:03:54 UTC, Prudence wrote: On Thursday, 10 September 2015 at 18:02:36 UTC, Ali Çehreli wrote: On 09/10/2015 10:55 AM, Prudence wrote: > How bout this: > > void myfunc(double delegate(int i,

Re: Better lambdas!!!!!!!!!!

2015-09-11 Thread Prudence via Digitalmars-d
On Thursday, 10 September 2015 at 18:02:36 UTC, Ali Çehreli wrote: On 09/10/2015 10:55 AM, Prudence wrote: > How bout this: > > void myfunc(double delegate(int i, int z, float f)) {} > > > myfunc((int i, int z, float f) { return i*z*f; } } > > vs > > myfunc({ return i*z*f; }) // Names of pa

Better lambdas!!!!!!!!!!

2015-09-10 Thread Prudence via Digitalmars-d
How bout this: void myfunc(double delegate(int i, int z, float f)) {} myfunc((int i, int z, float f) { return i*z*f; } } vs myfunc({ return i*z*f; }) // Names of parameters are inferred from signature. by specifying the parameter names in the signature, we don't have to specify the

Re: Member function pointers

2015-09-09 Thread Prudence via Digitalmars-d
On Tuesday, 27 May 2014 at 12:21:40 UTC, d coder wrote: https://github.com/D-Programming-Language/dmd/pull/3181 Daniel asked me to use this. And it works. Use something like: union U { void delegate(int) dg; struct { void* ptr; void function(int) funcptr; } } U u; u.dg = dg; u.

Re: AST like coding syntax. Easy upgrade!

2015-09-06 Thread Prudence via Digitalmars-d
On Sunday, 6 September 2015 at 20:38:44 UTC, Adam D. Ruppe wrote: On Sunday, 6 September 2015 at 20:22:23 UTC, Zoadian wrote: obviously X has to be a compiletime js->d compiler. Just a fun fact: my script.d's interpreter is itself CTFEable in modern dmd! import arsd.script; void main() {

Re: AST like coding syntax. Easy upgrade!

2015-09-06 Thread Prudence via Digitalmars-d
On Sunday, 6 September 2015 at 20:22:23 UTC, Zoadian wrote: On Sunday, 6 September 2015 at 19:32:58 UTC, Prudence wrote: template X(Y) { string X = Y.stringof; } [...] as you'd have to write a parser for other languages why not just use strings? you can already do this: template X

AST like coding syntax. Easy upgrade!

2015-09-06 Thread Prudence via Digitalmars-d
template X(Y) { string X = Y.stringof; } auto s = X({int 3;}) Of course, doesn't work!! But having the ability to pass code that isn't contained in a string is very useful!! 1. A new code keyword, similar to alias. Can only be used as template parameters. If you are worried about b

Re: Bug in logger

2015-09-04 Thread Prudence via Digitalmars-d
On Friday, 4 September 2015 at 01:00:24 UTC, Mike Parker wrote: On Thursday, 3 September 2015 at 23:09:18 UTC, Prudence wrote: \..\..\src\phobos\std\experimental\logger\core.d(1784): Error: static variable stdLoggerThreadLogger cannot be read at compile time I'm trying to use the logger in a

Error reporting is terrible

2015-09-03 Thread Prudence via Digitalmars-d
After being away from D and deciding to test the idea of writing a commercial app in it, There were 2 big things that have jumped out at me: 1. The setup is a much compared to most modern day compilers and software. While VS is huge, obviously has a ton of money behind it, it installs without

Re: A better way of managing backwards compatibility?

2015-09-03 Thread Prudence via Digitalmars-d
On Thursday, 3 September 2015 at 21:03:05 UTC, qznc wrote: On Thursday, 3 September 2015 at 17:48:23 UTC, Prudence wrote: 2. Write a translation process that essentially "updates" the source code to work. Lucky you: https://github.com/Hackerpilot/dfix There you go!! It seems someone just as

Bug in logger

2015-09-03 Thread Prudence via Digitalmars-d
\..\..\src\phobos\std\experimental\logger\core.d(1784): Error: static variable stdLoggerThreadLogger cannot be read at compile time I'm trying to use the logger in a static this. It should work or, if it can't, quietly fail(not log anything)... and not break the program.

A better way of managing backwards compatibility?

2015-09-03 Thread Prudence via Digitalmars-d
Dealing with changes to standardized interfacing such as api function names, namespaces, file names/module names, etc is usually impossible to do because it severs the code written before the change from the new compiler. Most people think this is the way to do it and there is no, better, alter