Re: D's Destructors are What Scott Meyers Warned Us About

2018-05-27 Thread Mike Franklin via Digitalmars-d
On Sunday, 27 May 2018 at 16:06:21 UTC, 12345swordy wrote: You are replacing runtime typeinfo with compiletime templates. Unless you can guarantee that the type information won't change during runtime, you are going to have a hard time. Read this thread for context

Re: DIP 1012--Attributes--Preliminary Review Round 1

2018-05-27 Thread Mike Franklin via Digitalmars-d
On Thursday, 27 July 2017 at 14:44:23 UTC, Mike Parker wrote: DIP 1012 is titled "Attributes". https://github.com/dlang/DIPs/blob/master/DIPs/DIP1012.md All review-related feedback on and discussion of the DIP should occur in this thread. The review period will end at 11:59 PM ET on August

Re: D's Destructors are What Scott Meyers Warned Us About

2018-05-27 Thread Mike Franklin via Digitalmars-d
On Friday, 25 May 2018 at 23:47:33 UTC, sarn wrote: That std.signals code that Steven filed a bug report for is example of why we can't just fix the behaviour, though. If we just fixed __dtor/__xdtor, any code that used std.signals would start having ugly bugs at run time. I think that

Re: Getter an lvalue and cannot be modified

2018-05-27 Thread Mike Franklin via Digitalmars-d-learn
On Sunday, 27 May 2018 at 09:23:09 UTC, IntegratedDimensions wrote: C[] c; @property C[] get() { return c; } get ~= something; errors out, yet auto q = get; q ~= something; is fine. Why is D thinking that ~= is being applied to get, the function, rather than what it returns? Also When

Re: D's Destructors are What Scott Meyers Warned Us About

2018-05-27 Thread Mike Franklin via Digitalmars-d
On Wednesday, 23 May 2018 at 19:05:38 UTC, Manu wrote: For my money it would be: destroy() <- just destroy reset() <- destroy and re-init Or something like that. Maybe: class.destruct(); <- destroy without init? Yeah that. I'll make a PR! I had an in-depth discussion with Andrei about this

Re: Draft for DIP concerning destroy is up.

2018-05-25 Thread Mike Franklin via Digitalmars-d
On Friday, 25 May 2018 at 20:08:23 UTC, 12345swordy wrote: https://github.com/dlang/DIPs/pull/120 Feedback would be very appreciated. I was under the impression that Andrei's ProtoObject was supposed to remedy that: https://forum.dlang.org/post/pa1lg6$1lud$1...@digitalmars.com Mike

Re: Ideas for students' summer projects

2018-05-25 Thread Mike Franklin via Digitalmars-d
On Friday, 25 May 2018 at 12:23:35 UTC, Seb wrote: I just gave converting the DMD Make build script to D a quick shot and it doesn't look too complicated: Very Nice! Many thumbs up! And, welcome back! Mike

Conditionally set nothrow: for a block of code.

2018-05-24 Thread Mike Franklin via Digitalmars-d-learn
I'm trying to find a way to declare a block of code `nothrow:` when compiling with -betterC, but not `nothrow` when not compiling with -betterC. The solution is needed for this PR: https://github.com/dlang/druntime/pull/2184/files#r188627707 Attempt #1 -- void test() { }

Re: Ideas for students' summer projects

2018-05-24 Thread Mike Franklin via Digitalmars-d
On Thursday, 24 May 2018 at 18:08:35 UTC, Patrick Schluter wrote: As a contrived illustration, take a look at the code in https://github.com/dlang/druntime/blob/master/src/core/internal/string.d Those same features are also in Phobos. OT, numberDigits enters an infinite loop if radix == 1.

Re: Ideas for students' summer projects

2018-05-23 Thread Mike Franklin via Digitalmars-d
On Wednesday, 23 May 2018 at 14:25:44 UTC, Steven Schveighoffer wrote: How do I know I'm in a function? I don't think you're ever actually "in a function". The code is just data passing through the compiler. I think what your may be asking is "How do I know I'm working on a function?".

Re: Looks like Digital Mars C++ is on the front page of HN at the moment!

2018-05-23 Thread Mike Franklin via Digitalmars-d-announce
On Thursday, 24 May 2018 at 01:52:24 UTC, Nick Sabalausky (Abscissa) wrote: "C++, now powered by D" :) :) +1

Re: D's Destructors are What Scott Meyers Warned Us About

2018-05-23 Thread Mike Franklin via Digitalmars-d
On Wednesday, 23 May 2018 at 13:12:57 UTC, Steven Schveighoffer wrote: Hm.. that should be fixed. I don't see why we can't just do = T.init, we should at least be optimizing to this for small enough structs. The problem I ran into with this is that if you use T.init directly you end up

Contributing to DMD

