Re: Bounty for -minimal compiler flag

2014-04-26 Thread Kagamin via Digitalmars-d-announce
On Tuesday, 18 February 2014 at 02:24:32 UTC, Steven Schveighoffer wrote: Yes, and one can do it with a global flag too. The lack of this ability is really a terrible omission for D2. We have the flag - GCX.running, it's just not exposed.

Re: Bounty for -minimal compiler flag

2014-03-10 Thread Rel
So? Is anyone working on these features?

Re: Bounty for -minimal compiler flag

2014-02-17 Thread Steven Schveighoffer
On Mon, 17 Feb 2014 15:12:39 -0500, Jacob Carlborg wrote: On 2014-02-16 21:51, Steven Schveighoffer wrote: Right, but there is no obligation to follow this pattern. One is free to just not do anything, and the GC will clean up your garbage. I was replying to the issue that it's not possible

Re: Bounty for -minimal compiler flag

2014-02-17 Thread Paulo Pinto
Am 17.02.2014 21:40, schrieb inout: On Monday, 17 February 2014 at 06:40:54 UTC, Paulo Pinto wrote: On Sunday, 16 February 2014 at 23:40:58 UTC, 1100110 wrote: On 2/16/14, 10:18, Elie Morisse wrote: IMHO an approach that would not involve making a binary choice between "full D" and "minimal D

Re: Bounty for -minimal compiler flag

2014-02-17 Thread inout
On Monday, 17 February 2014 at 06:40:54 UTC, Paulo Pinto wrote: On Sunday, 16 February 2014 at 23:40:58 UTC, 1100110 wrote: On 2/16/14, 10:18, Elie Morisse wrote: IMHO an approach that would not involve making a binary choice between "full D" and "minimal D" is to add an option to make the li

Re: Bounty for -minimal compiler flag

2014-02-17 Thread Jacob Carlborg
On 2014-02-16 21:51, Steven Schveighoffer wrote: Right, but there is no obligation to follow this pattern. One is free to just not do anything, and the GC will clean up your garbage. I was replying to the issue that it's not possible to know in the destructor of a class if it's destroyed by t

Re: Bounty for -minimal compiler flag

2014-02-17 Thread 1100110
On 2/17/14, 0:40, Paulo Pinto wrote: On Sunday, 16 February 2014 at 23:40:58 UTC, 1100110 wrote: On 2/16/14, 10:18, Elie Morisse wrote: IMHO an approach that would not involve making a binary choice between "full D" and "minimal D" is to add an option to make the linker strip druntime and Phob

Re: Bounty for -minimal compiler flag

2014-02-16 Thread Paulo Pinto
On Sunday, 16 February 2014 at 23:40:58 UTC, 1100110 wrote: On 2/16/14, 10:18, Elie Morisse wrote: IMHO an approach that would not involve making a binary choice between "full D" and "minimal D" is to add an option to make the linker strip druntime and Phobos' shared libraries (or any shared l

Re: Bounty for -minimal compiler flag

2014-02-16 Thread inout
On Sunday, 16 February 2014 at 16:18:13 UTC, Elie Morisse wrote: On Thursday, 13 February 2014 at 23:14:20 UTC, 1100110 wrote: I think it's about time I gave back to this wonderful community. I'm offering a $50 bounty on this. (Preferably Bitcoins, but I'll use bountysource if desired.) rules

Re: Bounty for -minimal compiler flag

2014-02-16 Thread 1100110
On 2/16/14, 10:18, Elie Morisse wrote: IMHO an approach that would not involve making a binary choice between "full D" and "minimal D" is to add an option to make the linker strip druntime and Phobos' shared libraries (or any shared library, and it's not specific to D btw) to the "lowest common

Re: Bounty for -minimal compiler flag

2014-02-16 Thread Steven Schveighoffer
On Sun, 16 Feb 2014 11:18:12 -0500, Elie Morisse wrote: Isn't this a bit premature? The idea is controversial, if you read the thread Andrei and Walter wanted to postpone it: I convinced Walter of my view on this, so he won't work on it. I trust that at least between the two of us we c

Re: Bounty for -minimal compiler flag

2014-02-16 Thread Steven Schveighoffer
On Sun, 16 Feb 2014 06:46:53 -0500, Jacob Carlborg wrote: On Sunday, 16 February 2014 at 11:43:22 UTC, Jacob Carlborg wrote: In D1 Tango added a new method, "dispose", to Object. This method is called when an object is destroyed either when calling "delete" or when going out of scope for s

