Re: My first experience as a D Newbie

2017-10-11 Thread Jesse Phillips via Digitalmars-d
On Wednesday, 11 October 2017 at 17:55:18 UTC, Steven 
Schveighoffer wrote:
I have to say as someone who uses mostly non-windows systems, 
these problems only seem to crop up for Windows developers.


I don't know if it's a different expectation or a different 
mindset or something else.


-Steve


I don't think this is true at all. I recall people getting 
frustrated and blaming it one Linux support being second class to 
windows.


Mind you, I used both and was totally confused because windows 
had so many qwerks. This was before win64 support.





Re: My first experience as a D Newbie

2017-10-11 Thread Dennis Cote via Digitalmars-d

On Thursday, 12 October 2017 at 03:50:31 UTC, Dennis Cote wrote:
This time it runs but displays a window full of micro sized 
text and icons. It is barely readable.


I figured out dlangide assumes a DPI setting of 96 which creates 
the tiny text and icons on my Retina display.


Under preferences it shows the DPI as "Use Screen DPI (192)" but 
it actually uses that value only after I click the Apply button. 
Then the text and icons are displayed correctly.


Looks like a small bug in dlangide initialization. I also noticed 
the check boxes in the preference dialog seem to display at 96 
DPI (and are therefore very small) even after the display 
resolution is changed.


Dennis Cote


Re: My first experience as a D Newbie

2017-10-11 Thread Dennis Cote via Digitalmars-d

On Thursday, 12 October 2017 at 01:26:33 UTC, jmh530 wrote:


You have to fetch it first if you don't already have it:
dub fetch dlangide
dub run dlangide

Of course, you might still have an issue...


I still have an issue on macOS using latest Homebrew version of 
dmd and dub.


It seems like it builds with one deprecation warning, but fails 
to run.


I fetched into an empty directory then run. All build and error 
message are in the link below:


https://pastebin.com/FLQHwGXf

It looks like SLD2 is missing, so I installed it via Homebrew and 
tried again. This time it runs but displays a window full of 
micro sized text and icons. It is barely readable. The link below 
leads to a screenshot showing the dlangide window and Dlang.org 
open in Safari for comparison.


http://tinypic.com/r/20jiico/9

Not trying to slam dlangide (in fact it looks promising), but 
these kind of issues, when following the instructions given, show 
how incomplete or untested instructions can lead new users to 
have a frustrating first experience with D.


Dennis Cote


Re: My first experience as a D Newbie

2017-10-11 Thread jmh530 via Digitalmars-d

On Wednesday, 11 October 2017 at 22:23:12 UTC, Rion wrote:

On Wednesday, 11 October 2017 at 18:29:38 UTC, qznc wrote:

At least on Ubuntu, this gives me an IDE:

  dub run dlangide

I have not used it much and I don't know if it works on 
Windows, but it might be the easiest way once you installed 
dmd and dub.


Windows 10:

dub run dlangide
Failed to find a package named 'dlangide'.


You have to fetch it first if you don't already have it:
dub fetch dlangide
dub run dlangide

Of course, you might still have an issue...


Re: DIP 1009 Status ?

2017-10-11 Thread Mike Parker via Digitalmars-d
On Thursday, 12 October 2017 at 00:38:37 UTC, Moritz Maxeiner 
wrote:
As it has been a while since I've seen an update on DIP 1009 
I'd like to ask what the current status of it is: Has it been 
closed for feedback and the second stage (submission to 
language authors) been initiated (as [1] requires)?


[1] https://github.com/dlang/DIPs


Waiting on a decision from Walter & Andrei.


DIP 1009 Status ?

2017-10-11 Thread Moritz Maxeiner via Digitalmars-d
As it has been a while since I've seen an update on DIP 1009 I'd 
like to ask what the current status of it is: Has it been closed 
for feedback and the second stage (submission to language 
authors) been initiated (as [1] requires)?


[1] https://github.com/dlang/DIPs


Re: Result of CTFE should be implicitly castable to immutable

