Re: Programming Language for Games, part 3

2014-11-02 Thread Paulo Pinto via Digitalmars-d
On Sunday, 2 November 2014 at 22:11:51 UTC, bearophile wrote: Andrei Alexandrescu: Is that a best-effort kind of approach? If so, that would be pretty bad... I don't exactly know how that Rust macro works, sorry, I am still rather ignorant about Rust. Bye, bearophile There is a guide in

Re: toString refactor in druntime

2014-11-02 Thread Manu via Digitalmars-d
On 2 November 2014 04:15, Walter Bright via Digitalmars-d wrote: > On 11/1/2014 6:35 AM, Manu via Digitalmars-d wrote: >> >> I'd say that I'd be nervous to see druntime chockers full of templates...? > > > What's a chocker? It's Australian for 'lots'. > Why would templates make you nervous? The

Re: Program logic bugs vs input/environmental errors

2014-11-02 Thread Walter Bright via Digitalmars-d
On 11/2/2014 8:54 PM, Sean Kelly wrote: On Monday, 3 November 2014 at 03:29:05 UTC, Walter Bright wrote: I got into the habit of layering in asserts to stop the program when it went bad. "Do not pass go, do not collect $200" is the only strategy that has a hope of working under such systems. Th

Re: Program logic bugs vs input/environmental errors

2014-11-02 Thread Sean Kelly via Digitalmars-d
On Monday, 3 November 2014 at 03:29:05 UTC, Walter Bright wrote: I have considerable experience with what programs can do when continuing to run after a bug. This was on real mode DOS, which infamously does not seg fault on errors. It's AWFUL. I've had quite enough of having to reboot the o

Re: Program logic bugs vs input/environmental errors

2014-11-02 Thread Walter Bright via Digitalmars-d
On 11/2/2014 3:44 PM, Dicebot wrote: They have hardware protection against sharing memory between processes. It's a reasonable level of protection. reasonable default - yes reasoable level of protection in general - no No language can help when that is the requirement. 1. very few processes

Re: toString refactor in druntime

2014-11-02 Thread Walter Bright via Digitalmars-d
On 11/2/2014 3:57 PM, Dicebot wrote: On Saturday, 1 November 2014 at 17:50:33 UTC, Walter Bright wrote: It is not the same thing as ref/out buffer argument. Don't understand your comment. Steven comment has mentioned two things about Tango approach - using stack buffer as initial buffer and

Re: `alias newSymbol = existingSymbol` or `alias existingSymbol newSymbol`

2014-11-02 Thread David Nadlinger via Digitalmars-d
On Tuesday, 28 October 2014 at 08:29:22 UTC, Jonathan M Davis via Digitalmars-d wrote: I see no reason to say anything about the alias syntax in the style guide. Consistency, and thus less confusion/mental overhead. I don't think that you'll be able to make a strong case for "Either it should

Re: bug in assigning to dynamic array element

2014-11-02 Thread ketmar via Digitalmars-d
On Sun, 02 Nov 2014 09:25:54 -0800 Dan Olson via Digitalmars-d wrote: > Like D, Java is LTR evaluation for assignment, and I think C# too. A > similar situation to OP code can be created in Java by reassigning an > array reference in saveIt(). what i'm talking about is that implicit changing of

Re: toString refactor in druntime

2014-11-02 Thread Dicebot via Digitalmars-d
On Saturday, 1 November 2014 at 17:50:33 UTC, Walter Bright wrote: It is not the same thing as ref/out buffer argument. Don't understand your comment. Steven comment has mentioned two things about Tango approach - using stack buffer as initial buffer and extensive usage of ref parameters fo

Re: Program logic bugs vs input/environmental errors

2014-11-02 Thread Dicebot via Digitalmars-d
On Sunday, 2 November 2014 at 17:53:45 UTC, Walter Bright wrote: On 11/2/2014 3:48 AM, Dicebot wrote: On Saturday, 1 November 2014 at 15:02:53 UTC, H. S. Teoh via Digitalmars-d wrote: Which is exactly the statement I call wrong. With current OSes processes aren't decoupled units at all - it is

Re: Programming Language for Games, part 3