Re: Bounty for -minimal compiler flag

2014-02-16 Thread Paulo Pinto
Am 16.02.2014 17:18, schrieb Elie Morisse: On Thursday, 13 February 2014 at 23:14:20 UTC, 1100110 wrote: I think it's about time I gave back to this wonderful community. I'm offering a $50 bounty on this. (Preferably Bitcoins, but I'll use bountysource if desired.) rules: Has to be called -min

Re: Bounty for -minimal compiler flag

2014-02-16 Thread Elie Morisse
On Thursday, 13 February 2014 at 23:14:20 UTC, 1100110 wrote: I think it's about time I gave back to this wonderful community. I'm offering a $50 bounty on this. (Preferably Bitcoins, but I'll use bountysource if desired.) rules: Has to be called -minimal Has to fulfill Walter's original post.

Re: Bounty for -minimal compiler flag

2014-02-16 Thread Denis Koroskin
On Sunday, 16 February 2014 at 05:27:07 UTC, Steven Schveighoffer wrote: On Sat, 15 Feb 2014 23:53:19 -0500, Denis Koroskin <2kor...@gmail.com> wrote: On Sunday, 16 February 2014 at 02:57:25 UTC, Steven Schveighoffer wrote: I think that the best and quickest approach at this time is to disall

Re: Bounty for -minimal compiler flag

2014-02-16 Thread Jacob Carlborg
On Sunday, 16 February 2014 at 11:43:22 UTC, Jacob Carlborg wrote: In D1 Tango added a new method, "dispose", to Object. This method is called when an object is destroyed either when calling "delete" or when going out of scope for scope declared objects. Forgot to say, other GC objects are s

Re: Bounty for -minimal compiler flag

2014-02-16 Thread Jacob Carlborg
On Sunday, 16 February 2014 at 02:57:25 UTC, Steven Schveighoffer wrote: New is not the issue. The expectation, when I write my class, that it will be cleaned up by the GC, is the issue. I remember this little nugget of paradox from the documentation of classes: "This means that when the g

Re: Bounty for -minimal compiler flag

2014-02-15 Thread Steven Schveighoffer
On Sat, 15 Feb 2014 23:53:19 -0500, Denis Koroskin <2kor...@gmail.com> wrote: On Sunday, 16 February 2014 at 02:57:25 UTC, Steven Schveighoffer wrote: I think that the best and quickest approach at this time is to disallow classes. They are not trivial. If we can figure out a clean way to ad

Re: Bounty for -minimal compiler flag

2014-02-15 Thread Rory McGuire
+1 especially if it shows the amount allocated as well. On 14 Feb 2014 21:10, "Kagamin" wrote: > I don't think, everything should be done by the compiler. Most trouble > with gc is that its usage can't be traced similar to tls, so the feature > will be diagnostics similar to -vtls option, say, -v

Re: Bounty for -minimal compiler flag

2014-02-15 Thread Denis Koroskin
On Sunday, 16 February 2014 at 02:57:25 UTC, Steven Schveighoffer wrote: On Sat, 15 Feb 2014 07:33:04 -0500, Jakob Ovrum wrote: On Friday, 14 February 2014 at 15:56:16 UTC, Steven Schveighoffer wrote: Classes are typically written with an expectation that the GC will clean them up. I don't t

Re: Bounty for -minimal compiler flag

2014-02-15 Thread Steven Schveighoffer
On Sat, 15 Feb 2014 07:33:04 -0500, Jakob Ovrum wrote: On Friday, 14 February 2014 at 15:56:16 UTC, Steven Schveighoffer wrote: Classes are typically written with an expectation that the GC will clean them up. I don't think you can just get rid of that expectation. A class written without

Re: Bounty for -minimal compiler flag

2014-02-15 Thread 1100110
On 2/15/14, 4:52, Jacob Carlborg wrote: On 2014-02-15 05:55, 1100110 wrote: 6) unittests (silent failure) These should be kept since they can be accessed with __traits(getUnitTests) Awesome!

Re: Bounty for -minimal compiler flag

2014-02-15 Thread Jakob Ovrum
On Friday, 14 February 2014 at 15:56:16 UTC, Steven Schveighoffer wrote: Classes are typically written with an expectation that the GC will clean them up. I don't think you can just get rid of that expectation. A class written without the assumption of the runtime is a very different object, an

Re: Bounty for -minimal compiler flag

2014-02-15 Thread Jacob Carlborg
On 2014-02-15 05:55, 1100110 wrote: 6) unittests (silent failure) These should be kept since they can be accessed with __traits(getUnitTests) -- /Jacob Carlborg