2017-10-11 Thread Michael V. Franklin via Digitalmars-d
On Wednesday, 11 October 2017 at 14:30:54 UTC, Dmitry Olshansky 
wrote:

My motivation is, of course, std.regex.

static immutable r = regex("abc");

This is perfectly fine but because in general there is some 
amount of impurtiy in regex and it won't work. Yet regex is 
called at CTFE so there is no way it can escape mutable pointer 
to its result.


Thoughts?


For whatever it's worth, I also agree.

Mike




Re: My first experience as a D Newbie

2017-10-11 Thread Rion via Digitalmars-d

On Wednesday, 11 October 2017 at 18:29:38 UTC, qznc wrote:

At least on Ubuntu, this gives me an IDE:

  dub run dlangide

I have not used it much and I don't know if it works on 
Windows, but it might be the easiest way once you installed dmd 
and dub.


Windows 10:

dub run dlangide
Failed to find a package named 'dlangide'.


Re: My first experience as a D Newbie

2017-10-11 Thread Rion via Digitalmars-d
On Wednesday, 11 October 2017 at 17:55:18 UTC, Steven 
Schveighoffer wrote:


I have to say as someone who uses mostly non-windows systems, 
these problems only seem to crop up for Windows developers.


I don't know if it's a different expectation or a different 
mindset or something else.


Its probably more the fact that most of the developers use Unix 
based system for development, be it OSx or Linux. As a result 
Windows is the overlooked system what results in a lack of 
testing.


You really do not want to know the amount of times issues showed 
up because editor plugins crashes or did not work on windows 
properly. Very frustrating when its your first experience with a 
language.


It also helps that for instance has a more unified package 
manager so for people it can simply be apt-get install a few 
packages and that is it. The patting and other issues are most of 
the time properly resolved.


And it does not help when most plugins are developed by one 
developer, that is on the above mentioned Unix based systems.


Phobos' Windows Makefile

2017-10-11 Thread Eduard Staniloiu via Digitalmars-d

Hello,

I've hit the following problem on this PR [0]:
The Windows 32bit build fails with the error: "more than 32767 
symbols in object file" [1].


After taking a look in `win32.mak`, I've seen that we are 
bundling multiple source files into a single object (which is the 
issue here), instead of compiling each source file into it's 
corresponding object and then linking the objects together.
Is there a reason behind doing so, or should we rewrite the 
Windows makefiles?


Looking forward to your answers! :)
Cheers,
Eduard

[0] - https://github.com/dlang/phobos/pull/5331
[1] - 
https://auto-tester.puremagic.com/show-run.ghtml?projectid=1&runid=2826646&isPull=true


Re: D on quora ...

2017-10-11 Thread Jerry via Digitalmars-d
On Wednesday, 11 October 2017 at 07:33:26 UTC, Laeeth Isharc 
wrote:
You know it's not that hard to be the change you wish to see in 
the world.  That's really the whole point of open source, or at 
least of at least reasonably or more free software - you're not 
at the mercy of a paid vendor to whom you pay a fortune for the 
favour of them closing or otherwise creatively ignoring your 
tickets.  You can pretty easily fix many problems and 
irritations yourself, and if you're too busy then one can pay 
someone to do it, and if one is busy and has no money to spend 
right now one can try to persuade someone to work on it. But if 
one just grumbles, probably the result will be just what anyone 
would expect.


You still are at the mercy of the people maintaining the project. 
Which is kind of no different than being at the mercy of a big 
company from my experience. Some people listen, but a lot of the 
time they don't if something contradicts their views (having to 
do anything regarding Windows in this case). I could fork it and 
then maintain things myself, but that means fixing any pull 
requests or changes in the future yourself. Which now becomes a 
full time job, where as using the project to begin with was the 
point of reducing the workload, not increasing it.