2014-11-02 Thread Paolo Invernizzi via Digitalmars-d
On Sunday, 2 November 2014 at 22:02:05 UTC, Andrei Alexandrescu wrote: On 11/2/14 2:11 AM, Paolo Invernizzi wrote: On Sunday, 2 November 2014 at 01:28:15 UTC, H. S. Teoh via Digitalmars-d wrote: 1) Compile-time verification of format arguments -- passing the wrong number of arguments or argu

[OT] Swift and C

2014-11-02 Thread Paulo Pinto via Digitalmars-d
A 30 minute presentation done at NSSpain by Mike Ash, on how to do C style unsafe programming with Swift, http://vimeo.com/107707576 -- Paulo

Re: Programming Language for Games, part 3

2014-11-02 Thread H. S. Teoh via Digitalmars-d
On Sun, Nov 02, 2014 at 12:49:47PM -0800, Andrei Alexandrescu via Digitalmars-d wrote: > On 11/1/14 6:25 PM, bearophile wrote: [...] > >And D writeln is not verified at compile-time, this is silly for a > >language that tries to be reliable. > > Wasn't there a pull request that allowed `writef!"%

Re: Programming Language for Games, part 3

2014-11-02 Thread bearophile via Digitalmars-d
Andrei Alexandrescu: Is that a best-effort kind of approach? If so, that would be pretty bad... I don't exactly know how that Rust macro works, sorry, I am still rather ignorant about Rust. Bye, bearophile

Re: Errors when compiling

2014-11-02 Thread Rikki Cattermole via Digitalmars-d
On 3/11/2014 6:33 a.m., James wrote: Hello, I want to start using D for game development instead of C and C++. This is my code : ** import std.stdio; import glfw3; void main() { if(!glfwInit()) { write

Re: Programming Language for Games, part 3

2014-11-02 Thread Andrei Alexandrescu via Digitalmars-d
On 11/2/14 2:11 AM, Paolo Invernizzi wrote: On Sunday, 2 November 2014 at 01:28:15 UTC, H. S. Teoh via Digitalmars-d wrote: 1) Compile-time verification of format arguments -- passing the wrong number of arguments or arguments of mismatching type will force compilation failure. Currently, it wi

Re: std.experimental.logger formal review round 3

2014-11-02 Thread Dicebot via Digitalmars-d
On Sunday, 2 November 2014 at 18:42:20 UTC, David Nadlinger wrote: Imagine somebody has a type that cannot be @trusted because of whatever reason. Maybe because it's legacy code, maybe it uses resources it does not manage, … If you forcibly make logf @safe, then this type cannot be used with lo

Re: Errors when compiling

2014-11-02 Thread tcak via Digitalmars-d
On Sunday, 2 November 2014 at 17:36:37 UTC, James wrote: On Sunday, 2 November 2014 at 17:33:09 UTC, James wrote: It's telling me that the libraries are in an invalid format. How can I get the correct ones ? I got those from the GLFW website dmd -m64 main.d glfw3.d opengl32.lib glfw3.lib Y

Re: Programming Language for Games, part 3

2014-11-02 Thread Andrei Alexandrescu via Digitalmars-d
On 11/1/14 6:48 PM, H. S. Teoh via Digitalmars-d wrote: While writefln can be improved (Andrei has preapproved my enhancement request to support compile-time format string, for example), there's no way to make such improvements to GCC's format checking short of modifying the compiler itself. Oh

Re: please review site update

2014-11-02 Thread Andrei Alexandrescu via Digitalmars-d
On 11/1/14 5:46 PM, Andrei Alexandrescu wrote: https://github.com/D-Programming-Language/dlang.org/pull/687 We need it to fix the site build. Thanks! Andrei FYI site is up to date now. I've had to disable dpl-docs generation because it currently doesn't work. -- Andrei

Re: Programming Language for Games, part 3

2014-11-02 Thread Andrei Alexandrescu via Digitalmars-d
On 11/1/14 6:25 PM, bearophile wrote: Walter Bright: D has writefln which does not have printf's issues. There's no reason to add a feature for printf. The feature we are talking about is not just for D writeln, as I've tried to explain several times. Well maybe then it's time to reassess w

Re: Programming Language for Games, part 3

2014-11-02 Thread Meta via Digitalmars-d
On Sunday, 2 November 2014 at 20:12:17 UTC, bearophile wrote: Perhaps a good enough FlagsEnum can be implemented with pure D library code. https://github.com/D-Programming-Language/phobos/pull/2058

Re: Programming Language for Games, part 3

2014-11-02 Thread Walter Bright via Digitalmars-d
On 11/2/2014 12:12 PM, bearophile wrote: I think the free mixing of signed and unsigned integral values is not a good idea in D. It's simply not workable to put a wall between them. Every proposal for it has entailed various unfortunate, ugly, and arbitrary consequences. Languages like Java

Re: Programming Language for Games, part 3

2014-11-02 Thread bearophile via Digitalmars-d
Walter Bright: Why aren't you using Ada if this is critical to you? (I'm not being sarcastic, this is a fair question.) It's not critical... Ada is not fun, too much new stuff to learn and to adapt to, and I can't influence Ada evolution in any way. My hope for preferred future system langua