Re: Bounty for -minimal compiler flag

2014-02-14 Thread Leandro Lucarella
Daniel Murphy, el 14 de February a las 22:10 me escribiste: > "1100110" wrote in message news:tjgimnoqoflzrcrlw...@forum.dlang.org... > > >I'm offering a $50 bounty on this. > >(Preferably Bitcoins, but I'll use bountysource if desired.) > > I'd say just put it on bountysource, because then ther

Re: Bounty for -minimal compiler flag

2014-02-14 Thread Adam D. Ruppe
On Saturday, 15 February 2014 at 04:55:32 UTC, 1100110 wrote: Then what I actually want is for -betterC to be cleaned up and renamed (and Documented!) BTW I did *not* actually use -betterC for my minimal.zip. I've been playing with it a bit recently to make an even more minimal thing, but I'm

Re: Bounty for -minimal compiler flag

2014-02-14 Thread 1100110
On 2/14/14, 22:44, Adam D. Ruppe wrote: On Saturday, 15 February 2014 at 04:34:30 UTC, 1100110 wrote: Is it just ModuleInfo, or...? Yeah, that's pretty much all it actually does, and it isn't quite complete - array bounds checking for example won't work because they depend on module info. But

Re: Bounty for -minimal compiler flag

2014-02-14 Thread Adam D. Ruppe
On Saturday, 15 February 2014 at 04:34:30 UTC, 1100110 wrote: Is it just ModuleInfo, or...? Yeah, that's pretty much all it actually does, and it isn't quite complete - array bounds checking for example won't work because they depend on module info. But I don't think they should depend on i

Re: Bounty for -minimal compiler flag

2014-02-14 Thread 1100110
On 2/14/14, 22:20, Adam D. Ruppe wrote: On Saturday, 15 February 2014 at 04:13:49 UTC, 1100110 wrote: 1. Disable Garbage Collector (suggestion: -nogc) https://github.com/D-Programming-Language/dmd/pull/1886 Oh dmd! Why won't you build on my computer!? Why!? 3. Disable ModuleInfo

Re: Bounty for -minimal compiler flag

2014-02-14 Thread Adam D. Ruppe
On Saturday, 15 February 2014 at 04:13:49 UTC, 1100110 wrote: 1. Disable Garbage Collector (suggestion: -nogc) https://github.com/D-Programming-Language/dmd/pull/1886 3. Disable ModuleInfo (suggestion: -nomoduleinfo) dmd -betterC though note https://d.puremagic.com/issues/show_b

Re: Bounty for -minimal compiler flag

2014-02-14 Thread 1100110
On 2/14/14, 20:40, Daniel Murphy wrote: "Denis Koroskin" wrote in message news:wjdvvungwvpemwmxl...@forum.dlang.org... I'll throw in $300 extra (maybe more), but can you please first formalize the requirements (list of flags, and what each flag should mean, required unittests to pass etc). R

Re: Bounty for -minimal compiler flag

2014-02-14 Thread Daniel Murphy
"Denis Koroskin" wrote in message news:wjdvvungwvpemwmxl...@forum.dlang.org... I'll throw in $300 extra (maybe more), but can you please first formalize the requirements (list of flags, and what each flag should mean, required unittests to pass etc). Required unittests are very helpful, spec

Re: Bounty for -minimal compiler flag