64 bit command line build didn't seem to work for a while.  
That's been fixed recently, as I recall.  One can't really 
compare Linux and Windows 32 and 64 bit.  Those worlds work 
very differently.  Windows is as it is because they are 
fanatical about maintaining backwards compatibility.  So unless 
you run out of memory then 32 bit compiler isn't much of a 
restriction.  And if you are doing so much ctfe that you run 
out of memory, chances are you can figure out how to build the 
64 bit compiler on Windows!


You can easily run out of memory, DMD is a memory hog. Yes that's 
exactly the problem I run into all the time. It's not even the 
amount of CTFE you are doing, you can run out of memory by doing 
something really simple. DMD is just horribly optimized in terms 
of memory. Yes more work for me when it's something that should 
be done as part of the build process.


Try using digger - might work now that the 64 bit command line 
build works again.  And failing that maybe file a request on 
bugzilla.


For what... ?

And I don't know but I guess if you contribute something to the 
D Foundation, probably - because it's still quite new - it will 
be easier to get people to listen to a gentle request to have a 
downloadable 64 bit compiler.  These things do cost money, and 
right now I think somebody is paying for that out of the 
goodness of their heart...


Everything costs money. That's how the world works. If you mean 
hosting the source code. Well Github hosts the source for open 
source projects for free. If you mean distributing binaries, well 
Github allows you to upload binary files for people to download 
for free as well. If you mean testing, well there are a lot of 
alternatives that provide free testing for open source projects 
(like appveyor which isn't currently being used). If you mean 
this forum board? Well there are a lot of places you have a board 
for free. There's some 100+ pull requests in DMD alone, just 
trying to contribute something is a chore in itself. Making a 
contribution isn't really worth much.


Re: My first experience as a D Newbie

2017-10-11 Thread qznc via Digitalmars-d

At least on Ubuntu, this gives me an IDE:

  dub run dlangide

I have not used it much and I don't know if it works on Windows, 
but it might be the easiest way once you installed dmd and dub.


Re: My first experience as a D Newbie

2017-10-11 Thread jmh530 via Digitalmars-d
On Wednesday, 11 October 2017 at 17:55:18 UTC, Steven 
Schveighoffer wrote:


I have to say as someone who uses mostly non-windows systems, 
these problems only seem to crop up for Windows developers.


I don't know if it's a different expectation or a different 
mindset or something else.


-Steve


I don't know if it's that everything seems to be more difficult 
on Windows or that the average user of Linux is more 
knowledgeable than the average Windows user, or both. Regardless, 
if you want to reach more Windows users, spelling things out 
clearly is helpful.


Re: My first experience as a D Newbie

2017-10-11 Thread Steven Schveighoffer via Digitalmars-d

On 10/11/17 1:42 PM, WhatMeWorry wrote:

On Wednesday, 11 October 2017 at 07:23:02 UTC, Peter R wrote:

[...]


+10  We need a walkthru of how to set up everything. It's like a new 
cook being give all the ingredients but no recipe instructions.


I have to say as someone who uses mostly non-windows systems, these 
problems only seem to crop up for Windows developers.


I don't know if it's a different expectation or a different mindset or 
something else.


-Steve


Re: My first experience as a D Newbie

2017-10-11 Thread WhatMeWorry via Digitalmars-d

On Wednesday, 11 October 2017 at 07:23:02 UTC, Peter R wrote:

[...]


+10  We need a walkthru of how to set up everything. It's like a 
new cook being give all the ingredients but no recipe 
instructions.


Re: Enum AA with classes not allowed anymore?

2017-10-11 Thread Jonathan M Davis via Digitalmars-d
On Wednesday, October 11, 2017 17:05:19 Daniel Kozak via Digitalmars-d 
wrote:
> so you can try to use static immutable insted of enum

Yeah. Similarly, you could just have a regular function that you call at
compile time that returns what you want (assuming that it's not being
assigned to an enum) - then if it's just being used to generate something
that you actually want to keep around after compiling, you're not stuck with
the AA continuing to exist past compile time.

I don't know that it will ever happen, but there has been talk of
disallowing enums of anything that will allocate, because you pretty much
never want that (since it will allocate every time it's used), and it's easy
to do accidentally.

- Jonathan M Davis



Re: Result of CTFE should be implicitly castable to immutable

2017-10-11 Thread Steven Schveighoffer via Digitalmars-d

On 10/11/17 10:30 AM, Dmitry Olshansky wrote:

My motivation is, of course, std.regex.

static immutable r = regex("abc");

This is perfectly fine but because in general there is some amount of 
impurtiy in regex and it won't work. Yet regex is called at CTFE so 
there is no way it can escape mutable pointer to its result.


Thoughts?


100% agree. Any CTFE'd result is implicitly unique. In fact CTFE 
annoyingly makes everything unique, even where it doesn't have to!


Please file enhancement request if not already.

-Steve



Re: Enum AA with classes not allowed anymore?

2017-10-11 Thread Daniel Kozak via Digitalmars-d
so you can try to use static immutable insted of enum

On Wed, Oct 11, 2017 at 5:04 PM, Daniel Kozak  wrote:

> Not sure, but I belive this could be one of reasons:
> https://issues.dlang.org/show_bug.cgi?id=15989
>
> On Wed, Oct 11, 2017 at 4:54 PM, bauss via Digitalmars-d <
> digitalmars-d@puremagic.com> wrote:
>
>> On Sunday, 8 October 2017 at 04:40:59 UTC, Daniel Kozak wrote:
>>
>>> Up to  2.062  : Failure with output:
>>> -
>>> onlineapp.d(10): Error: cannot evaluate new Foo("0") at compile time
>>> onlineapp.d(10): Error: cannot evaluate new Foo("1") at compile time
>>> -
>>>
>>> 2.063   to 2.072.2: Success with output: Hello D
>>> Since  2.073.2: Failure with output: onlineapp.d(10): Error: variable
>>> onlineapp.aa : Unable to initialize enum with class or pointer to struct.
>>> Use static const variable instead.
>>>
>>> https://run.dlang.io/is/mJqayC
>>>
>>> On Sun, Oct 8, 2017 at 4:29 AM, bauss via Digitalmars-d <
>>> digitalmars-d@puremagic.com> wrote:
>>>
>>> [...]

>>>
>> Do you know what the reason for the change is and are there any
>> workarounds to actually declare AA's with classes that can be used at
>> compile-time then?
>>
>
>


Re: Enum AA with classes not allowed anymore?

2017-10-11 Thread Daniel Kozak via Digitalmars-d
Not sure, but I belive this could be one of reasons:
https://issues.dlang.org/show_bug.cgi?id=15989

On Wed, Oct 11, 2017 at 4:54 PM, bauss via Digitalmars-d <
digitalmars-d@puremagic.com> wrote:

> On Sunday, 8 October 2017 at 04:40:59 UTC, Daniel Kozak wrote:
>
>> Up to  2.062  : Failure with output:
>> -
>> onlineapp.d(10): Error: cannot evaluate new Foo("0") at compile time
>> onlineapp.d(10): Error: cannot evaluate new Foo("1") at compile time
>> -
>>
>> 2.063   to 2.072.2: Success with output: Hello D
>> Since  2.073.2: Failure with output: onlineapp.d(10): Error: variable
>> onlineapp.aa : Unable to initialize enum with class or pointer to struct.
>> Use static const variable instead.
>>
>> https://run.dlang.io/is/mJqayC
>>
>> On Sun, Oct 8, 2017 at 4:29 AM, bauss via Digitalmars-d <
>> digitalmars-d@puremagic.com> wrote:
>>
>> [...]
>>>
>>
> Do you know what the reason for the change is and are there any
> workarounds to actually declare AA's with classes that can be used at
> compile-time then?
>


Re: Enum AA with classes not allowed anymore?

2017-10-11 Thread bauss via Digitalmars-d

On Sunday, 8 October 2017 at 04:40:59 UTC, Daniel Kozak wrote:

Up to  2.062  : Failure with output:
-
onlineapp.d(10): Error: cannot evaluate new Foo("0") at compile 
time
onlineapp.d(10): Error: cannot evaluate new Foo("1") at compile 
time

-

2.063   to 2.072.2: Success with output: Hello D
Since  2.073.2: Failure with output: onlineapp.d(10): 
Error: variable
onlineapp.aa : Unable to initialize enum with class or pointer 
to struct.

Use static const variable instead.

https://run.dlang.io/is/mJqayC

On Sun, Oct 8, 2017 at 4:29 AM, bauss via Digitalmars-d < 
digitalmars-d@puremagic.com> wrote:



[...]


Do you know what the reason for the change is and are there any 
workarounds to actually declare AA's with classes that can be 
used at compile-time then?


Re: My first experience as a D Newbie

2017-10-11 Thread jmh530 via Digitalmars-d

On Wednesday, 11 October 2017 at 14:25:34 UTC, Dmitry wrote:
It depends on what programs you are doing. There are a huge 
number of cases when this way takes lot more time/efforts than 
using debugger.


Haha, yeah I know...


Result of CTFE should be implicitly castable to immutable

2017-10-11 Thread Dmitry Olshansky via Digitalmars-d

My motivation is, of course, std.regex.

static immutable r = regex("abc");

This is perfectly fine but because in general there is some 
amount of impurtiy in regex and it won't work. Yet regex is 
called at CTFE so there is no way it can escape mutable pointer 
to its result.


Thoughts?



Re: Multiline string literal improvements

2017-10-11 Thread Meta via Digitalmars-d

On Wednesday, 11 October 2017 at 09:56:52 UTC, Igor wrote:
On Wednesday, 11 October 2017 at 08:35:51 UTC, Walter Bright 
wrote:

On 10/10/2017 3:16 PM, sarn wrote:

Works even better in D because it can run at compile time.


Yes, I see no need for a language feature what can be easily 
and far more flexibly done with a regular function - 
especially since what |q{ and -q{ do gives no clue from the 
syntax.


You are right. My mind is just still not used to the power of D 
templates so I didn't think of this. On the other hand that is 
why D is still making me say "WOW!" on a regular basis :).


Just to confirm I understand, for example the following would 
give me compile time stripping of white space:


template stripws(string l) {
enum stripws = l.replaceAll(regex("\s+", "g"), " ");
}

string variable = stripws(q{
   whatever andever;
});

And I would get variable to be equal to " whatever and ever; ". 
Right?


Even better, you could write the same code that you would for 
doing this at runtime and it'll Just Work:


string variable = q{
whatever and  ever;
}.replaceAll(regex(`\s+`, "g"), " ");


Re: My first experience as a D Newbie

2017-10-11 Thread Dmitry via Digitalmars-d

On Wednesday, 11 October 2017 at 11:57:18 UTC, jmh530 wrote:
I just put in writeln statements to try and figure out what's 
going on.


It depends on what programs you are doing. There are a huge 
number of cases when this way takes lot more time/efforts than 
using debugger.


Re: My first experience as a D Newbie

2017-10-11 Thread jmh530 via Digitalmars-d

On Wednesday, 11 October 2017 at 07:23:02 UTC, Peter R wrote:
[snip] I've spent weeks trying to get VS Code configured, and 
still haven't gotten debugging to work. An idiot-proof step by 
step guide would be nice, maybe like this "step 1 install VS 
Code from this link, DMD from this link, Dub from this link, 
step 2 install these 5 extensions in VS Code, step 3 make these 
manual changes to the configuration, step 4 download this 
sample project and open it, step 5 here are the 5 important 
commands you need to build and run". If there was a 15-minute 
guide, it would be much easier to get to the parts that matter.


I don't use VS Code, but this is probably worth doing. I don't 
think I've ever set up debugging on Windows for D. I just put in 
writeln statements to try and figure out what's going on.


Re: newCTFE Status August 2017

2017-10-11 Thread Stefan Koch via Digitalmars-d

On Wednesday, 11 October 2017 at 07:39:47 UTC, Tourist wrote:

On Tuesday, 1 August 2017 at 21:27:32 UTC, Stefan Koch wrote:

Hi Guys,

At the end of July newCTFE became capable of executing the 
bf-ctfe[1] code and pass the tests.

At 5 times the speed. While using 40% the memory.
(It should be noted that the code generated by bf-ctfe is 
optimized to put as little pressure on ctfe as possible and 
tries to avoid the pathological paths which is why the speed 
improvement is not as high as some other code I showed before)


[...]


What about October 2017? I miss your frequent updates on 
newCTFE.


Sorry about that, I am quite with my job at sociomantic.

As soon as I find time I'll post a detailed report about my 
latest work and the directions I am planning to explore next.


Re: newCTFE Status August 2017

2017-10-11 Thread Stefan Koch via Digitalmars-d

On Wednesday, 11 October 2017 at 10:45:32 UTC, Stefan Koch wrote:

On Wednesday, 11 October 2017 at 07:39:47 UTC, Tourist wrote:

On Tuesday, 1 August 2017 at 21:27:32 UTC, Stefan Koch wrote:

[...]


What about October 2017? I miss your frequent updates on 
newCTFE.


Sorry about that, I am quite with my job at sociomantic.

As soon as I find time I'll post a detailed report about my 
latest work and the directions I am planning to explore next.


+ busy (insert where appropriate)


Re: Multiline string literal improvements

2017-10-11 Thread Igor via Digitalmars-d
On Wednesday, 11 October 2017 at 08:35:51 UTC, Walter Bright 
wrote:

On 10/10/2017 3:16 PM, sarn wrote:

Works even better in D because it can run at compile time.


Yes, I see no need for a language feature what can be easily 
and far more flexibly done with a regular function - especially 
since what |q{ and -q{ do gives no clue from the syntax.


You are right. My mind is just still not used to the power of D 
templates so I didn't think of this. On the other hand that is 
why D is still making me say "WOW!" on a regular basis :).


Just to confirm I understand, for example the following would 
give me compile time stripping of white space:


template stripws(string l) {
enum stripws = l.replaceAll(regex("\s+", "g"), " ");
}

string variable = stripws(q{
   whatever andever;
});

And I would get variable to be equal to " whatever and ever; ". 
Right?


Re: Multiline string literal improvements

2017-10-11 Thread Walter Bright via Digitalmars-d

On 10/10/2017 3:16 PM, sarn wrote:

Works even better in D because it can run at compile time.


Yes, I see no need for a language feature what can be easily and far more 
flexibly done with a regular function - especially since what |q{ and -q{ do 
gives no clue from the syntax.


Re: D on quora ...

2017-10-11 Thread Ola Fosheim Grøstad via Digitalmars-d

On Saturday, 7 October 2017 at 15:12:08 UTC, Random D user wrote:

Actually, Manual Memory Management is slow and D's GC is slower.


Well, no, deterministic memory management isn't slow. One 
specific implementation with a high level of naiveté might be 
slow.


C is not a very clever language, it was designed to be minimal 
and with minimal compiler requirements and with most features 
pushed onto libraries, including memory management. C++ is just 
meta-level dressing over C…


Because, if malloc/free is slow (free is often slower), you 
want to avoid them as much as possible.


A naive generic library implementation that is used randomly will 
not be fast, but a more dedicated implementation for the program 
at hand could be very performant.



You do this by reusing your memory/buffers.


Yes, in C/C++ you either have to resort to creating your own 
allocator in your program or you could used dedicated allocators. 
Or you just make them static global.


Anyway, D doesn't improve on C/C++ when it comes to allocators. 
And it's garbage collector is pretty much stuck in the standard 
GC implementation from 1960s/1970s in terms of performance and 
features.


Just because C/C++ is primitive doesn't mean that D is doing 
well, but at this point there is not much hope of D becoming a 
significant improvement on C++… So maybe it is better for D to 
stay where it is as there is basically very little support among 
the designers from improving the language semantics. In the C++ 
environment there is at least some movement, so maybe it will 
become a decent language in 2050, although they are stuck with 
the primitive C-foundation…




Re: [OT] vim tip with column limits

2017-10-11 Thread Jonathan M Davis via Digitalmars-d
On Wednesday, October 11, 2017 07:59:51 Eduard Staniloiu via Digitalmars-d 
wrote:
> On Monday, 9 October 2017 at 13:38:18 UTC, lithium iodate wrote:
> > On Monday, 9 October 2017 at 00:24:02 UTC, Jonathan M Davis
> >
> > wrote:
> >>[…]
> >>
> > Thanks for the tip!
>
> You might also want to use automatic word wrapping [0] for 120
> chars.
>
> Cheers,
> Eduard
>
> [0] - http://vim.wikia.com/wiki/Automatic_word_wrapping

That's also potentially a viable solution, but personally, I've never
particularly liked how vim's word wrapping behaves, and I've generally
avoided it. Simply knowing where the line limits are so that I know when
I've gone too far works well for me.

Other really useful stuff along those lines has been highlighting tabs and
any trailing whitespace in red. So, I always know that it's there and needs
to be removed (though that meant that I had to adjust my .vimrc when I was
unlucky enough to have to use tabs where I was working). I don't generally
have vim do much for me automatically (cindent is about the only automatic
behavior that I have on that I can think of). Rather, I know what commands I
need to do what I want or add commands that do it if that helps my
productivity, and then I use the commands when I need them.

- Jonathan M Davis




Re: Current limitations of -dip1000

2017-10-11 Thread Per Nordlöw via Digitalmars-d
On Wednesday, 11 October 2017 at 03:32:41 UTC, Walter Bright 
wrote:

Thank you!


You're very welcome!


Re: [OT] vim tip with column limits

2017-10-11 Thread Eduard Staniloiu via Digitalmars-d

On Monday, 9 October 2017 at 13:38:18 UTC, lithium iodate wrote:
On Monday, 9 October 2017 at 00:24:02 UTC, Jonathan M Davis 
wrote:

[…]


Thanks for the tip!


You might also want to use automatic word wrapping [0] for 120 
chars.


Cheers,
Eduard

[0] - http://vim.wikia.com/wiki/Automatic_word_wrapping


Re: newCTFE Status August 2017

2017-10-11 Thread Per Nordlöw via Digitalmars-d

On Wednesday, 11 October 2017 at 07:39:47 UTC, Tourist wrote:
What about October 2017? I miss your frequent updates on 
newCTFE.


Me too.


Re: newCTFE Status August 2017

2017-10-11 Thread Tourist via Digitalmars-d

On Tuesday, 1 August 2017 at 21:27:32 UTC, Stefan Koch wrote:

Hi Guys,

At the end of July newCTFE became capable of executing the 
bf-ctfe[1] code and pass the tests.

At 5 times the speed. While using 40% the memory.
(It should be noted that the code generated by bf-ctfe is 
optimized to put as little pressure on ctfe as possible and 
tries to avoid the pathological paths which is why the speed 
improvement is not as high as some other code I showed before)


[...]


What about October 2017? I miss your frequent updates on newCTFE.


Re: D on quora ...

2017-10-11 Thread Laeeth Isharc via Digitalmars-d

On Sunday, 8 October 2017 at 04:23:50 UTC, Jerry wrote:

On Saturday, 7 October 2017 at 06:19:01 UTC, Brad Roberts wrote:


As always, focusing on the users of the language tends to pay 
a lot more dividends than focusing on nay sayers.  Luckily, 
that's how things tend to proceed here, so yay for that.


Doesn't feel like that when the views of the people in charge 
don't align with what people are saying. I can understand 
people's dissatisfaction with Windows, but some people take it 
too far. The compiler for Windows is built using 32-bit, not 
only is the 64-bit version not built it's not even supported or 
tested. I think someone made a post a little while ago about 
LDC that 95% or more of downloads for their compiler were for 
the 64-bit version. If only one version is to be supported then 
it should be the 64-bit version. I can't even imagine the 
outrage there would be if 64-bit wasn't supported on Linux. 
Hell, they haven't even bothered setting up AppVeyor for dmd, 
free testing on Windows. Niche within a niche, can't expect 
much I guess.


You know it's not that hard to be the change you wish to see in 
the world.  That's really the whole point of open source, or at 
least of at least reasonably or more free software - you're not 
at the mercy of a paid vendor to whom you pay a fortune for the 
favour of them closing or otherwise creatively ignoring your 
tickets.  You can pretty easily fix many problems and irritations 
yourself, and if you're too busy then one can pay someone to do 
it, and if one is busy and has no money to spend right now one 
can try to persuade someone to work on it. But if one just 
grumbles, probably the result will be just what anyone would 
expect.


64 bit command line build didn't seem to work for a while.  
That's been fixed recently, as I recall.  One can't really 
compare Linux and Windows 32 and 64 bit.  Those worlds work very 
differently.  Windows is as it is because they are fanatical 
about maintaining backwards compatibility.  So unless you run out 
of memory then 32 bit compiler isn't much of a restriction.  And 
if you are doing so much ctfe that you run out of memory, chances 
are you can figure out how to build the 64 bit compiler on 
Windows!


Try using digger - might work now that the 64 bit command line 
build works again.  And failing that maybe file a request on 
bugzilla.  And I don't know but I guess if you contribute 
something to the D Foundation, probably - because it's still 
quite new - it will be easier to get people to listen to a gentle 
request to have a downloadable 64 bit compiler.  These things do 
cost money, and right now I think somebody is paying for that out 
of the goodness of their heart...




Re: My first experience as a D Newbie

2017-10-11 Thread rikki cattermole via Digitalmars-d

On 11/10/2017 8:23 AM, Peter R wrote:

snip

4. it took a while to see that the DMD builds come with x86 windows 
libraries, but no x64 windows libraries. That seems strange in this day 
and age


We should document this on the download page making it obvious why you 
also need VS.




My first experience as a D Newbie

2017-10-11 Thread Peter R via Digitalmars-d
I've recently started evaluating D, and I thought as a D newbie 
(but 20 year game dev veteran) I should share the things I felt 
were missing or unclear, so you can decide if you want to do 
something to cater new users. So my first notes are


1. Reading about D online: There is a decent amount of 
information seems old, and it's hard to tell for newbies that D1 
and D2 are different. Andrei's book seems like it is still the 
best reference for the actual language, but since it is 7 years 
old, as a newbie I expected it to be out of date. Maybe a 2nd 
edition?
2. Set up the dev environment: While the language is solid, and 
the base DMD install and "hello world" are easy to get going, 
getting a full IDE configured is a lot more work. I would really 
like a comprehensive guide to go from there to having a full 
environment set up in for example VS Code. I've spent weeks 
trying to get VS Code configured, and still haven't gotten 
debugging to work. An idiot-proof step by step guide would be 
nice, maybe like this "step 1 install VS Code from this link, DMD 
from this link, Dub from this link, step 2 install these 5 
extensions in VS Code, step 3 make these manual changes to the 
configuration, step 4 download this sample project and open it, 
step 5 here are the 5 important commands you need to build and 
run". If there was a 15-minute guide, it would be much easier to 
get to the parts that matter.
3. Setting up the dev env,take 2: Visual-D seems a lot easier to 
configure, and it had functional samples. However, it was strange 
that it doesn't use dub files directly and instead needs them 
converted to visual studio build projects. I would prefer if it 
the msbuild projects would just directly call Dub, as Dub seems 
like the gold standard. My first attempt at generating a solution 
from a dub project failed, so it feels maybe a bit unfinished. It 
would also be great if Visual-D had a few more detailed templates 
built in, maybe a Derelict SDL window, for example.
4. it took a while to see that the DMD builds come with x86 
windows libraries, but no x64 windows libraries. That seems 
strange in this day and age


I'm still very new on the actual language, but thought it better 
that I share this while it is still fresh.