Re: DIP66 v1.1 (Multiple) alias this.

2014-11-02 Thread Sativa via Digitalmars-d
class A : B { B b; alias b this; //Error: super type (B) always hides "aliasthised" type B because base classes should be processed before alias this types. } This isn't an error? Just because A inherits B doesn't mean that the alias is wrong? e.g., If you have class A1 { B b; alia

Re: std.experimental.logger formal review round 3

2014-11-02 Thread David Nadlinger via Digitalmars-d
On Sunday, 2 November 2014 at 18:29:09 UTC, Dicebot wrote: In my opinion inference is better choice for small building blocks (like algorithms). For complete system like logging API forcing @safe makes more sense as whatever its internals are, exposed API should never be @system This isn't ab

Re: std.experimental.logger formal review round 3

2014-11-02 Thread Dicebot via Digitalmars-d
I don't recall off the top of my head some non-template innards actually might require @safe, but apart from that, why not just leave the job to template attribute inference entirely? If somebody wants to log a type with a @system toString in non-@safe code, why not just let them? David I

Re: Programming Language for Games, part 3

2014-11-02 Thread Walter Bright via Digitalmars-d
On 11/2/2014 5:44 AM, bearophile wrote: It happens often enough to justify a similar feature in Ada2012. (This is the main point of this whole discussion. The other parts of this answer are less important). Why aren't you using Ada if this is critical to you? (I'm not being sarcastic, this is

Re: std.experimental.logger formal review round 3

2014-11-02 Thread David Nadlinger via Digitalmars-d
On Sunday, 2 November 2014 at 13:06:24 UTC, Dicebot wrote: I had initial go at cleaning safety attributes : https://github.com/Dicebot/phobos/tree/logger-fix-trust It still needs one druntime PR merged (https://github.com/D-Programming-Language/druntime/pull/1009) to be done properly but shou

Re: Programming Language for Games, part 3

2014-11-02 Thread Ary Borenszweig via Digitalmars-d
On 11/1/14, 8:31 AM, bearophile wrote: Third part of the "A Programming Language for Games", by Jonathan Blow: https://www.youtube.com/watch?v=UTqZNujQOlA Discussions: http://www.reddit.com/r/programming/comments/2kxi89/jonathan_blow_a_programming_language_for_games/ His language seems to disa

Re: Program logic bugs vs input/environmental errors

2014-11-02 Thread Walter Bright via Digitalmars-d
On 11/2/2014 3:48 AM, Dicebot wrote: On Saturday, 1 November 2014 at 15:02:53 UTC, H. S. Teoh via Digitalmars-d wrote: Which is exactly the statement I call wrong. With current OSes processes aren't decoupled units at all - it is all about feature set you stick to. Same with any other units. T

Re: Errors when compiling

2014-11-02 Thread James via Digitalmars-d
On Sunday, 2 November 2014 at 17:33:09 UTC, James wrote: Hello, I want to start using D for game development instead of C and C++. This is my code : ** import std.stdio; import glfw3; void main() { if(!glfwIni

Errors when compiling

2014-11-02 Thread James via Digitalmars-d
Hello, I want to start using D for game development instead of C and C++. This is my code : ** import std.stdio; import glfw3; void main() { if(!glfwInit()) { writeln("Could not start GLFW3"); } GLFWwi

Re: bug in assigning to dynamic array element

2014-11-02 Thread Dan Olson via Digitalmars-d
Like D, Java is LTR evaluation for assignment, and I think C# too. A similar situation to OP code can be created in Java by reassigning an array reference in saveIt().

Re: DIP66 v1.1 (Multiple) alias this.

2014-11-02 Thread IgorStepanov via Digitalmars-d
And there is dispute about is expression: see http://forum.dlang.org/thread/ubafmwvxwtolhmnxb...@forum.dlang.org?page=5

DIP66 v1.1 (Multiple) alias this.

2014-11-02 Thread IgorStepanov via Digitalmars-d
http://wiki.dlang.org/DIP66 I've applied some changes to it, however there are still some unresolved questions. Here's my destruction: * "symbol can be a field or a get-property (method annotated with @property and taking zero parameters)." -> actually: (a) the @property annotation is not

Re: Programming Language for Games, part 3

2014-11-02 Thread ponce via Digitalmars-d
On Saturday, 1 November 2014 at 11:31:32 UTC, bearophile wrote: Third part of the "A Programming Language for Games", by Jonathan Blow: https://www.youtube.com/watch?v=UTqZNujQOlA Discussions: http://www.reddit.com/r/programming/comments/2kxi89/jonathan_blow_a_programming_language_for_games/

Re: Programming Language for Games, part 3

2014-11-02 Thread bearophile via Digitalmars-d
Walter Bright: I don't see the use cases, in mine or other code. Designing a language feature around printf is a mistake. I agree. Let's talk about other use cases. I've considered the feature, and looked at code. It just doesn't happen very often. I have written plenty of D code (perhaos

Re: The cost of write barriers

2014-11-02 Thread Paulo Pinto via Digitalmars-d
On Sunday, 2 November 2014 at 08:48:46 UTC, Jonathan Barnard wrote: The upcoming version 1.4 of Go uses write barriers in preparation for the future implementation of a concurrent and generational GC. On the mailing list thread discussing the beta (https://groups.google.com/forum/#!topic/golang

Re: The cost of write barriers

2014-11-02 Thread Paulo Pinto via Digitalmars-d
On Sunday, 2 November 2014 at 13:13:17 UTC, Paulo Pinto wrote: On Sunday, 2 November 2014 at 08:48:46 UTC, Jonathan Barnard wrote: The upcoming version 1.4 of Go uses write barriers in preparation for the future implementation of a concurrent and generational GC. On the mailing list thread disc

Re: std.experimental.logger formal review round 3

2014-11-02 Thread Dicebot via Digitalmars-d
I had initial go at cleaning safety attributes : https://github.com/Dicebot/phobos/tree/logger-fix-trust It still needs one druntime PR merged (https://github.com/D-Programming-Language/druntime/pull/1009) to be done properly but should be ready for destruction. David snipet results in this

Re: The cost of write barriers

2014-11-02 Thread Araq via Digitalmars-d
Would such an implementation also be possible in a language like Go or D with internal/'thin' pointers? Last time I thought about it, card marking is indeed the only write barrier that is not affected by interior pointers. I could be totally wrong though.

Re: module keyword with curly brackets

2014-11-02 Thread Jonathan M Davis via Digitalmars-d
On Saturday, November 01, 2014 18:57:09 H. S. Teoh via Digitalmars-d wrote: > Jonathan was also reportedly working on breaking up std.datetime into > manageable pieces, but it's been a long time and so far it seems to have > been far easier said than done. Breaking it up isn't all that hard, just

Re: Program logic bugs vs input/environmental errors

2014-11-02 Thread Dicebot via Digitalmars-d
On Saturday, 1 November 2014 at 15:02:53 UTC, H. S. Teoh via Digitalmars-d wrote: I never said "component" == "process". All I said was that at the OS level, at least with current OSes, processes are the smallest unit that is decoupled from each other. Which is exactly the statement I call wr

Re: The cost of write barriers

2014-11-02 Thread Jonathan Barnard via Digitalmars-d
On Sunday, 2 November 2014 at 10:30:21 UTC, Araq wrote: And I think these are meaningless results. You can see here for instance what a write barrier can look like: http://psy-lob-saw.blogspot.de/2014/10/the-jvm-write-barrier-card-marking.html Would such an implementation also be possible i

Re: The cost of write barriers

2014-11-02 Thread Araq via Digitalmars-d
On Sunday, 2 November 2014 at 08:48:46 UTC, Jonathan Barnard wrote: The upcoming version 1.4 of Go uses write barriers in preparation for the future implementation of a concurrent and generational GC. On the mailing list thread discussing the beta (https://groups.google.com/forum/#!topic/golang

Re: std.experimental.logger formal review round 3

2014-11-02 Thread Dicebot via Digitalmars-d
On Sunday, 2 November 2014 at 00:29:10 UTC, Jakob Ovrum wrote: On Saturday, 1 November 2014 at 17:35:37 UTC, David Nadlinger wrote: There is still a critical issue with std.experimental.logger that would prevent it from being merged right now: The abuse of @trusted all over the code. Thank yo

Re: Programming Language for Games, part 3

2014-11-02 Thread Paolo Invernizzi via Digitalmars-d
On Sunday, 2 November 2014 at 01:28:15 UTC, H. S. Teoh via Digitalmars-d wrote: 1) Compile-time verification of format arguments -- passing the wrong number of arguments or arguments of mismatching type will force compilation failure. Currently, it will compile successfully but fail at runt

The cost of write barriers

2014-11-02 Thread Jonathan Barnard via Digitalmars-d
The upcoming version 1.4 of Go uses write barriers in preparation for the future implementation of a concurrent and generational GC. On the mailing list thread discussing the beta (https://groups.google.com/forum/#!topic/golang-nuts/7VAcfULjiB8), a few people note speed reductions of 30-50% in

Re: Programming Language for Games, part 3

2014-11-02 Thread via Digitalmars-d
On Sunday, 2 November 2014 at 08:22:08 UTC, Walter Bright wrote: 10 to 50 times slower is not a solution. If your app can stand such a degradation, it would be better off written in Python. If there was a practical solution for C, it likely would have been incorporated into clang and gcc. Pyt

Re: Compiling with -m64 on Windows uses wrong link location

2014-11-02 Thread Rainer Schuetze via Digitalmars-d
On 01.11.2014 20:00, Josh wrote: I only have 1 sc.ini, and -v showed the correct path. Setting the LINKCMD64 variable in sc.ini fixed the issue, although it seems kind of redundant as I copied LINKCMD and just added 64: ; Windows installer uncomments the version detected ;VC2013 LINKCMD=%VCINS

Re: Programming Language for Games, part 3

2014-11-02 Thread Walter Bright via Digitalmars-d
On 11/2/2014 12:06 AM, "Ola Fosheim Grøstad" " wrote: On Sunday, 2 November 2014 at 06:39:14 UTC, Walter Bright wrote: This is not a solution. C has successfully resisted all attempts to add bounds checking. That was a student project, but the paper presented an overview of techniques which is

Re: 'dmd' is not recognized as an internal or external command

2014-11-02 Thread Rainer Schuetze via Digitalmars-d
On 02.11.2014 00:09, Teak wrote: On Tuesday, 15 April 2014 at 13:59:31 UTC, Capture_A_Lag wrote: I don't know what I have done, but everything works good now. Thanks everybody for help! Hi, Im having the same problem you had trying to run a d language project...I keep getting the following e

Re: Programming Language for Games, part 3

2014-11-02 Thread via Digitalmars-d
On Sunday, 2 November 2014 at 08:39:26 UTC, Ola Fosheim Grøstad wrote: There are also some proprietary C compilers for embedded programming that claim to support bound checks, but I don't know how far they go or if they require language extensions/restrictions. Btw, related to this is the eff

Re: Programming Language for Games, part 3

2014-11-02 Thread via Digitalmars-d
On Sunday, 2 November 2014 at 07:29:25 UTC, Paulo Pinto wrote: The amount of money that went into such (bad) design decision... And it won't stop bleeding so long C and C++ exist. Yes, that is true (if we ignore esoteric C dialects that add safer features). Ada is a better solution if you wan

Re: Programming Language for Games, part 3

2014-11-02 Thread Paulo Pinto via Digitalmars-d
Am 02.11.2014 um 02:23 schrieb "Ola Fosheim =?UTF-8?B?R3LDuHN0YWQi?= ": More papers on C bounds checking: http://llvm.org/pubs/2006-05-24-SAFECode-BoundsCheck.html Bounds checking on flight control software for Mars expedition: http://ti.arc.nasa.gov/m/profile/ajvenet/pldi04.pdf The amoun

Re: Programming Language for Games, part 3

2014-11-02 Thread via Digitalmars-d
On Sunday, 2 November 2014 at 06:39:14 UTC, Walter Bright wrote: This is not a solution. C has successfully resisted all attempts to add bounds checking. That was a student project, but the paper presented an overview of techniques which is why I linked to it. A realistic solution is probably