2014-02-14 Thread Denis Koroskin
On Thursday, 13 February 2014 at 23:14:20 UTC, 1100110 wrote: I think it's about time I gave back to this wonderful community. I'm offering a $50 bounty on this. (Preferably Bitcoins, but I'll use bountysource if desired.) rules: Has to be called -minimal Has to fulfill Walter's original post.

Re: Bounty for -minimal compiler flag

2014-02-14 Thread Jacob Carlborg
On 2014-02-14 22:02, Steven Schveighoffer wrote: That's... old. Why doesn't DMD start using it? 10.7 came out in 2011. It wasn't that old until recently, when 10.9 was released. It's the same as with everything else. Someone just have to commit time and implement it. I guess this is a bit di

Re: Bounty for -minimal compiler flag

2014-02-14 Thread Steven Schveighoffer
On Fri, 14 Feb 2014 15:39:24 -0500, Jacob Carlborg wrote: On 2014-02-14 16:42, Steven Schveighoffer wrote: I'm 90% sure that MacOS does not natively support TLS, and uses the core.Thread class to store it. OS X support TLS natively since 10.7, but DMD still uses emulated TLS on OS X. Th

Re: Bounty for -minimal compiler flag

2014-02-14 Thread Jacob Carlborg
On 2014-02-14 16:42, Steven Schveighoffer wrote: I'm 90% sure that MacOS does not natively support TLS, and uses the core.Thread class to store it. OS X support TLS natively since 10.7, but DMD still uses emulated TLS on OS X. Yes, this also depends on moduleinfo, like static ctor/dtor.

Re: Bounty for -minimal compiler flag

2014-02-14 Thread Jacob Carlborg
On 2014-02-14 15:07, Daniel Murphy wrote: It's probably platform dependent, I guess it should work everywhere that C supports TLS. Well, on OS X it's natively supported on since 10.7 but DMD still uses emulated TLS: Dynamic cast can be disabled. Sure, but should it be an error or be repl

Re: Bounty for -minimal compiler flag

2014-02-14 Thread Jacob Carlborg
On 2014-02-14 14:50, 1100110 wrote: This does come with a cost. I dont know enough about TLS to comment really. Thoughts? Dynamic cast can be disabled. static this/~this is tougher. If it is possible for it to work, then it should. This requires ModuleInfo, if I recall correctly. profili

Re: Bounty for -minimal compiler flag

2014-02-14 Thread Kagamin
I don't think, everything should be done by the compiler. Most trouble with gc is that its usage can't be traced similar to tls, so the feature will be diagnostics similar to -vtls option, say, -vminimal. The compiler can write the trace of runtime usage in machine-readable format to stdout (fo

Re: Bounty for -minimal compiler flag

2014-02-14 Thread Daniel Murphy
"Steven Schveighoffer" wrote in message news:op.xa929juueav7ka@stevens-macbook-pro.local... >> static this/~this is tougher. If it is possible for it to work, then >> it should. I feel that this is more of a language feature. > > These might work with init sections, but maybe not. No, stat

Re: Bounty for -minimal compiler flag

2014-02-14 Thread Steven Schveighoffer
On Fri, 14 Feb 2014 10:46:19 -0500, Adam D. Ruppe wrote: On Friday, 14 February 2014 at 15:34:16 UTC, Steven Schveighoffer wrote: I think classes heavily depend on druntime, I believe Walter was indicating they would not be allowed (which trivially excludes class ==) My problem with exclu

Re: Bounty for -minimal compiler flag

2014-02-14 Thread Rel
On Friday, 14 February 2014 at 13:04:32 UTC, 1100110 wrote: Got any thoughts? 3. Disabling runtime type information and module information...

Re: Bounty for -minimal compiler flag

2014-02-14 Thread Adam D. Ruppe
On Friday, 14 February 2014 at 15:34:16 UTC, Steven Schveighoffer wrote: I think classes heavily depend on druntime, I believe Walter was indicating they would not be allowed (which trivially excludes class ==) My problem with excluding them is that it isn't hard to bring in the druntime part

Re: Bounty for -minimal compiler flag

2014-02-14 Thread Steven Schveighoffer
On Fri, 14 Feb 2014 09:07:35 -0500, Daniel Murphy wrote: "1100110" wrote in message news:ldl6v6$255r$1...@digitalmars.com... I dont know enough about TLS to comment really. Thoughts? It's probably platform dependent, I guess it should work everywhere that C supports TLS. I'm 90% sure

Re: Bounty for -minimal compiler flag

2014-02-14 Thread Steven Schveighoffer
On Fri, 14 Feb 2014 08:09:21 -0500, Daniel Murphy wrote: TLS, dynamic cast, profiling, static this/static ~this, assert, -cov, -profile, class == and synchronized all rely on druntime code. Also, D classes will fail to link without Object. I think classes heavily depend on druntime, I be

Re: Bounty for -minimal compiler flag

2014-02-14 Thread Daniel Murphy
"1100110" wrote in message news:ldl9fj$28g6$1...@digitalmars.com... > I don't think it's worth throwing out assert over. A runtime that > supported assert + Object would be about 8 lines and would IMO be > worthwhile. But then where do we stop? This is why I think it's an excellent idea to hav

Re: Bounty for -minimal compiler flag

2014-02-14 Thread 1100110
On 2/14/14, 8:07, Daniel Murphy wrote: "1100110" wrote in message news:ldl6v6$255r$1...@digitalmars.com... I dont know enough about TLS to comment really. Thoughts? It's probably platform dependent, I guess it should work everywhere that C supports TLS. Dynamic cast can be disabled. Sure

Re: Bounty for -minimal compiler flag

2014-02-14 Thread Daniel Murphy
"1100110" wrote in message news:ldl6v6$255r$1...@digitalmars.com... I dont know enough about TLS to comment really. Thoughts? It's probably platform dependent, I guess it should work everywhere that C supports TLS. Dynamic cast can be disabled. Sure, but should it be an error or be repl

Re: Bounty for -minimal compiler flag

2014-02-14 Thread 1100110
On 2/14/14, 7:09, Daniel Murphy wrote: "1100110" wrote in message news:ldl2pf$20b0$1...@digitalmars.com... I want a way to disable the GC, and have the compiler verify that no GC allocations may occur. I want a way to disable Exceptions, and have the compiler verify that no Exceptions may occ

Re: Bounty for -minimal compiler flag

2014-02-14 Thread Mike
On Friday, 14 February 2014 at 12:39:11 UTC, 1100110 wrote: Can you name anything I'm missing? * no module info * no runtime type info * treat TLS as __gshared for single threaded programs Mike

Re: Bounty for -minimal compiler flag

2014-02-14 Thread Daniel Murphy
"1100110" wrote in message news:ldl2pf$20b0$1...@digitalmars.com... I want a way to disable the GC, and have the compiler verify that no GC allocations may occur. I want a way to disable Exceptions, and have the compiler verify that no Exceptions may occur. Good, this is what I had in mi

Re: Bounty for -minimal compiler flag

2014-02-14 Thread 1100110
On 2/14/14, 5:42, Francesco Cattoglio wrote: On Friday, 14 February 2014 at 11:28:30 UTC, 1100110 wrote: I thought that would be best, unfortunately. Bitcoins are nice, but bountysource is the way to go. It's both more official and easier to contribute to the bounty. Meh, I just have a lot mo

Re: Bounty for -minimal compiler flag

2014-02-14 Thread 1100110
On 2/14/14, 5:45, Daniel Murphy wrote: "1100110" wrote in message news:ldkuku$1sgt$1...@digitalmars.com... I don't think we'll ever please everyone here. All I'm really trying to do by specifying the name is prevent some cutesy annoying name. It's pretty hard to get a pull request in with a

Re: Bounty for -minimal compiler flag

2014-02-14 Thread Daniel Murphy
"1100110" wrote in message news:ldkuku$1sgt$1...@digitalmars.com... I don't think we'll ever please everyone here. All I'm really trying to do by specifying the name is prevent some cutesy annoying name. It's pretty hard to get a pull request in with a silly switch name, so I wouldn't worry

Re: Bounty for -minimal compiler flag

2014-02-14 Thread Francesco Cattoglio
On Friday, 14 February 2014 at 11:28:30 UTC, 1100110 wrote: I thought that would be best, unfortunately. Bitcoins are nice, but bountysource is the way to go. It's both more official and easier to contribute to the bounty. I'd be fine with the switch being name -nodruntime, and honestly I lik

Re: Bounty for -minimal compiler flag

2014-02-14 Thread 1100110
On 2/14/14, 5:10, Daniel Murphy wrote: "1100110" wrote in message news:tjgimnoqoflzrcrlw...@forum.dlang.org... I'm offering a $50 bounty on this. (Preferably Bitcoins, but I'll use bountysource if desired.) I'd say just put it on bountysource, because then there's more chance others will add

Re: Bounty for -minimal compiler flag

2014-02-14 Thread Daniel Murphy
"1100110" wrote in message news:tjgimnoqoflzrcrlw...@forum.dlang.org... I'm offering a $50 bounty on this. (Preferably Bitcoins, but I'll use bountysource if desired.) I'd say just put it on bountysource, because then there's more chance others will add to it. rules: Has to be called -mi

Re: Bounty for -minimal compiler flag

2014-02-13 Thread 1100110
On 2/14/14, 0:22, John wrote: I haven't gone into the history, but the only thing to really object to is 'gc' surely. Isn't the rest of it fairly innocuous? J On Thursday, 13 February 2014 at 23:14:20 UTC, 1100110 wrote: 1. moduleinfo 2. exception handling 3. gc 4. Object Why object to gc

Re: Bounty for -minimal compiler flag

2014-02-13 Thread John
I haven't gone into the history, but the only thing to really object to is 'gc' surely. Isn't the rest of it fairly innocuous? J On Thursday, 13 February 2014 at 23:14:20 UTC, 1100110 wrote: 1. moduleinfo 2. exception handling 3. gc 4. Object