2018-05-23 Thread Mike Franklin via Digitalmars-d
On Wednesday, 23 May 2018 at 14:25:44 UTC, Steven Schveighoffer wrote: Common questions I have when looking at dmd code: Where is this in the source? How do I know I'm in a function? How do I know I'm in a template? What module am I in? How do I know what has been run? What is the proper way

Re: run.dlang.io/ add scrolling window and possibly src line mapping

2018-05-23 Thread Mike Franklin via Digitalmars-d
On Wednesday, 23 May 2018 at 22:33:05 UTC, IntegratedDimensions wrote: Large code is produced for assmly and others and it would be nice if it had it's own window to scroll rather than scrolling the entire window. Also it would be nice if clicking on a line in the src scrolled to the proper

Re: Ideas for students' summer projects

2018-05-23 Thread Mike Franklin via Digitalmars-d
On Wednesday, 23 May 2018 at 03:43:16 UTC, Mike Franklin wrote: On Tuesday, 22 May 2018 at 16:27:05 UTC, Eduard Staniloiu wrote: Let the brainstorming begin! An LDC or GDC cross-compiler generator for the Raspberry Pi. There are already some instructions out there (e.g.

Re: Ideas for students' summer projects

2018-05-22 Thread Mike Franklin via Digitalmars-d
On Tuesday, 22 May 2018 at 16:27:05 UTC, Eduard Staniloiu wrote: Let the brainstorming begin! I've often wondered if D has the right features to implement a borrow-checker in the library. Something similar to this: https://www.youtube.com/watch?v=Lj1GppqNr8c

Re: Ideas for students' summer projects

2018-05-22 Thread Mike Franklin via Digitalmars-d
On Wednesday, 23 May 2018 at 04:58:17 UTC, rikki cattermole wrote: In essence a -betterC libc with wrapper functions for extern(D). I'd prefer to not even need to link in libc. I mean rewrite memcpy, memcmp, malloc, free, and realloc in D. Once those building blocks exist in D, everything

Re: Ideas for students' summer projects

2018-05-22 Thread Mike Franklin via Digitalmars-d
On Wednesday, 23 May 2018 at 04:17:19 UTC, Mike Franklin wrote: On Tuesday, 22 May 2018 at 16:27:05 UTC, Eduard Staniloiu wrote: Let the brainstorming begin! Try to replace some of the basic software building blocks (memcpy, memcmp, malloc, free, realloc) that are currently leveraged from

Re: Ideas for students' summer projects

2018-05-22 Thread Mike Franklin via Digitalmars-d
On Tuesday, 22 May 2018 at 16:27:05 UTC, Eduard Staniloiu wrote: Let the brainstorming begin! Try to replace some of the basic software building blocks (memcpy, memcmp, malloc, free, realloc) that are currently leveraged from the platform's C library with counterparts, and provide a D API

Re: Ideas for students' summer projects

2018-05-22 Thread Mike Franklin via Digitalmars-d
On Tuesday, 22 May 2018 at 16:27:05 UTC, Eduard Staniloiu wrote: Let the brainstorming begin! Building and running the DMD test suite on vanilla Windows is a pain. I never succeeded but it appears to require the user to first set up a posix environment and then battle environment

Re: Ideas for students' summer projects

2018-05-22 Thread Mike Franklin via Digitalmars-d
On Tuesday, 22 May 2018 at 16:27:05 UTC, Eduard Staniloiu wrote: Let the brainstorming begin! An LDC or GDC cross-compiler generator for the Raspberry Pi. There are already some instructions out there (e.g. http://d-land.sepany.de/einstieg-in-die-raspberry-pi-entwicklung-mit-ldc.html), but

Re: Ideas for students' summer projects

2018-05-22 Thread Mike Franklin via Digitalmars-d
On Tuesday, 22 May 2018 at 16:27:05 UTC, Eduard Staniloiu wrote: Let the brainstorming begin! I haven't looked into this myself, but I vaguely remember an ongoing problem with DMDs performance (especially memory usage) gradually degrading with time. I think it would be a nice exercise for

Re: Ideas for students' summer projects

2018-05-22 Thread Mike Franklin via Digitalmars-d
On Tuesday, 22 May 2018 at 16:27:05 UTC, Eduard Staniloiu wrote: Let the brainstorming begin! Fork newCTFE and bring it to completion: https://dlang.org/blog/2017/04/10/the-new-ctfe-engine/ Mike

Re: Ideas for students' summer projects

2018-05-22 Thread Mike Franklin via Digitalmars-d
On Tuesday, 22 May 2018 at 16:27:05 UTC, Eduard Staniloiu wrote: Let the brainstorming begin! Find a way to improve the performance of our CIs. See https://forum.dlang.org/post/mailman.1018.1526887297.29801.digitalmar...@puremagic.com The more time a PR is "green" the higher the

Re: Ideas for students' summer projects

2018-05-22 Thread Mike Franklin via Digitalmars-d
On Tuesday, 22 May 2018 at 16:27:05 UTC, Eduard Staniloiu wrote: Let the brainstorming begin! Get some help allocated to GDC. It seems progress on GDC has stalled for reasons I'm not quite sure of. I'm trying to help, but it's becoming more apparent that I'm not the right person for the

Re: Ideas for students' summer projects

2018-05-22 Thread Mike Franklin via Digitalmars-d
On Tuesday, 22 May 2018 at 16:27:05 UTC, Eduard Staniloiu wrote: Let the brainstorming begin! An apprentice for Walter. I think Walter needs an apprentice (or 10). Too much knowledge about D's design decisions, present, and future are locked up in his mind. He needs to be disseminating

Re: Ideas for students' summer projects

2018-05-22 Thread Mike Franklin via Digitalmars-d
On Tuesday, 22 May 2018 at 16:27:05 UTC, Eduard Staniloiu wrote: Let the brainstorming begin! Make WebAssembly a thing in D. See https://forum.dlang.org/post/ejplfelcqsvjmdvxt...@forum.dlang.org Currently C++ and Rust dominate that domain. D could kick some web asm there too. Mike

Re: Ideas for students' summer projects

2018-05-22 Thread Mike Franklin via Digitalmars-d
On Tuesday, 22 May 2018 at 16:27:05 UTC, Eduard Staniloiu wrote: Let the brainstorming begin! It might be useful for measuring D's progress if we had some kind of stats about D updated on a daily basis. This is the most useful page I know of at the moment:

Re: Ideas for students' summer projects

2018-05-22 Thread Mike Franklin via Digitalmars-d
On Tuesday, 22 May 2018 at 16:27:05 UTC, Eduard Staniloiu wrote: Let the brainstorming begin! I would like to see a dependency-less Phobos-like library that can be used by the DMD compiler, druntime, -betterC, and other runtime-less/phobos-less use cases. It would have no dependencies

Re: CI buildbots

2018-05-21 Thread Mike Franklin via Digitalmars-d
On Monday, 21 May 2018 at 07:21:31 UTC, Manu wrote: A few of those machines can build AND run the tests in 5-6 mintues. A lot under 10 minutes... Then there's a few that take 45+ minutes. Why are they in the pool? Is it really worth having 20 machines build the thing, especially when a few

Re: Need help with the dmd package on NixOS

2018-05-18 Thread Mike Franklin via Digitalmars-d
On Friday, 18 May 2018 at 10:28:37 UTC, Thomas Mader wrote: On Friday, 11 May 2018 at 04:27:20 UTC, Thomas Mader wrote: My suspicion about the switch to glibc 2.27 being the problem was wrong. I did a very timeconsuming bisection and found the problem commit to be the one which bumped binutils

Re: Help me please fix the bug

2018-05-18 Thread Mike Franklin via Digitalmars-d
On Friday, 18 May 2018 at 09:35:28 UTC, Majestio wrote: Also, I believe this is __lambda1: m_queue = () @trusted { return kqueue(); } (); Is `kqueue()` nothrow? You probably need to decorate that lambda with `nothrow`. (i.e. put a `nothrow` right after `@trusted`. Mike `kqueue()` is

Re: Help me please fix the bug

2018-05-18 Thread Mike Franklin via Digitalmars-d
On Friday, 18 May 2018 at 05:44:12 UTC, Majestio wrote: this() @safe nothrow { m_queue = () @trusted { return kqueue(); } (); m_events.length = 100; assert(m_queue >= 0, "Failed to create kqueue."); } Also, I believe this is __lambda1: m_queue = ()

Re: Help me please fix the bug

2018-05-18 Thread Mike Franklin via Digitalmars-d
On Friday, 18 May 2018 at 05:44:12 UTC, Majestio wrote: == log: == [majestio@freebsd ~/Projects/webapp]$ dub Performing "debug" build using /usr/local/bin/dmd for x86_64.

Re: Expression based contract syntax

2018-05-17 Thread Mike Franklin via Digitalmars-d
On Friday, 18 May 2018 at 05:28:10 UTC, Arun Chandrasekaran wrote: Has this been implemented in DMD master? So I was looking at the changelog[1] and tried to build the example, but it erred. https://github.com/dlang/dmd/blob/master/changelog/expression-based_contract_syntax.dd

Re: Arduino and D

2018-05-16 Thread Mike Franklin via Digitalmars-d
On Wednesday, 16 May 2018 at 08:48:26 UTC, Russel Winder wrote: Is D wthout Phobos useful for IoT or should one stick with C,Lua, and MicroPython? Is IoT an opportunity for D or is it a false direction given D is an x86/x86_64 oriented programming language? Using D for programming ARM

Re: DIP 1011 library alternative

2018-05-15 Thread Mike Franklin via Digitalmars-d
On Tuesday, 15 May 2018 at 22:26:54 UTC, Jonathan M Davis wrote: I _think_ that it only works if the function isn't templated. A PR to remove that limitation has been submitted at https://github.com/dlang/dmd/pull/8195, but once again, we're waiting on someone from the top to give it their

Re: Is D releasing too often?

2018-05-14 Thread Mike Franklin via Digitalmars-d
On Monday, 14 May 2018 at 07:20:48 UTC, Joakim wrote: There are obviously pros and cons to each pace, and this has been debated internally before, with one of the ldc devs again posting to the Internals mailing list today questioning the current speed. The post is here:

Re: property += operator

2018-05-10 Thread Mike Franklin via Digitalmars-d-learn
On Thursday, 10 May 2018 at 21:16:12 UTC, Jonathan M Davis wrote: IIRC, there's a DIP for trying to make += work with just getters and setters, but I don't know if we're ever going to see anything like it in the language. Yes, the DIP is here: https://github.com/dlang/DIPs/pull/97 It's

Re: `this` and nested structs

2018-05-10 Thread Mike Franklin via Digitalmars-d-learn
On Thursday, 10 May 2018 at 06:22:37 UTC, Jonathan M Davis wrote: Structs don't have that. Should they?

`this` and nested structs

2018-05-09 Thread Mike Franklin via Digitalmars-d-learn
Consider the following code: --- struct S { // intentionally not `static` struct SS { int y() { return x; } // Error: need `this` for `x` of type `int` } int x; SS ss; } void main() { S s; s.ss.y(); } --- If I change `return x;` to `return this.x;`

Re: Bugzilla & PR sprint on the first weekend of every month

2018-05-08 Thread Mike Franklin via Digitalmars-d
On Tuesday, 8 May 2018 at 18:48:15 UTC, Seb wrote: What do you guys think about having a dedicated "Bugzilla & PR sprint" at the first weekend of very month? We could organize this a bit by posting the currently "hot" bugs a few days ahead and also make sure that there are plenty of

Re: A bit more Emscripten

2018-05-08 Thread Mike Franklin via Digitalmars-d-announce
On Tuesday, 8 May 2018 at 08:53:36 UTC, Vladimir Panteleev wrote: I heard there was a bit of general interest on the subject, so would be interesting to hear about more potential use cases. I've been recently assigned the task of building a web-based Ladder Logic editor/compiler

Re: Using D without libphobos

2018-04-26 Thread Mike Franklin via Digitalmars-d
On Thursday, 26 April 2018 at 09:24:19 UTC, A. Nicholi wrote: So in a way, the D runtime is similar to libstdc++, providing implementations of runtime language features. I would argue that Phobos is more analogous to libstc++, but there are some language features in C++ that are implemented

Re: Using D without libphobos

2018-04-25 Thread Mike Franklin via Digitalmars-d
On Thursday, 26 April 2018 at 03:04:55 UTC, A. Nicholi wrote: I am working on a large cross-platform project, which will be written primarily in D, interfacing to C as necessary. To get finer control over memory safety, binary size, and use of the GC, we would like to disclude libphobos as a

Re: Warning on self assignment

2018-04-24 Thread Mike Franklin via Digitalmars-d-learn
On Wednesday, 25 April 2018 at 01:20:13 UTC, Mike Franklin wrote: It appears a bug has already been filed (https://issues.dlang.org/show_bug.cgi?id=11970). I'll see if I can fix it. https://github.com/dlang/dmd/pull/8208 We'll see what happens.

Re: Warning on self assignment

2018-04-24 Thread Mike Franklin via Digitalmars-d-learn
On Wednesday, 25 April 2018 at 01:08:46 UTC, Arun Chandrasekaran wrote: So I was telling my colleague that D would warn on self assignment, but found that I was wrong. https://run.dlang.io/is/HLhtek ``` module a; import std.stdio; void main() { string a; a = a; // Can the

Re: Warning on self assignment

2018-04-24 Thread Mike Franklin via Digitalmars-d-learn
On Wednesday, 25 April 2018 at 01:08:46 UTC, Arun Chandrasekaran wrote: So I was telling my colleague that D would warn on self assignment, but found that I was wrong. https://run.dlang.io/is/HLhtek ``` module a; import std.stdio; void main() { string a; a = a; // Can the

Re: dynamically allocating on the stack

2018-04-21 Thread Mike Franklin via Digitalmars-d-learn
On Sunday, 22 April 2018 at 00:41:34 UTC, Nicholas Wilson wrote: You're not using the C library version of it, the compiler does the stack space reservation inline for you. There is no way around this. I'm not convinced. I did some no-runtime testing and eventually found the implementation

Re: dynamically allocating on the stack

2018-04-21 Thread Mike Franklin via Digitalmars-d-learn
On Saturday, 21 April 2018 at 19:06:52 UTC, Steven Schveighoffer wrote: alloca is an intrinsic, and part of the language technically -- it has to be. From what I can tell `alloca` is only available in the platform's C standard library (actually for Linux it appears be part of libgcc as

Re: dynamically allocating on the stack

2018-04-21 Thread Mike Franklin via Digitalmars-d-learn
On Saturday, 21 April 2018 at 07:37:50 UTC, Mike Franklin wrote: Does D have some way to dynamically allocate on the stack? I'm looking for something roughly equivalent to the following C code. int doSomething(size_t len) { char stackBuffer[len + 1]; doSomethingElse(stackBuffer); }

dynamically allocating on the stack

2018-04-21 Thread Mike Franklin via Digitalmars-d-learn
Does D have some way to dynamically allocate on the stack? I'm looking for something roughly equivalent to the following C code. int doSomething(size_t len) { char stackBuffer[len + 1]; doSomethingElse(stackBuffer); } Thanks, Mike

Re: GDB + ddemangle

2018-04-20 Thread Mike Franklin via Digitalmars-d-announce
On Friday, 20 April 2018 at 10:36:25 UTC, drug wrote: 20.04.2018 13:03, Joakim пишет: You are aware that gdb has built-in support for demangling D for 3-4 years now? But how to enable it? It doesn't work out of box at least for me. I believe you enable it with `-demangle=dlang` The

Re: DIP 1013: The Deprecation Process -- Community Review Round 1

2018-04-18 Thread Mike Franklin via Digitalmars-d
On Wednesday, 18 April 2018 at 12:28:59 UTC, Jonathan M Davis wrote: > In order to facilitate on schedule deprecations, a comment > of the format @@@DEPRECATED_[version]@@@ should be added to > the top of the code to be removed/disabled. Is `[version]` the version in which the deprecation

Re: DIP 1013: The Deprecation Process -- Community Review Round 1

2018-04-18 Thread Mike Franklin via Digitalmars-d
On Monday, 2 April 2018 at 07:05:45 UTC, Mike Parker wrote: DIP 1013 is titled "The Deprecation Process". https://github.com/dlang/DIPs/blob/d8f6bfa1810c9774bd7d3b3dc6a7a6776ed5e17e/DIPs/DIP1013.md I've been thinking about the deprecation schedule being measure in terms of releases, and I

Re: #dbugfix 18493

2018-04-17 Thread Mike Franklin via Digitalmars-d
On Tuesday, 17 April 2018 at 12:13:06 UTC, Mike Franklin wrote: On Tuesday, 17 April 2018 at 05:33:53 UTC, Radu wrote: This is very odd, as the following compiles: --- struct S { this(this) { } ~this() { } } struct C { S s1; } --- If the scope failure would cause

Re: #dbugfix 18493

2018-04-17 Thread Mike Franklin via Digitalmars-d
On Tuesday, 17 April 2018 at 05:33:53 UTC, Radu wrote: This is very odd, as the following compiles: --- struct S { this(this) { } ~this() { } } struct C { S s1; } --- If the scope failure would cause this then I assume it would not work at all in any case.

Re: #dbugfix 18493

2018-04-16 Thread Mike Franklin via Digitalmars-d
On Tuesday, 17 April 2018 at 00:27:07 UTC, Nicholas Wilson wrote: It is odd though since void foo (){} extern(C) void main() { scope(exit) foo(); } compiles and runs with -betterC I believe `scope(exit)` is fine because it is basically try-finally, but `scope(failure)` won't work

Re: #dbugfix 18493

2018-04-16 Thread Mike Franklin via Digitalmars-d
On Monday, 16 April 2018 at 13:40:55 UTC, jmh530 wrote: On Monday, 16 April 2018 at 13:01:44 UTC, Radu wrote: A blocker for more advanced 'betterC' usage. https://issues.dlang.org/show_bug.cgi?id=18493 From what I can gather this appears to be caused by a `scope(failure)` statement

Re: Embedded Systems (STM32) LDC Absolute minimal runtime

2018-04-05 Thread Mike Franklin via Digitalmars-d
On Thursday, 5 April 2018 at 15:58:28 UTC, Cora Dias wrote: Hi...i am a new user here. Welcome! As per my observation as suggested above you need a minimal runtime implementation that implements the features of D that your code is using, some that your code is not using but is required by

Re: DIP 1013: The Deprecation Process -- Community Review Round 1

2018-04-05 Thread Mike Franklin via Digitalmars-d
On Monday, 2 April 2018 at 07:05:45 UTC, Mike Parker wrote: DIP 1013 is titled "The Deprecation Process". https://github.com/dlang/DIPs/blob/d8f6bfa1810c9774bd7d3b3dc6a7a6776ed5e17e/DIPs/DIP1013.md I think there should be some clarification on the stages of deprecation. For example,

Re: code-d 0.17.0 + serve-d 0.1.2

2018-04-03 Thread Mike Franklin via Digitalmars-d-announce
On Tuesday, 3 April 2018 at 23:50:24 UTC, Arredondo wrote: I could not get this to work for me in the past (I'm using Windows 10). I saw this announcement so I decided to try again. I have a little more experience to share... std.process.ProcessException@std\process.d(753): Failed to spawn

Re: code-d 0.17.0 + serve-d 0.1.2

2018-04-03 Thread Mike Franklin via Digitalmars-d-announce
On Tuesday, 3 April 2018 at 23:50:24 UTC, Arredondo wrote: I could not get this to work for me in the past (I'm using Windows 10). I saw this announcement so I decided to try again. I'm using it in Windows 10 right now, but I did have trouble trying to upgrade an existing installation. To

Re: [OT] Unity migrating parts of their engine from C++ into High Performace C# (HPC#)

2018-04-03 Thread Mike Franklin via Digitalmars-d
On Monday, 2 April 2018 at 18:54:28 UTC, 12345swordy wrote: Interesting that they are going the "No classes allowed" approach. It looks like the bullet points can be done in better c mode of D. I think you'll find Sarn's work on Xanthe quite interesting:

Re: Vtable for virtual functions in D

2018-04-02 Thread Mike Franklin via Digitalmars-d
On Wednesday, 7 March 2018 at 22:02:17 UTC, sarn wrote: When I wrote Xanthe a year ago, I rolled my own classes using alias this and explicit vtables: https://gitlab.com/sarneaud/xanthe/blob/master/src/game/rigid_body.d#L15 (I did this because normal D classes use the druntime library, and

Re: Vtable for virtual functions in D

2018-04-02 Thread Mike Franklin via Digitalmars-d
On Monday, 2 April 2018 at 07:02:07 UTC, sarn wrote: On Thursday, 8 March 2018 at 22:07:24 UTC, sarn wrote: On Thursday, 8 March 2018 at 04:37:08 UTC, Mike Franklin wrote: Nice! I was thinking about something almost exactly like this recently since 2.079.0 has features to further decouple

Re: understanding Auto-Test

2018-03-21 Thread Mike Franklin via Digitalmars-d
On Thursday, 22 March 2018 at 04:12:00 UTC, John Belmonte wrote: I'm still rather puzzled. My pull request remains with 8 tests pending after several hours. I can't find any confirmation on the pulls display https://auto-tester.puremagic.com/pulls.ghtml?projectid=1 that it intends to run

Re: understanding Auto-Test

2018-03-21 Thread Mike Franklin via Digitalmars-d
On Thursday, 22 March 2018 at 04:17:52 UTC, Mike Franklin wrote: Let's see what happens after the auto-tester starts testing it again. Note that it could be a while, as there are PRs that will be getting merged in the next 24 hours that will restart the test queue. Mike

Re: understanding Auto-Test

2018-03-21 Thread Mike Franklin via Digitalmars-d
On Thursday, 22 March 2018 at 01:46:08 UTC, John Belmonte wrote: I'm trying to understand why my pull request was queued in D2 Auto-Test for only 2 of 8 tests, with the remaining left in pending state. https://auto-tester.puremagic.com/pull-history.ghtml?projectid=1=1=8051 Since there

Re: #dbugfix 17592

2018-03-21 Thread Mike Franklin via Digitalmars-d
On Tuesday, 20 March 2018 at 21:27:53 UTC, 12345swordy wrote: This is very important to me as I am very interested in using the language for game development. Yes I know that it's marked as "Duplicated", but I strongly disagree as it is different enough to consider is own issue. Alex

Re: Bachelor level projects

2018-03-20 Thread Mike Franklin via Digitalmars-d
On Tuesday, 20 March 2018 at 14:44:39 UTC, Alexandru Jercaianu wrote: If there is anything on your wish list which matches the criteria above, feel free to share. There's also a lot of low-barrier-to-entry stuff in this project I created a while ago:

Re: Bachelor level projects

2018-03-20 Thread Mike Franklin via Digitalmars-d
On Tuesday, 20 March 2018 at 14:44:39 UTC, Alexandru Jercaianu wrote: Hello, At the Polytechnic University of Bucharest we are organizing a special program called CDL[1], where Bachelor students are mentored to make their first open source contributions. I think it's a great idea to involve

Re: #dbugfix Issue 5710

2018-03-19 Thread Mike Franklin via Digitalmars-d
On Tuesday, 20 March 2018 at 02:45:34 UTC, Jonathan M Davis wrote: IMHO, it would be _huge_ if this issue could be fixed. Mike Parker, I think that means +1.

Re: #dbugfix Issue 5710

2018-03-19 Thread Mike Franklin via Digitalmars-d
On Tuesday, 20 March 2018 at 02:28:21 UTC, Manu wrote: On 19 March 2018 at 17:17, Mike Franklin via Digitalmars-d <digitalmars-d@puremagic.com> wrote: On Tuesday, 20 March 2018 at 00:00:22 UTC, ciechowoj wrote: Digging out and old yet important issue. https://issues.dlang.org/show_b

Re: #dbugfix Issue 5710

2018-03-19 Thread Mike Franklin via Digitalmars-d
On Tuesday, 20 March 2018 at 00:00:22 UTC, ciechowoj wrote: Digging out and old yet important issue. https://issues.dlang.org/show_bug.cgi?id=5710 +1

Re: Question over C++ to D conversion

2018-03-11 Thread Mike Franklin via Digitalmars-d
On Monday, 12 March 2018 at 01:10:41 UTC, Richard wrote: There's a couple of outstanding things at the moment though The first is the use of BetterC, although from what I can tell DMD now has support for a minimal runtime feature as part of 2.079.0

Inner Classes vs. Inner Structs

2018-03-11 Thread Mike Franklin via Digitalmars-d-learn
This works: ``` class S { int n, m; int sum() { return n + m; } Inner!(sum) a; class Inner(alias f){ auto get() { return f(); } } } ``` This doesn't: ``` struct S { int n, m; int sum() { return n + m; } Inner!(sum) a; struct

Re: LDC / BetterC / _d_run_main

2018-03-09 Thread Mike Franklin via Digitalmars-d-learn
On Saturday, 10 March 2018 at 02:25:38 UTC, Richard wrote: Hi, I've been trying to see if I can get an mbed project to work with Dlang basically compiling D code for use on a Cortex-M Proccessor You might be interested in the following, if you're not already aware: *

Re: Generic Property Implementation

2018-03-09 Thread Mike Franklin via Digitalmars-d-learn
On Friday, 9 March 2018 at 14:46:04 UTC, Simen Kjærås wrote: This is the best I've come up with in the current language: struct S { int n; mixin property!("field", "get => this.n", "set => this.n = set"); } Not bad. Not good, but not bad either. Sadly, there are issues: 1) Wrong

Re: Generic Property Implementation

2018-03-08 Thread Mike Franklin via Digitalmars-d-learn
On Friday, 9 March 2018 at 01:22:15 UTC, Mike Franklin wrote: I would like to know if this can be improved to support the following: * binary assignment operators (e.g. +=) * unary assignment operators (e.g. ++) * @safe, @nogc, and -betterC compatible * at least as good code generation as

Re: Generic Property Implementation

2018-03-08 Thread Mike Franklin via Digitalmars-d-learn
On Tuesday, 20 February 2018 at 14:34:53 UTC, bauss wrote: Would there be a reason why this wouldn't be a good implementation? If so what and how could it be improved? Are there flaws in an implementation like this? [... snip ...] I am very interested in this as a potential alternative to

Re: VsCode tutorial

2018-03-07 Thread Mike Franklin via Digitalmars-d-learn
On Wednesday, 7 March 2018 at 21:39:09 UTC, Apocalypto wrote: Are there any tutorials about D in vscode? No that I know of. Which are the minimal plugins to install to have code completion, syntax highlighting and code formatting? I've been getting by with

Re: Vtable for virtual functions in D

2018-03-07 Thread Mike Franklin via Digitalmars-d
On Wednesday, 7 March 2018 at 22:02:17 UTC, sarn wrote: When I wrote Xanthe a year ago, I rolled my own classes using alias this and explicit vtables: https://gitlab.com/sarneaud/xanthe/blob/master/src/game/rigid_body.d#L15 (I did this because normal D classes use the druntime library, and

Re: Opt-in non-null class references?

2018-02-28 Thread Mike Franklin via Digitalmars-d
On Wednesday, 28 February 2018 at 13:43:37 UTC, SimonN wrote: Hi, Andrei said in 2014 that not-null-references should be the priority of 2014's language design, with consideration to make not-null the default. In case the code breakage is too high, this can be an opt-in compiler flag. You

Re: C++ launched its community survey, too

2018-02-27 Thread Mike Franklin via Digitalmars-d
On Tuesday, 27 February 2018 at 15:52:15 UTC, Andrei Alexandrescu wrote: https://isocpp.org/blog/2018/02/new-cpp-foundation-developer-survey-lite-2018-02 Andrei "If you could wave a magic wand and change one thing about any part of C++, what would it be, and how would that change help your

Re: can we un-deprecate .ptr on arrays in @safe code? cf issue 18529

2018-02-27 Thread Mike Franklin via Digitalmars-d
On Tuesday, 27 February 2018 at 08:43:32 UTC, Timothee Cour wrote: see rationale in https://issues.dlang.org/show_bug.cgi?id=18529 It looks like the actual deprecation was made with this PR: https://github.com/dlang/dmd/pull/5860 Meaning it's been deprecated for more than a year and a

Re: Beta 2.079.0

2018-02-23 Thread Mike Franklin via Digitalmars-d-announce
On Friday, 23 February 2018 at 09:18:33 UTC, Jacob Carlborg wrote: On 2018-02-19 11:49, Martin Nowak wrote: Glad to announce the first beta for the 2.079.0 release, ♥ to the 77 contributors for this release. The following is a regression that breaks DWT: extern (C) void foo(int) { } extern

Re: Game and GC

2018-02-22 Thread Mike Franklin via Digitalmars-d-learn
On Friday, 23 February 2018 at 01:54:07 UTC, Leonardo wrote: Hi, I'm new to language and games. Many people say that GC is bad and can slow down your project in some moments. What can happen if I create a game using D without worrying with memory management? (using full GC) Don't let the GC

Re: Tuts/Aritcles: Incrementasl C++-to-D conversion?

2018-02-21 Thread Mike Franklin via Digitalmars-d-learn
On Thursday, 22 February 2018 at 04:16:44 UTC, Nick Sabalausky (Abscissa) wrote: Are there any tutorials or articles out there for "getting started with converting a C++ codebase to D one module at a time?" Or at the very least: tips, tricks, lessions learned, from those who have come before.

Re: -libpath?

2018-02-20 Thread Mike Franklin via Digitalmars-d
On Tuesday, 6 February 2018 at 17:49:33 UTC, Jonathan Marler wrote: What do people think of adding an argument to DMD to add library search paths? Currently the only way I know how to do this would be via linker-specific flags, i.e. GCC: -L-L/usr/lib MSVC: -L-libpath:C:\mylibs OPTLINK:

Re: Beta 2.079.0

2018-02-20 Thread Mike Franklin via Digitalmars-d-announce
On Tuesday, 20 February 2018 at 08:46:02 UTC, meppl wrote: @"16.": https://dlang.org/changelog/2.079.0.html#minimal_runtime So, now someone could "easily" write his own memory managment for allocations who would be usually done by the default GC - e.g. classes? Easily? unlikely, but it's

Re: Beta 2.079.0

2018-02-19 Thread Mike Franklin via Digitalmars-d-announce
On Monday, 19 February 2018 at 18:50:47 UTC, Dukc wrote: Huh? Did I understand right? Just add an empty object.d into your project and --BetterC is now basically needless, plus the executable is most likely even smaller? Kindof, but not exactly. The -betterC switch still adds some nuance

Re: Status of @nogc with the runtime

2018-02-17 Thread Mike Franklin via Digitalmars-d
On Saturday, 17 February 2018 at 12:18:28 UTC, Peter Campbell wrote: I was checking the 2017 vision pages and was wondering why there hasn't been a 2018H1 vision page but also what the current status of being able to use D without a garbage collector is? There are a number of ways to use D

Re: OT: Photo of a single atom by David Nadlinger wins top prize

2018-02-14 Thread Mike Franklin via Digitalmars-d
On Wednesday, 14 February 2018 at 01:11:33 UTC, David Nadlinger wrote: On Tuesday, 13 February 2018 at 23:09:07 UTC, Ali Çehreli wrote: David (aka klickverbot) is a longtime D contributor […] … who is slightly surprised at the amount of media interest this has attracted. ;) David, this is

Re: The Expressive C++17 Coding Challenge in D

2018-02-14 Thread Mike Franklin via Digitalmars-d-announce
On Tuesday, 13 February 2018 at 23:35:36 UTC, Seb wrote: Someone revived the Expressive C++17 Coding Challenge thread today and I thought this is an excellent opportunity to revive my blog and finally write an article showing why I like D so much:

Re: Being Positive

2018-02-13 Thread Mike Franklin via Digitalmars-d
On Tuesday, 13 February 2018 at 14:17:00 UTC, Steven Schveighoffer wrote: On 2/12/18 11:29 PM, Nick Sabalausky (Abscissa) wrote: A bunch of stuff I 100% agree with. Me too. So refreshing to read. Mike

#dbugfix Issue 18068 - No file names and line numbers in stack trace

2018-02-08 Thread Mike Franklin via Digitalmars-d
https://issues.dlang.org/show_bug.cgi?id=18068 I tried to fix this one myself, but it beat me. It's also currently causing me friction when working on DMD. I would love to see it fixed. Interestingly, however, it works fine in the auto-tester. But, problem can be reproduced at

Re: A betterC base

2018-02-08 Thread Mike Franklin via Digitalmars-d
On Friday, 9 February 2018 at 01:31:41 UTC, Mike Franklin wrote: On Thursday, 8 February 2018 at 17:10:00 UTC, bachmeier wrote: What are D's limitations on do-it-yourself reference counting? * Types that are built into the language like dynamic arrays, associative arrays, and exceptions

Re: A betterC base

2018-02-08 Thread Mike Franklin via Digitalmars-d
On Thursday, 8 February 2018 at 17:10:00 UTC, bachmeier wrote: What are D's limitations on do-it-yourself reference counting? * Types that are built into the language like dynamic arrays, associative arrays, and exceptions won't benefit from DIY reference counting. * Much of Phobos

Re: A betterC base

2018-02-08 Thread Mike Franklin via Digitalmars-d
On Thursday, 8 February 2018 at 11:06:15 UTC, ixid wrote: How difficult would it be for D at this point to move towards a pay for what you use system that out of the box is betterC and requires the garbage collector to be explicitly imported? I'm not sure if this is what you're looking for,

<    1   2   3   4   >