Re: New memory management strategy

2017-06-24 Thread Ola Fosheim Grøstad via Digitalmars-d
On Sunday, 25 June 2017 at 05:29:02 UTC, Axe wrote: Since we cannot find the control flow path in a function. All the variable declarations are moved to the top of the function, so that control flow doesn't determine whether the variables are allocated or not. Now the question is whether this

New memory management strategy

2017-06-24 Thread Axe via Digitalmars-d
Hi there. I have found a new memory management strategy based on whole program lifetime inference. Disclaimer: I am no expert and hence what follows may be completely wrong or impractical. So bear with me. The first step is to construct an "escape" lists for each and every function. Escape l

Re: dlang website design

2017-06-24 Thread Adam D. Ruppe via Digitalmars-d
On Saturday, 24 June 2017 at 18:17:42 UTC, Laeeth Isharc wrote: what is the barest minimum we need to enable that? The phobos devs or the dmd packager just have to grab code and docs they are interested in. It's open source; the author has already made it available. Drop it in the default imp

Re: Can't get UDAs of constants (enums) !

2017-06-24 Thread Timon Gehr via Digitalmars-d
On 24.06.2017 19:42, Johan Engelen wrote: This code no longer compiles (regression since 2.072, [1]): ``` module example; import std.meta: staticIndexOf; struct Attrib {} @Attrib enum TEST = 123; void foo() { foreach(name; __traits(allMembers, example)) { pragma(msg, name);

Re: dlang website design

2017-06-24 Thread Adam D. Ruppe via Digitalmars-d
On Saturday, 24 June 2017 at 19:22:48 UTC, Ecstatic Coder wrote: Two lines of code, that's all that's needed to serve an entire website, with all sorts of files (html, css, js, jpg, png, etc) located in plenty of directories. Fun fact: I actually do *not* have code that does that in one line.

Re: dlang website design

2017-06-24 Thread Timon Gehr via Digitalmars-d
On 25.06.2017 01:09, Adam D. Ruppe wrote: On Saturday, 24 June 2017 at 23:00:59 UTC, Timon Gehr wrote: Failed to listen on :::80 Listening on port 80 requires root anyway. That's why like my cgi.d uses 8085 - anything over 1024 can be listened by any user (and is less likely to have an exist

Re: dlang website design

2017-06-24 Thread Timon Gehr via Digitalmars-d
On 25.06.2017 01:03, Wulfklaue wrote: On Saturday, 24 June 2017 at 23:00:59 UTC, Timon Gehr wrote: $ dub main.d Failed to listen on :::80 Failed to listen on 0.0.0.0:80 object.Exception@../../.dub/packages/vibe-d-0.7.31/vibe-d/source/vibe/http/server.d(1698): Failed to listen for incoming HTTP

Re: dlang website design

2017-06-24 Thread Adam D. Ruppe via Digitalmars-d
On Saturday, 24 June 2017 at 23:00:59 UTC, Timon Gehr wrote: Failed to listen on :::80 Listening on port 80 requires root anyway. That's why like my cgi.d uses 8085 - anything over 1024 can be listened by any user (and is less likely to have an existing program on it)

Re: Go 1.9

2017-06-24 Thread jmh530 via Digitalmars-d
On Saturday, 24 June 2017 at 19:17:24 UTC, bachmeier wrote: Just this morning I got things working on Windows. Now that all three major platforms have support, it is as reasonable to create an R package with D functions as C, C++ or Fortran. Anyone can write up a library of D functions and pu

Re: dlang website design

2017-06-24 Thread Wulfklaue via Digitalmars-d
On Saturday, 24 June 2017 at 23:00:59 UTC, Timon Gehr wrote: $ dub main.d Failed to listen on :::80 Failed to listen on 0.0.0.0:80 object.Exception@../../.dub/packages/vibe-d-0.7.31/vibe-d/source/vibe/http/server.d(1698): Failed to listen for incoming HTTP connections on any of the supplied int

Re: dlang website design

2017-06-24 Thread Wulfklaue via Digitalmars-d
On Saturday, 24 June 2017 at 22:16:11 UTC, Wulfklaue wrote: Attempt 1: Attempt 2: Attempt 3: Attempt 4: Attempt 5: = Almost forgot to mention, this was done under Windows ( where the inline does not work ). It works under Linux but that is a different issue.

Re: dlang website design

2017-06-24 Thread Timon Gehr via Digitalmars-d
On 25.06.2017 00:34, Sönke Ludwig wrote: Am 25.06.2017 um 00:18 schrieb Timon Gehr: $ cat main.d /++ dub.sdl: <-- colon missing here (...) What am I doing wrong? I forgot a colon at the end of the first line. With that it *actually* works now. $ dub main.d Failed to listen on :::80 Failed

Re: dlang website design

2017-06-24 Thread Wulfklaue via Digitalmars-d
On Saturday, 24 June 2017 at 22:18:29 UTC, Timon Gehr wrote: $ cat main.d /++ dub.sdl name "webserver" dependency "vibe-d:http" version="~>0.7.31" +/ module main; import vibe.core.core; import vibe.http.fileserver; import vibe.http.server; void main() { listenHTTP(new HTTPServerSett

Re: Sponsorship [Re: Go 1.9]

2017-06-24 Thread Wulfklaue via Digitalmars-d
On Saturday, 24 June 2017 at 21:56:20 UTC, Andrei Alexandrescu wrote: On 6/24/17 1:11 PM, Wulfklaue wrote: [snip] Thanks, this is a good point. The bountysource has been tried by Facebook (with D and other projects) and was deemed unsuccessful. It may be the time for trying a new angle on boun

Re: dlang website design

2017-06-24 Thread Sönke Ludwig via Digitalmars-d
Am 25.06.2017 um 00:18 schrieb Timon Gehr: $ cat main.d /++ dub.sdl: <-- colon missing here (...) What am I doing wrong? I forgot a colon at the end of the first line. With that it *actually* works now.

Re: dlang website design

2017-06-24 Thread Sönke Ludwig via Digitalmars-d
Am 25.06.2017 um 00:16 schrieb Wulfklaue: On Saturday, 24 June 2017 at 20:29:23 UTC, Sönke Ludwig wrote: /++ dub.sdl name "webserver" dependency "vibe-d:http" version="~>0.7.31" +/ module main; import vibe.core.core; import vibe.http.fileserver; import vibe.http.server; void main() {

Re: dlang website design

2017-06-24 Thread Timon Gehr via Digitalmars-d
On 24.06.2017 22:29, Sönke Ludwig wrote: Am 24.06.2017 um 21:22 schrieb Ecstatic Coder: package main import ( "log" "net/http" ) func main() { http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { http.ServeFile(w, r, r.URL.Path[1:]); }); log.Fatal(ht

Re: dlang website design

2017-06-24 Thread Wulfklaue via Digitalmars-d
On Saturday, 24 June 2017 at 20:29:23 UTC, Sönke Ludwig wrote: /++ dub.sdl name "webserver" dependency "vibe-d:http" version="~>0.7.31" +/ module main; import vibe.core.core; import vibe.http.fileserver; import vibe.http.server; void main() { listenHTTP(new HTTPServerSettings, serve

Allocation trace

2017-06-24 Thread Andrei Alexandrescu via Digitalmars-d
Hello, does anyone have traces of allocations from real applications? Looking for the sequence of calls to malloc, realloc, and free, e.g.: 0 malloc 128 1 malloc 8192 2 malloc 32 3 free 1 ... Thanks, Andrei

Sponsorship [Re: Go 1.9]

2017-06-24 Thread Andrei Alexandrescu via Digitalmars-d
On 6/24/17 1:11 PM, Wulfklaue wrote: [snip] Thanks, this is a good point. The bountysource has been tried by Facebook (with D and other projects) and was deemed unsuccessful. It may be the time for trying a new angle on bountysource though. We'll look into defining a page listing existing sponso

Re: DIP 1009--Improve Contract Usability--Preliminary Review Round 1

2017-06-24 Thread Mark via Digitalmars-d
On Saturday, 24 June 2017 at 02:31:09 UTC, Solomon E wrote: I think my proposal to add another use of semicolon in parentheses, like `foreach` or `for` but not the same as either, was needlessly complicated. in (a) out (result) (a) as syntax sugar where each (a) lowers to {assert(a);} and in

Re: dlang website design

2017-06-24 Thread Andrei Alexandrescu via Digitalmars-d
On 6/24/17 9:29 PM, Sönke Ludwig wrote: Am 24.06.2017 um 21:22 schrieb Ecstatic Coder: package main import ( "log" "net/http" ) func main() { http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { http.ServeFile(w, r, r.URL.Path[1:]); }); log.Fatal(htt

Re: dlang website design

2017-06-24 Thread Adam D. Ruppe via Digitalmars-d
On Saturday, 24 June 2017 at 21:04:36 UTC, Ecstatic Coder wrote: Just rename the three imports into std.*, make this available at installation, et voilà :) Or just leave it how it is and let it download the package automatically! I'm pretty sure that always works with an out-of-the box dmd

Re: dlang website design

2017-06-24 Thread Ecstatic Coder via Digitalmars-d
On Saturday, 24 June 2017 at 20:29:23 UTC, Sönke Ludwig wrote: Am 24.06.2017 um 21:22 schrieb Ecstatic Coder: package main import ( "log" "net/http" ) func main() { http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { http.ServeFile(w, r, r.URL.Path[1:]);

Re: dlang website design

2017-06-24 Thread Sönke Ludwig via Digitalmars-d
Am 24.06.2017 um 21:22 schrieb Ecstatic Coder: package main import ( "log" "net/http" ) func main() { http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { http.ServeFile(w, r, r.URL.Path[1:]); }); log.Fatal(http.ListenAndServe(":80", nil)); } /++ du

Re: Windows/Android/Mac/RaspberryPi/Linux/ARM/FPGA/ASIC/DSP/uC

2017-06-24 Thread Joakim via Digitalmars-d
On Saturday, 24 June 2017 at 19:18:24 UTC, FoxyBrown wrote: On Saturday, 24 June 2017 at 18:51:44 UTC, Johan Engelen wrote: On Saturday, 24 June 2017 at 18:16:46 UTC, FoxyBrown wrote: [...] Yes indeed. LDC will output the IR when you use the `-output-ll` (human readable) or `-output-bc` (bin

Re: dlang website design

2017-06-24 Thread Ecstatic Coder via Digitalmars-d
On Saturday, 24 June 2017 at 18:10:54 UTC, Adam D. Ruppe wrote: On Friday, 23 June 2017 at 18:26:43 UTC, Ecstatic Coder wrote: I'm also in favor that some of your personal developments be converted into std libs. Eh, std libs is where you lose me. I don't mind offering a "just works" dmd down

Re: Windows/Android/Mac/RaspberryPi/Linux/ARM/FPGA/ASIC/DSP/uC

2017-06-24 Thread FoxyBrown via Digitalmars-d
On Saturday, 24 June 2017 at 18:51:44 UTC, Johan Engelen wrote: On Saturday, 24 June 2017 at 18:16:46 UTC, FoxyBrown wrote: [...] Yes indeed. LDC will output the IR when you use the `-output-ll` (human readable) or `-output-bc` (binary representation) compile switches. [...] In theory,

Re: Go 1.9

2017-06-24 Thread bachmeier via Digitalmars-d
On Saturday, 24 June 2017 at 17:43:36 UTC, Laeeth Isharc wrote: R is done (thanks bachmeier) Integration with R is largely complete, but the missing piece has always been lack of Windows support, which meant it wasn't an option for most users. Just this morning I got things working on Windo

Re: Windows/Android/Mac/RaspberryPi/Linux/ARM/FPGA/ASIC/DSP/uC

2017-06-24 Thread Johan Engelen via Digitalmars-d
On Saturday, 24 June 2017 at 18:16:46 UTC, FoxyBrown wrote: Nice to know it's being worked on. I am not really familiar with llvm but it seems like it can be quite useful. I'm I correct that basically llvm is an intermediate representation(sorta like C#/VBS/F#/etc's IR)? This means that one

Re: dlang website design

2017-06-24 Thread Laeeth Isharc via Digitalmars-d
On Saturday, 24 June 2017 at 18:10:54 UTC, Adam D. Ruppe wrote: On Friday, 23 June 2017 at 18:26:43 UTC, Ecstatic Coder wrote: I'm also in favor that some of your personal developments be converted into std libs. Eh, std libs is where you lose me. I don't mind offering a "just works" dmd down

Re: Windows/Android/Mac/RaspberryPi/Linux/ARM/FPGA/ASIC/DSP/uC

2017-06-24 Thread FoxyBrown via Digitalmars-d
On Friday, 23 June 2017 at 19:56:17 UTC, Joakim wrote: On Friday, 23 June 2017 at 19:03:01 UTC, FoxyBrown wrote: [...] The ldc wiki page has a rudimentary version of what you're looking for, listing all platforms worked on and some idea of how well they're supported: https://wiki.dlang.org

Re: Analysis of D GC

2017-06-24 Thread Dmitry Olshansky via Digitalmars-d
On Saturday, 24 June 2017 at 15:31:21 UTC, Martin Nowak wrote: On Monday, 19 June 2017 at 22:35:42 UTC, Dmitry Olshansky wrote: My take on D's GC problem, also spoiler - I'm going to build a new one soonish. http://olshansky.me/gc/runtime/dlang/2017/06/14/inside-d-gc.html --- Dmitry Olshansky

Re: dlang website design

2017-06-24 Thread Adam D. Ruppe via Digitalmars-d
On Friday, 23 June 2017 at 18:26:43 UTC, Ecstatic Coder wrote: I'm also in favor that some of your personal developments be converted into std libs. Eh, std libs is where you lose me. I don't mind offering a "just works" dmd download on my website, with my packaging dmd for some particular pu

Re: Can't get UDAs of constants (enums) !

2017-06-24 Thread Johan Engelen via Digitalmars-d
On Saturday, 24 June 2017 at 17:42:48 UTC, Johan Engelen wrote: Does anybody know a workaround? I got something with mixins now that seems to work. ``` void foo(string modname)() { mixin("static import mod = " ~ modname ~ ";"); foreach(name; __traits(allMembers, mod)) { pragma(

Re: Can't get UDAs of constants (enums) !

2017-06-24 Thread ketmar via Digitalmars-d
Johan Engelen wrote: This code no longer compiles (regression since 2.072, [1]): ``` module example; import std.meta: staticIndexOf; struct Attrib {} @Attrib enum TEST = 123; void foo() { foreach(name; __traits(allMembers, example)) { pragma(msg, name); pragma(msg, __tr

Re: Can't get UDAs of constants (enums) !

2017-06-24 Thread Meta via Digitalmars-d
On Saturday, 24 June 2017 at 17:42:48 UTC, Johan Engelen wrote: This code no longer compiles (regression since 2.072, [1]): ``` module example; import std.meta: staticIndexOf; struct Attrib {} @Attrib enum TEST = 123; void foo() { foreach(name; __traits(allMembers, example)) { prag

Re: Go 1.9

2017-06-24 Thread Laeeth Isharc via Digitalmars-d
On Saturday, 24 June 2017 at 11:18:10 UTC, Ecstatic Coder wrote: On Saturday, 24 June 2017 at 10:34:07 UTC, Ola Fosheim Grøstad wrote: On Saturday, 24 June 2017 at 09:35:56 UTC, Ecstatic Coder wrote: I'm assuming that D is for general purpose programming as well. That seems to be where it is

Can't get UDAs of constants (enums) !

2017-06-24 Thread Johan Engelen via Digitalmars-d
This code no longer compiles (regression since 2.072, [1]): ``` module example; import std.meta: staticIndexOf; struct Attrib {} @Attrib enum TEST = 123; void foo() { foreach(name; __traits(allMembers, example)) { pragma(msg, name); pragma(msg, __traits(getAttributes, __trai

Re: gdc is in

2017-06-24 Thread Martin Nowak via Digitalmars-d
On Wednesday, 21 June 2017 at 15:11:39 UTC, Joakim wrote: the gcc tree: https://gcc.gnu.org/ml/gcc/2017-06/msg00111.html Congratulations to Iain and the gdc team. :) I found out because it's on the front page of HN right now, where commenters are asking questions about D. Thanks for all the

Re: Analysis of D GC

2017-06-24 Thread Martin Nowak via Digitalmars-d
On Monday, 19 June 2017 at 22:35:42 UTC, Dmitry Olshansky wrote: My take on D's GC problem, also spoiler - I'm going to build a new one soonish. http://olshansky.me/gc/runtime/dlang/2017/06/14/inside-d-gc.html --- Dmitry Olshansky FYI, we've tried to improve the binary pool search, but there

Re: DIP 1009--Improve Contract Usability--Preliminary Review Round 1

2017-06-24 Thread MysticZach via Digitalmars-d
On Saturday, 24 June 2017 at 12:26:57 UTC, Moritz Maxeiner wrote: Should the need ever arise for (new) contract and assert grammar to diverge it can be dealt with then by whoever does the diverging. Yes, I'll keep the grammar the same for now, because there is a benefit to doing so, in that a

Re: Go 1.9

2017-06-24 Thread Adam D. Ruppe via Digitalmars-d
On Saturday, 24 June 2017 at 12:11:29 UTC, Wulfklaue wrote: I never considered that D has a bountysource account. Its way, wy at the bottom of the monthly listing page. It did not even show up until 3 days ago. It was somewhat active for a while a couple years ago, but I found it to be si

Re: DIP 1009--Improve Contract Usability--Preliminary Review Round 1

2017-06-24 Thread Steven Schveighoffer via Digitalmars-d
On 6/24/17 8:26 AM, Moritz Maxeiner wrote: I would simply copy the current assert grammar into a separate contract grammar, so that further modifications to the assert grammar do not change the new contract grammar. But as I said, it's not important to me, it was just an observation/question.

Re: DIP 1009--Improve Contract Usability--Preliminary Review Round 1

2017-06-24 Thread Moritz Maxeiner via Digitalmars-d
On Saturday, 24 June 2017 at 05:16:45 UTC, MysticZach wrote: On Friday, 23 June 2017 at 21:36:07 UTC, Moritz Maxeiner wrote: Contracts within the DbC paradigm *are* abstractions that do not necessitate any particular implementation. In practice, though, what must any such implementation actual

Re: Go 1.9

2017-06-24 Thread rikki cattermole via Digitalmars-d
On 24/06/2017 1:11 PM, Wulfklaue wrote: snip And sorry for the strong language but this is the truth! The fact that i as a newcomer needs to point this out is just ridiculous. Its easy to see why Nim and Crystal out fund D on bountysource. It's fine. You're not attacking anyone and not swear

Re: Go 1.9

2017-06-24 Thread Wulfklaue via Digitalmars-d
On Saturday, 24 June 2017 at 10:21:50 UTC, rikki cattermole wrote: What on earth are you talking about[0]? [0] https://www.bountysource.com/teams/d *wow* ... Call me amazed and dumbstruck. I never considered that D has a bountysource account. Its way, wy at the bottom of the monthly list

Re: Go 1.9

2017-06-24 Thread Ecstatic Coder via Digitalmars-d
On Saturday, 24 June 2017 at 10:17:16 UTC, Wulfklaue wrote: On Saturday, 24 June 2017 at 09:35:56 UTC, Ecstatic Coder wrote: With all due respect, on the contrary I think that promoting D as a general purpose programming language could be its only chance to really improve its popularity, and th

Re: Go 1.9

2017-06-24 Thread Ecstatic Coder via Digitalmars-d
On Saturday, 24 June 2017 at 10:34:07 UTC, Ola Fosheim Grøstad wrote: On Saturday, 24 June 2017 at 09:35:56 UTC, Ecstatic Coder wrote: I'm assuming that D is for general purpose programming as well. That seems to be where it is heading. I don't think D stands a chance in that domain, but we'

Re: DIP 1009--Improve Contract Usability--Preliminary Review Round 1

2017-06-24 Thread MysticZach via Digitalmars-d
On Saturday, 24 June 2017 at 02:31:09 UTC, Solomon E wrote: I think my proposal to add another use of semicolon in parentheses, like `foreach` or `for` but not the same as either, was needlessly complicated. It's very popular, actually. :) in (a) out (result) (a) This resembles template fu

Re: D's appeal [was Go 1.9]

2017-06-24 Thread Russel Winder via Digitalmars-d
On Sat, 2017-06-24 at 10:34 +, Ola Fosheim Grøstad via Digitalmars- d wrote: > […] > Most programming languages are technically "general purpose", but > when projects look for tooling they aren't looking for something > generic, they are looking for a solution to a specific domain. > > So,

Re: Go 1.9

2017-06-24 Thread Ola Fosheim Grøstad via Digitalmars-d
On Saturday, 24 June 2017 at 09:35:56 UTC, Ecstatic Coder wrote: I'm assuming that D is for general purpose programming as well. That seems to be where it is heading. I don't think D stands a chance in that domain, but we'll see. With all due respect, on the contrary I think that promoting

Re: Go 1.9

2017-06-24 Thread rikki cattermole via Digitalmars-d
On 24/06/2017 11:17 AM, Wulfklaue wrote: snip Frankly, i think the best way to go about moving D to popularity, is simply money. More fully time programmers but that requires money. I do not understand why D does not have a BountySource account ( salt.bountysource.com ). What on earth are

Re: Go 1.9

2017-06-24 Thread Wulfklaue via Digitalmars-d
On Saturday, 24 June 2017 at 09:35:56 UTC, Ecstatic Coder wrote: With all due respect, on the contrary I think that promoting D as a general purpose programming language could be its only chance to really improve its popularity, and thus significantly grow its current user base. I'm sorry to

Re: DIP 1009--Improve Contract Usability--Preliminary Review Round 1

2017-06-24 Thread Timon Gehr via Digitalmars-d
On 23.06.2017 21:04, H. S. Teoh via Digitalmars-d wrote: On Fri, Jun 23, 2017 at 06:57:57PM +, MysticZach via Digitalmars-d wrote: On Friday, 23 June 2017 at 18:20:23 UTC, Moritz Maxeiner wrote: On Friday, 23 June 2017 at 18:03:26 UTC, Timon Gehr wrote: [...] Agreed. Implementation: https

Re: Go 1.9

2017-06-24 Thread Ecstatic Coder via Digitalmars-d
I'm assuming that D is for general purpose programming as well. That seems to be where it is heading. I don't think D stands a chance in that domain, but we'll see. With all due respect, on the contrary I think that promoting D as a general purpose programming language could be its only cha

Re: Go 1.9

2017-06-24 Thread Ola Fosheim Grøstad via Digitalmars-d
On Friday, 23 June 2017 at 14:45:12 UTC, Bienlein wrote: I'm assuming that D is for general purpose programming as well. That seems to be where it is heading. I don't think D stands a chance in that domain, but we'll see.

Re: What is your favorite D feature?

2017-06-24 Thread via Digitalmars-d
On Friday, 23 June 2017 at 18:51:13 UTC, Anonymouse wrote: On Thursday, 22 June 2017 at 00:48:25 UTC, Seb wrote: Hi, I am currently trying to modernize the D code example roulette on the dlang.org front page [1]. Hence, I would love to hear about your favorite feature(s) in D. Ideas: - favor

Re: Windows/Android/Mac/RaspberryPi/Linux/ARM/FPGA/ASIC/DSP/uC

2017-06-24 Thread Johan Engelen via Digitalmars-d
On Friday, 23 June 2017 at 19:56:17 UTC, Joakim wrote: Just last night, I was thinking about some easy way to let ldc users cross-compile the stdlib themselves from the regular ldc download, and I thought of doing it with dub, the D package manager, since we now distribute dub alongside ldc.