DIP 1032--Function Pointer and Delegate Parameters--Withdrawn

2020-08-28 Thread Mike Parker via Digitalmars-d-announce
At the end of the final review of DIP 1032, "Function Pointer and 
Delegate Parameters Inherit Attributes from Function", Walter 
informed me he had decided he would reject the DIP on the grounds 
that it doesn't offer enough utility to justify the potential for 
code breakage. Since the DIP was not yet in the Formal Assessment 
stage, and there's no need to keep it around in the Post-Final 
queue, I've marked it as 'Withdrawn' and it has now been 
relegated to the graveyard of the 'DIPS/other' directory.


https://github.com/dlang/DIPs/blob/master/DIPs/other/DIP1032.md



SAOC 2020 Projects and Participants

2020-08-23 Thread Mike Parker via Digitalmars-d-announce
If you're interested in following along with the progress of 
Symmetry Autumn of Code 2020, you can start with this blog post, 
where I briefly introduce the participants and their SAOC 
projects:


https://dlang.org/blog/2020/08/23/symmetry-autumn-of-code-2020-projects-and-participants/




SAOC 2020 Phase One

2020-08-17 Thread Mike Parker via Digitalmars-d-announce
We've passed the SAOC 2020 application deadline and have received 
a handful of applications. The SAOC committee will evaluate them 
over the coming days. I'll announce the participants and their 
projects next Sunday, August 23 with and introduction the 
participants and their projects on the blog.


Thanks to everyone who submitted an application. And special 
thanks to Razvan and Edi for the good work they're doing in 
stoking interest in D!





SAOC 2020 Deadline & DConf Online 2020 Swag

2020-08-09 Thread Mike Parker via Digitalmars-d-announce
Hello folks. I've put some deadline reminders and announced some 
new swag on the blog. If you're hoping to participate in SAOC 
2020, the application deadline is a week away!


https://dlang.org/blog/2020/08/09/deadlines-and-new-swag/


DIP 1032--Function Pointer and Delegate Parameters...--Final Review Begins

2020-08-03 Thread Mike Parker via Digitalmars-d-announce
The Final Review for DIP 1032, "Function Pointer and Delegate 
Parameters Inherit Attributes from Function", has begun.


The purpose of the Final Review is a last check to make sure 
everything is in good shape. Generally, we aren't looking for 
major revisions to the DIP unless someone notices something 
critical. This is a chance for any revisions made in the previous 
review round to be scrutinized. Even if no revisions were made, 
it's a final opportunity to catch any problems that may have been 
missed before.


Please discuss the features of the proposal (its merits, its 
implementation, peripheral topics, etc.) in the Discussion Thread 
and save all review feedback (critiques on the content of the 
DIP: what to change, how to improve it, etc.) for the Feedback 
Thread.


Discussion Thread:
https://forum.dlang.org/post/ubcwhqxyjizccoekp...@forum.dlang.org

Feedback Thread:
https://forum.dlang.org/post/axjajqhksecqdserc...@forum.dlang.org


Re: The ABC's of Templates in D

2020-08-01 Thread Mike Parker via Digitalmars-d-announce

On Friday, 31 July 2020 at 22:58:07 UTC, Mario Kröplin wrote:

On Friday, 31 July 2020 at 13:46:43 UTC, Mike Parker wrote:

The blog:
https://dlang.org/blog/2020/07/31/the-abcs-of-templates-in-d/


Minor detail: in "Even shorter syntax" the point is not that 
the template has only one parameter, but that the template 
argument is only one token long (for example, no `char[]`).


Double thanks! The entirety of the first sentence in that section 
was problematic.


Re: The ABC's of Templates in D

2020-08-01 Thread Mike Parker via Digitalmars-d-announce

On Friday, 31 July 2020 at 17:55:54 UTC, Bruce Carneal wrote:



Good writing for the not-quite-beginner-and-up audience Mike.  
Reading it reminded me of how much I had been taking for 
granted, of how much power D provides with minimal drag.  
Really hope I never have to go back to C++/CUDA.  Also enjoying 
your book.


Looking forward to additional blog posts.


Thanks! I'm hoping for a few volunteers to step forward to 
produce some of those additional posts. There's a pile of 
unpublished D template know-how out there that would make for 
some interesting reading.


Re: The ABC's of Templates in D

2020-08-01 Thread Mike Parker via Digitalmars-d-announce

On Friday, 31 July 2020 at 17:57:58 UTC, H. S. Teoh wrote:

On Fri, Jul 31, 2020 at 01:46:43PM +, Mike Parker via




Not sure how blog-worthy this is,


It is! I'll be in touch :-)



Re: The ABC's of Templates in D

2020-08-01 Thread Mike Parker via Digitalmars-d-announce

On Friday, 31 July 2020 at 22:58:07 UTC, Mario Kröplin wrote:

On Friday, 31 July 2020 at 13:46:43 UTC, Mike Parker wrote:

The blog:
https://dlang.org/blog/2020/07/31/the-abcs-of-templates-in-d/


Minor detail: in "Even shorter syntax" the point is not that 
the template has only one parameter, but that the template 
argument is only one token long (for example, no `char[]`).


Thanks! That I didn't think about it when writing this made me 
wonder if I noted it in the book.


Re: The ABC's of Templates in D

2020-07-31 Thread Mike Parker via Digitalmars-d-announce

On Friday, 31 July 2020 at 15:24:46 UTC, Ali Çehreli wrote:

On 7/31/20 6:46 AM, Mike Parker wrote:


The blog:
https://dlang.org/blog/2020/07/31/the-abcs-of-templates-in-d/


An excellent article and the ideas are delivered expertly, in a 
very natural way.


And there are almost no typos. ;)

comfusing ->
confusing

a normal a function ->
a normal function

declare first declare ->
first declare

implemnted ->
implemented

Ali


As usual, thanks! I should start sending all of my blog posts to 
you before I publish :-)





The ABC's of Templates in D

2020-07-31 Thread Mike Parker via Digitalmars-d-announce
I'm planning to publish several articles and tutorials about D 
templates over the next few months. As a means of setting the 
stage, I've published this tutorial on the basics.


The blog:
https://dlang.org/blog/2020/07/31/the-abcs-of-templates-in-d/

Reddit:
https://www.reddit.com/r/programming/comments/i17n5d/the_abcs_of_templates_in_d/

I've got a few more posts on the topic that I intend to write 
myself, one of which will incorporate Stefan Koch's dive into a 
template instantiation. But I'm also looking for guest posts 
demonstrating specific instantiations (heh) of templates in 
real-world D code.


If you've got a code base that uses templates in interesting 
ways, please get in touch! We do offer a bounty for guest posts, 
so you can help with a bit of PR and make a bit of cash at the 
same time.


Re: DIP 1030--Named Arguments--Final Review Begins

2020-07-27 Thread Mike Parker via Digitalmars-d-announce

On Tuesday, 28 July 2020 at 04:18:11 UTC, Cecil Ward wrote:



Mike, is this going to go ahead?


You can see the status of every active DIP here:

https://github.com/dlang/DIPs/blob/master/DIPs/README.md

As a rule, every DIP in that top table is going to go ahead 
unless a) the author explicitly asks me to stop or postpone the 
process or b) the author becomes unresponsive.


You'll see there that 1030 is currently in Formal Assessment, 
meaning Walter and Atila are evaluating it. I emailed them a few 
days ago to kick it off, so we should hear a verdict in the next 
two or three weeks.


And thanks for asking! You've made me realize I should start 
announcing when a Formal Assessment begins.


DIP 1029--Add throw as Function Attribute--Formal Assessment

2020-07-25 Thread Mike Parker via Digitalmars-d-announce
Now that our new DIP rules have been announced, I'm going to get 
the DIP process moving again. And the first thing on the list is 
the announcement that DIP 1029, "Add throw as Function Attribute" 
has been accepted.


https://github.com/dlang/DIPs/blob/master/DIPs/accepted/DIP1029.md

The rationale is in the DIP's Review Summary, but I quote it here 
for convenience:


"This DIP was accepted with no request for revision.

The Language Maintainers felt that arguments suggesting 
alternative syntax, such as @throw or throw!bool, are not 
persuasive. The motivation behind @ in attribute names is to 
provide an alternative to the introduction of new keywords. 
However, throw is already a keyword, and adding @throw would 
introduce an incongruity with nothrow. Leaving them both as-is is 
the simplest approach. throw!bool would render nothrow redundant 
and is inconsistent with the existing set of built-in attributes.


Also, there were no strong objections to the proposal itself. 
Although some objections were raised to the introduction of a 
counter to nothrow alone as opposed to a broader proposal 
encompassing all similar attributes, the Language Maintainers see 
no problem. This DIP is focused solely on the obvious application 
of the existing throw keyword to its new role. Any larger changes 
to attribute syntax are beyond its scope."


Re: DConf Online 2020 (Formal Announcement)

2020-07-23 Thread Mike Parker via Digitalmars-d-announce

On Thursday, 23 July 2020 at 14:57:09 UTC, Paul Backus wrote:

On Thursday, 23 July 2020 at 14:43:23 UTC, Mike Parker wrote:
I've just published the formal announcement of DConf Online 
2020 to the blog and shared it on reddit. If you have time, 
please check the comments in the reddit thread for any 
questions you can answer and myths you can refute about D!


The blog:
https://dlang.org/blog/2020/07/23/dconf-online-2020-call-for-submissions/

Reddit:
https://www.reddit.com/r/programming/comments/hwgshr/dconf_d_programming_language_conference_online/


Typo: the link to the DConf Online 2020 website actually goes 
to the DConf 2019 website.


There are three of them! Thankfully, only one was wrong (and I 
was sure I clicked them all). Thanks!


DConf Online 2020 (Formal Announcement)

2020-07-23 Thread Mike Parker via Digitalmars-d-announce
I've just published the formal announcement of DConf Online 2020 
to the blog and shared it on reddit. If you have time, please 
check the comments in the reddit thread for any questions you can 
answer and myths you can refute about D!


The blog:
https://dlang.org/blog/2020/07/23/dconf-online-2020-call-for-submissions/

Reddit:
https://www.reddit.com/r/programming/comments/hwgshr/dconf_d_programming_language_conference_online/




Re: DConf Online 2020 (Soft Announcement)

2020-07-21 Thread Mike Parker via Digitalmars-d-announce
On Friday, 17 July 2020 at 16:11:19 UTC, Steven Schveighoffer 
wrote:



I'm curious about the live coding format - is that something 
that other conferences have done? I admit I've never watched a 
live coding session.




I don't know that other conferences have done it (haven't seen 
any), but it's an easy livestream event to do. What I'm hoping 
for this sort of thing is to see a focused tutorial with a fixed 
start point and end point.


DConf Online 2020 (Soft Announcement)

2020-07-17 Thread Mike Parker via Digitalmars-d-announce

DConf Online 2020 is on!

https://dconf.org/2020/online/index.html

Please note that this is a soft announcement. Please don't share 
the website or the announcement on social media just yet. I want 
to have a chance to revise the details if needed before we do 
that. I'll publish a blog post next week with a more formal 
announcement and will share that to the world at large.


Some brief notes about how we currently envision things:

* Pre-recorded talks will be scheduled to premiere at specific 
times on our YouTube channel on Saturday and Sunday.
* Speakers in the pre-recorded talks will need to be available 
for a livestream Q & A session that will run in parallel to the 
talk and for an additional 15 minutes beyond. We'll monitor 
multiple sources in addition for questions (the chat in the video 
premier, the Q & A livestream chat, slack, discord, IRC).
* If you have ever done any livecoding and enjoy it, please 
consider proposing a session for DConf. I'll set up a restreamer 
so that you can stream to both your channel of preference and the 
foundation's YouTube channel. You'll need to know ahead of time 
what your goals for the session are and how you'll achieve them. 
If we can have at least one session per day, we'll be very happy.
* We'll have at least one livestreamed panel (the traditional Ask 
use Anything) and are eagerly looking for interesting panel ideas.
* I'm hoping to convince a handful of people to organize and run 
a #BeerConf starting the day before the conference (Friday the 
20th) and going through Sunday.
* Currently planning to kick off around 3:00 PM UTC on Saturday 
and Sunday so that folks on the US West Coast don't have to get 
up before sunrise to participate. Those of us in Asia will have 
to make do.


As the web page says, after the event we'll be launching a new 
playlist on the foundation's YouTube channel (The D Community 
Presents). It's our goal to accept as many of the DConf 
submissions as possible since we aren't physically constrained by 
time and space. We want to post *every* pre-recorded talk to 
YouTube. Those we don't select to premiere for the conference we 
can instead post once a week to the new playlist afterward. And 
we'll continue to accept submissions to the playlist as time goes 
by.


And yes, we hope to make this an annual event. Real-world DConf 
in May, online DConf in November.


Please let me know if anything about the submission process is 
unclear and I'll update the page. I do not want to post details 
about the process of prepping the videos; I'm reserving that for 
those who are actually accepted. And I'm holding off on the 
details of exactly how we'll be doing the livestreaming, as that 
may change. We'll make some test runs to ensure that everything 
we want to do actually works and I'll update the page as we get 
closer to the dates.





Re: From the D Blog: A Pattern for Head-mutable Structures

2020-06-27 Thread Mike Parker via Digitalmars-d-announce

On Saturday, 27 June 2020 at 17:58:50 UTC, Avrina wrote:



They are actually going against their rules and are actively 
trying to game their algorithm by telling D's community to 
search for the article instead of providing.


So actually, I'd they also wanted to follow tand respect the 
rules of another community, then they would be providing a 
direct link. What they are doing now is going against their 
rules by trying to bypass their algorithm for more fake 
internet points.


I don't know why you're so worked up about this, but please 
scroll up and read what I wrote. Nowhere have I asked for anyone 
to upvote the post. I want people to know it's there so that 
those who would like to do so can head over and comment. Whether 
you upvote or not is up to you, but if you do so I would like it 
to count. I also don't want direct links harming our ranking. 
That gets more eyes on the post and helps us all in the long run.


If that's not good enough for you, then I have nothing else to 
say on the matter.





Re: From the D Blog: A Pattern for Head-mutable Structures

2020-06-26 Thread Mike Parker via Digitalmars-d-announce

On Saturday, 27 June 2020 at 03:56:58 UTC, Clarice wrote:

Don't forget moderating the newsgroups! Heck, managing DIPs and 
their discussions alone is worthy of gratitude. So thank you, 
Mike.


Thanks Clarice! And Dennis!


Re: From the D Blog: A Pattern for Head-mutable Structures

2020-06-26 Thread Mike Parker via Digitalmars-d-announce

On Saturday, 27 June 2020 at 03:27:14 UTC, Adam D. Ruppe wrote:

On Friday, 26 June 2020 at 14:02:14 UTC, Mike Parker wrote:

But if you do want to vote, I'd like your vote to count.


I've seen no evidence that this strategy actually works. 
Appears totally random if a D post sticks around or not. And in 
a great many of these posts, people complain that they can't 
find the post at all which definitely doesn't help anything.


I haven't seen anyone complaining they can't find the posts, just 
that I don't provide the links.


It's three steps (two on a 4k monitor):

1. Go to https://news.ycombinator.com
2. Hit the 'End' key to get to the search box at the bottom of 
the page

3. Enter all or part of the blog post title in the search box

After that, it's in the browser history. I have never not been 
able to find the post doing this.




Are you sure it is worth it?


Like I said above, there are other factors that determine a 
post's success on HN and it's always hit or miss. So far, I 
haven't been able to turn up any foolproof advice. But those who 
have attempted to crack the secret all say that if people are 
following direct links, it will definitely hinder the post's 
performance and a miss is pretty much guaranteed. The FAQ says 
clearly:


"Can I ask people to upvote my submission?

No. Users should vote for a story because they personally find it 
intellectually interesting, not because someone has content to 
promote.


HN's software penalizes submissions, accounts, and sites that 
break this rule, so please don't."


Obviously, HN isn't going to scrape referring sites to check for 
people explicitly asking for upvotes. We know for certain that 
direct links disqualify upvotes, there's evidence to suggest that 
they account for indirect hits to a post from direct links to 
other parts of the site, and I can't find any information on if 
any of this is factored into the ranking algorithm in another way.


So yes, if people from this community want to monitor the 
comments on a HN site, I think it's worth it to ask them to take 
a couple of extra steps to do so in the interest of avoiding a 
negative impact on the post's ranking. If the post turns out to 
be a miss, it wasn't because of anything we did. If we do get 
lucky and hit the front page, then we've got more eyes on the 
post, our community members have more opportunity to share their 
experience, and we get (hopefully) a good PR day for D.


Re: From the D Blog: A Pattern for Head-mutable Structures

2020-06-26 Thread Mike Parker via Digitalmars-d-announce

On Friday, 26 June 2020 at 17:02:05 UTC, Avrina wrote:

"It says a lot about the priorities when you can't even get a 
simple link, community comes last."


If the community came last for me, I wouldn't be doing the work I 
do. I'd be focusing on my own projects. So try again.


Re: From the D Blog: A Pattern for Head-mutable Structures

2020-06-26 Thread Mike Parker via Digitalmars-d-announce

On Friday, 26 June 2020 at 13:04:27 UTC, Adam D. Ruppe wrote:

On Friday, 26 June 2020 at 08:36:06 UTC, Mike Parker wrote:
I wouldn't be so sure. See the "Anti-Voting Manipulation" 
section here:


you telling us to vote in a specific way is already gaming the 
system.


stop trying to manipulate their idiotic algorithm and just 
focus on delivering value to the community.


I'm not telling you to vote a specific way. But if you do want to 
vote, I'd like your vote to count. I always type the blog post 
title in the search bar. Is it really that difficult?


Re: From the D Blog: A Pattern for Head-mutable Structures

2020-06-26 Thread Mike Parker via Digitalmars-d-announce

On Friday, 26 June 2020 at 07:35:17 UTC, JN wrote:



Here's some examples of blog posts that got popular on reddit 
last week. They're short enough and can be understood without 
deep understanding of the language:


We've had long, D-specific posts be successful on reddit on more 
than one occasion. On HN as well. Sometimes they catch on, 
sometimes they don't. I always aim for an optimal window on 
reddit [1] and sometimes use an alternative, catchier title if it 
fits (I learned a valuable lesson with Liran's interview when I 
didn't include "the World's Fastest File System" in the reddit 
post -- I used it on HN and it hit big).


But I've noticed these days that most of our successful blog 
posts have a slow burn on reddit. They stay in the low teens for 
a day or so and then start to tick up. More interesting to me is 
the upvote *rate*. Anything over 75% makes me happy. As I write, 
Simen's post has 14 upvotes and an 82% upvote rate. And no D 
bashing in the comments. In my book, that's a successful post.


HN is always hit or miss. Unlike /r/programming, the HN front 
page changes rapidly. When a post catches on, it's always big. 
Otherwise it fades away quickly. From what I can tell it's mostly 
a matter of timing there. Also, if I don't share a post on HN, 
someone else inevitably will. And it's the same story: big or 
nothing.


[1] 
https://dashboard.laterforreddit.com/analysis/?subreddit=%2Fr%2Fprogramming=5


Re: From the D Blog: A Pattern for Head-mutable Structures

2020-06-26 Thread Mike Parker via Digitalmars-d-announce

On Friday, 26 June 2020 at 06:52:58 UTC, Andrej Mitrovic wrote:



Isn't it possible to just paste to the search results? 
https://hn.algolia.com/?q=A+pattern+for+head+mutable


Then presumably after clicking on comments you would be allowed 
to upvote.


I wouldn't be so sure. See the "Anti-Voting Manipulation" section 
here:


https://github.com/minimaxir/hacker-news-undocumented

"One popular "trick" for obfuscating voting manipulation on 
Hacker News is to link to the Hacker News's /newest page of new 
submissions (instead of a direct link which would otherwise make 
voting manipulation obvious), and asking friends to upvote the 
submission from that page. This trick doesn't actually work."


I suspect they track HTTP referrers and red flag multiple hits to 
the same link from the same referrer. However they do it, I would 
expect linking directly to search results is something they 
account for.


Re: From the D Blog: A Pattern for Head-mutable Structures

2020-06-26 Thread Mike Parker via Digitalmars-d-announce
On Friday, 26 June 2020 at 05:37:13 UTC, Arun Chandrasekaran 
wrote:


This is a very interesting post. But this strategy with HN is 
clearly not working. 5 upvotes after 17 hours and 0 comments. 
Please paste the direct link in future even if the ranking goes 
down after a few hours. Some publicity is better than nothing 
at all.


Upvotes aren't counted when you follow a direct link. So no, I 
won't be posting direct links.


From the D Blog: A Pattern for Head-mutable Structures

2020-06-25 Thread Mike Parker via Digitalmars-d-announce
Simen Kjærås outlines an approach to supporting head-mutable 
types in D without the need for compiler or language changes.


The blog:
https://dlang.org/blog/2020/06/25/a-pattern-for-head-mutable-structures/

Reddit:
https://www.reddit.com/r/programming/comments/hfkq5e/a_pattern_for_headmutable_structures_in_d/

I've also submitted it to HN (please use the search box):

https://news.ycombinator.com/newest




Re: News on the D Blog: SAOC 2020 and More

2020-06-23 Thread Mike Parker via Digitalmars-d-announce

On Tuesday, 23 June 2020 at 13:45:56 UTC, user1234 wrote:



That is interesting, that means that dlang users spent 
~57,600.0 bucks on Amazon recently.
And that's probably only a minority as people don't necessarily 
remembers that smile.amazon thing.


That's not recent. It's the total they've paid out since the 
foundation has been part of the program. I'm not sure when Andrei 
signed up for it.


Re: News on the D Blog: SAOC 2020 and More

2020-06-23 Thread Mike Parker via Digitalmars-d-announce

On Tuesday, 23 June 2020 at 12:00:06 UTC, Mike Parker wrote:
Symmetry Autumn of Code 2020 is on! My latest news post on the 
D Blog talks about that, some D Language Foundation finance 
updates, and whispers on the wind.


And you can read all about it here:

https://dlang.org/blog/2020/06/23/saoc-2020-and-other-news/


News on the D Blog: SAOC 2020 and More

2020-06-23 Thread Mike Parker via Digitalmars-d-announce
Symmetry Autumn of Code 2020 is on! My latest news post on the D 
Blog talks about that, some D Language Foundation finance 
updates, and whispers on the wind.


DIP 1035--@system Variables--Community Review Round 1 Begins

2020-06-10 Thread Mike Parker via Digitalmars-d-announce
The first round of Community Review for DIP 1035, "@system 
Variables", is now underway. Please discuss the DIP (its merits, 
its implementation, peripheral topics, etc.) in the Discussion 
Thread and save all review feedback (critiques on the content of 
the DIP: what to change, how to improve it, etc.) for the 
Feedback Thread.


Discussion Thread:
https://forum.dlang.org/post/tgtrbqrjetdveznzx...@forum.dlang.org

Feedback Thread:
https://forum.dlang.org/post/teoiwvqqpfqcyfndu...@forum.dlang.org


Re: On the D Blog: A Looat at Chapel, D, and Julia Using Kernel Matrix Calculations

2020-06-03 Thread Mike Parker via Digitalmars-d-announce

On Wednesday, 3 June 2020 at 16:15:41 UTC, jmh530 wrote:



Typo (other than Mike's headline):
"In our exercsie"
"Chapel’s arrays are more difficult to get started with than 
Julia’s but are designed to be run on single-core, multicore, 
and computer clusters using the same or very similar code, 
which is a good unique selling point." (should have comma 
between Julia's and but)


Not really. Of the top of my head, the general rules with commas 
and conjunctions that apply in this case are that you only use a 
preceding comma when:


* you have a subject and verb after the conjunction (in this 
case, if it said "but they are", then a comma would be required)
* the comma would add clarity in an otherwise 
convoluted/ambiguous sentence (which I don't think is the case 
here)
* artistic license (the author wants to indicate a pause, 
something more common in fiction writing)


Though multicore should have a hyphen.


On the D Blog: A Looat at Chapel, D, and Julia Using Kernel Matrix Calculations

2020-06-03 Thread Mike Parker via Digitalmars-d-announce
Some of you may have seen a draft of this post from user "data 
pulverizer"  elsewhere on the forums. The final draft is now on 
the D Blog under his real name and ready for your perusal.


The blog:
https://dlang.org/blog/2020/06/03/a-look-at-chapel-d-and-julia-using-kernel-matrix-calculations/

Reddit:
https://www.reddit.com/r/programming/comments/gvuy59/a_look_at_chapel_d_and_julia_using_kernel_matrix/

I'll be posting on HN, too, but please don't share a direct link. 
I did some digging around and it really does affect the ranking 
-- your upvotes won't count.


Re: unit-threaded v1.0.0

2020-06-01 Thread Mike Parker via Digitalmars-d-announce

On Monday, 1 June 2020 at 09:08:01 UTC, Russel Winder wrote:


Secondarily lack of understanding of the scope rules of 
multiple unittest blocks.


In the end though I use whatever is provided. So if functions 
are for the chop, I will switch to using labelled unittest 
blocks.


Each unittest block is a function.


Re: BindBC Updates: new loader function, SDL_net, streamlined SDL_* version indentifiers

2020-05-24 Thread Mike Parker via Digitalmars-d-announce

On Sunday, 24 May 2020 at 06:39:27 UTC, Daniel C wrote:




"If you don't use dmd for linking, make sure to add 
legacy_stdio_definitions.lib to your command line when linking 
against the VS2015 runtime."


Good find. If I was ever aware of that, I had forgotten about it.



Anyway, thanks for your help Mike! Without it I may have given 
up on D for another year or so ;-)


Glad I could help!


Re: BindBC Updates: new loader function, SDL_net, streamlined SDL_* version indentifiers

2020-05-23 Thread Mike Parker via Digitalmars-d-announce

On Sunday, 24 May 2020 at 04:16:10 UTC, Daniel C wrote:

On Saturday, 23 May 2020 at 19:59:51 UTC, Daniel C wrote:

I'll be mucking around with it again later.


Well, I'm having limited success.  I got 32-bit compile/run 
using basic -m32, and -m64 compiles but crashes lol.  Trying 
out 32-bit -m32mscoff with Microsoft Build Tools (2019) 
resulted in this mess:
phobos32mscoff.lib(runtime_c8b_76e.obj) : error LNK2001: 
unresolved external sym

bol _printf
phobos32mscoff.lib(parseoptions_d98_7cf.obj) : error LNK2001: 
unresolved externa

l symbol _printf
phobos32mscoff.lib(gc_244f_122.obj) : error LNK2001: unresolved 
external symbol

_printf
phobos32mscoff.lib(msvc_32mscoff.obj) : error LNK2001: 
unresolved external symbo

l __vsnprintf
phobos32mscoff.lib(parseoptions_d93_21b.obj) : error LNK2001: 
unresolved externa

l symbol _sscanf

Frustrating!  I don't even know where to go for help with that 
stuff.  Through experimentation, I was able to compile with 
older Visual C++ 2010 tools, but I'd rather not be using 10 
year old tech.


There should be no need to revert to VS 2010. These errors 
indicate that something in your build process or setup is borked.


Have you tried building your app with dub and using bindbc-sdl as 
a dependency rather than doing it separately DMD? This way, you 
can ensure that everything is being compiled with the same 
options and the linker is getting the correct libraries.




Maybe this wasn't the time for me to come back lol


I would say it's generally much easier to build D projects these 
days than it ever has been. We just need to figure out where 
you're going wrong.




Re: BindBC Updates: new loader function, SDL_net, streamlined SDL_* version indentifiers

2020-05-22 Thread Mike Parker via Digitalmars-d-announce

On Saturday, 23 May 2020 at 03:29:44 UTC, Daniel C wrote:

On Saturday, 23 May 2020 at 03:25:12 UTC, Daniel C wrote:
I'm building my app without dub.  I've now put all the source 
files into the same folder as my project and I'm still seeing 
the same undefined symbol issue.


I should say, I put the bindbc library into a subfolder. So 
it's like this:


project/bindbc/sdl/bind

The SDL lib files are in the same folder with the source, 
primarily because the LIB environment variable was being 
ignored by the compiler/linker.


I suggest you create project/lib and drop the SDL libraries there 
along with the bindbc-sdl library and pass the path to the 
linker. Since you should be using the MS linker (see below), it 
expects the /LIBPATH option 
(https://docs.microsoft.com/en-us/cpp/build/reference/libpath-additional-libpath?view=vs-2019), which you can add to your dmd commandline as `-L/LIBPATH:lib`. Of course, that's assuming you've got the Microsoft Build Tools installed either independently or as part of a Visual Studio installation. If not, you'll be using the LLVM linker that ships with DMD. I believe in that case it should be `-L-Llib`.


If you really want 32-bit and to statically link with the SDL 
import libraries, I strongly recommend you use the -m32mscoff dmd 
options (and the corresponding -ax86_mscoff dub option). The SDL 
libraries are distributed as COFF, not OMF, so using OPTLINK 
would require converting the lib files to OMF first.


Re: BindBC Updates: new loader function, SDL_net, streamlined SDL_* version indentifiers

2020-05-22 Thread Mike Parker via Digitalmars-d-announce

On Saturday, 23 May 2020 at 03:25:12 UTC, Daniel C wrote:

On Saturday, 23 May 2020 at 01:23:38 UTC, Mike Parker wrote:
What download are you referring to? I don't have any library 
files in the git repository, and I don't know of any downloads 
from the duo repository.


Huh.. I'm not sure, it must have gotten there when I dub'd 
something lol.  Sorry


It gets there when you build it :-)



Also, when setting it to static compile, it complains during 
linking there are missing functions, even though I've already 
added the appropriate SDL library files.


What are the missing symbols?


This is what I'm getting:
 Error 42: Symbol Undefined 
__D6bindbc3sdl4bind9sdlevents9SDL_Event6__initZ


This isn't a symbol from the SDL library. It's a D symbol from 
the binding.




Are you building it separately from your app? Or is it a 
dependency in your app's dub configuration?


I did build it using dub from the downloaded folder, but I 
suppose that was pointless as the .lib file that's generated 
isn't even recognized.


I'm building my app without dub.  I've now put all the source 
files into the same folder as my project and I'm still seeing 
the same undefined symbol issue.




Please provide the commands you are using and the errors you 
are seeing. Then I can have an idea of what's going on.


dmd.exe sdl_bindbc_test.d -g -m32 -w -debug 
-version=BindSDL_Static -version=SDL_2012 
-version=SDL_Image_205 SDL2.lib SDL2_image.lib


You didn't link with the bindbc-sdl library. But a couple of 
points about that -m32 option:


1. On Windows, DMD always builds with -m32 by default, so you 
don't need to specify it.
2. It means you're using the default OPTLINK linker which 
requires object files in the OMF format.
3. The COFF format is more common in the Windows ecosystem, which 
the -m32mscoff and -m64 options will cause to be generated
4. Unlike DMD, dub will use the system architecture on Windows 
for the default build, meaning on 64-bit Windows it will 
automatically pass -m64 to DMD.




Honestly it could be something I'm missing.  I saw the 
"-betterC" option in the documentation, but I assumed that my 
entire app would need to use -betterC so I avoided it.


No. You can link to betterC libraries with a normal D app.



Apologies if it's something dumb I'm overlooking.


Essentially, the bindbc-sdl library you built is invalid because 
dub built it with -m64 (unless you explicitly passed -ax86 on the 
dub command line) and you built your app with -m32, giving you 
both an architecture mismatch and an object file format mismatch.


Then your dmd command is missing the bindbc-sdl library, hence 
the linker error.




Re: BindBC Updates: new loader function, SDL_net, streamlined SDL_* version indentifiers

2020-05-22 Thread Mike Parker via Digitalmars-d-announce

On Friday, 22 May 2020 at 22:20:55 UTC, Daniel C wrote:



There is a library file included in the dub repository 
download: https://code.dlang.org/packages/bindbc-sdl


What download are you referring to? I don't have any library 
files in the git repository, and I don't know of any downloads 
from the duo repository.


Also, when setting it to static compile, it complains during 
linking there are missing functions, even though I've already 
added the appropriate SDL library files.


What are the missing symbols?



Oddly, when I use dub to compile the library file for 
bindbc-sdl, when I include that library file during linking it 
causes an error that it's not a valid library file... even 
though it was created with dub + dmd?  Some odd things going 
on.  I'm on Windows 7 x64 btw


Are you building it separately from your app? Or is it a 
dependency in your app's dub configuration?


Please provide the commands you are using and the errors you are 
seeing. Then I can have an idea of what's going on.






Re: DIP1028 - Rationale for accepting as is

2020-05-22 Thread Mike Parker via Digitalmars-d-announce

On Friday, 22 May 2020 at 12:47:04 UTC, matheus wrote:


As an end user, I'd like to know if this language will be 
guided by community or one person, because it seems the 
"democracy" is very shallow right now.


And again why waste time with this process plus 2 rounds of 
discussion?


I mean just do it and tell in this announcement section about 
the feature.




The DIP review process is not intended for community approval or 
rejection of DIPs. It's not a democratic voting process. It's 
intended to elicit community feedback to enhance the DIP under 
review (the Feedback Threead) and to allow the airing of opinions 
(the Discussion Thread). All DIP authors have the freedom to 
incorporate suggestions into their DIP or not, and Walter and 
Atila make the decision to accept or reject. If you look at the 
history of Walter's DIPs, they *do* take the opinions into 
consideration even when he is the author. Several of his previous 
DIPs have been withdrawn or rejected.


If a popular DIP is rejected, it means neither of them were 
convinced by opinion to accept it. And, as in the case for this 
DIP, if an unpopular DIP is accepted, it means they were not 
persuaded by the arguments against it.


From my perspective, the process is working as intended, despite 
the comments to the contrary in this thread. You either convince 
a DIP author to modify his DIP, or you don't. You either persuade 
Walter and Atila to accept or reject it, or you don't.


DIP 1028--Make @safe the Default--Formal Assessment

2020-05-21 Thread Mike Parker via Digitalmars-d-announce
DIP 1028, "Make @safe the Default", has been accepted without 
comment.


https://github.com/dlang/DIPs/blob/master/DIPs/accepted/DIP1028.md


Re: BindBC Updates: new loader function, SDL_net, streamlined SDL_* version indentifiers

2020-05-17 Thread Mike Parker via Digitalmars-d-announce

On Saturday, 16 May 2020 at 09:00:25 UTC, Andre Pany wrote:

A little bit off topic. I wondered whether it is possible to 
combine dpp and bindbc. Maybe a separate Tool which creates a 
bindbc packages based on dpp output or even integrates into dpp?


Did you already considered s.th. like that?



Hasn't even crossed my mind. My first thought is that I don't see 
it as a good fit. Although all of my bindings follow a similar 
pattern, there are details specific to some of the libraries that 
led me to break the pattern. This arises mostly in the way 
different libraries handle their release versioning. Given dpp's 
use case, I don't see it as a generator of bindings that cover 
multiple library versions.


Re: BindBC Updates: new loader function, SDL_net, streamlined SDL_* version indentifiers

2020-05-17 Thread Mike Parker via Digitalmars-d-announce

On Thursday, 14 May 2020 at 09:55:15 UTC, Claude wrote:



As a user of BindBC (and former Derelict), I really enjoy using 
those binding libraries. It's some great work, thanks.


Thanks!


Re: On the D Blog: Lomuto's Comeback

2020-05-14 Thread Mike Parker via Digitalmars-d-announce
On Thursday, 14 May 2020 at 13:40:24 UTC, Andrei Alexandrescu 
wrote:

On 5/14/20 9:26 AM, Mike Parker wrote:


The right way to share something on hackernews is to send 
people to https://news.ycombinator.com/newest and mention the 
time of sharing.


Okay everyone, please use this link or search for "Lomuto's 
Comeback" in the search field.


I've been hearing conflicting accounts of this for a while, with 
more people telling me it doesn't happen anymore. However, it 
seems posts were never flagged as spam for this. Instead, any 
upvotes from people coming through direct links *do not count*. 
Coupled with the fact that the FAQ still says posts are penalized 
for "asking for votes", I'm no longer going to share direct links 
to HN articles.


Found multiple sources about it, but this 2015 post lays it all 
out and I assume it's still mostly relevant:

https://wiredcraft.com/blog/how-to-post-on-hacker-news/

https://news.ycombinator.com/newsfaq.html


On the D Blog: Lomuto's Comeback

2020-05-14 Thread Mike Parker via Digitalmars-d-announce
After reading a paper that grabbed his curiosity and wouldn't let 
go, Andrei set out to determine if Lomuto partitioning should 
still be considered inferior to Hoare for quicksort on modern 
hardware. This blog post details his results.


Blog:
https://dlang.org/blog/2020/05/14/lomutos-comeback/

Reddit:
https://www.reddit.com/r/programming/comments/gjm6yp/lomutos_comeback_quicksort_partitioning/

HN:
https://news.ycombinator.com/item?id=23179160


Re: BindBC Updates: new loader function, SDL_net, streamlined SDL_* version indentifiers

2020-05-13 Thread Mike Parker via Digitalmars-d-announce

On Wednesday, 13 May 2020 at 14:39:13 UTC, Mike Parker wrote:

It's up to the caller to ensure the path is valid. For example, 
if the executable is run from a different directory, then 
"libs" will not be relative to the current working directory. 
`SDL_GetBasePath` can help there:


https://wiki.libsdl.org/SDL_GetBasePath?highlight=%28%5CbCategoryFilesystem%5Cb%29%7C%28CategoryEnum%29%7C%28CategoryStruct%29



Well, duh. I put the cart before the horse on that one. SDL2.dll 
is going to be in the same subdirectory since all the others 
depend on it and will fail to load if it isn't there (they don't 
load it dynamically, of course).


Working with args[0] or, since this is a Windows-only thing, 
calling the Win32 API directly (GetModuleFileName, IIRC) will get 
you there.


BindBC Updates: new loader function, SDL_net, streamlined SDL_* version indentifiers

2020-05-13 Thread Mike Parker via Digitalmars-d-announce
I've recently implemented some improvements centered on 
bindbc-sdl.


== New Loader Function

I've added a function to bindbc-loader (on Windows only) to allow 
adding a single path to the default DLL search path. This is to 
solve the problem that some of the SDL satellite libraries would 
fail to load when placed in a directory outside of the search 
path, such as a ./libs subdirectory.


The problem is that SDL loads its dependencies dynamically. So 
when a bindbc user would load a lib with a custom path, e.g., 
`loadSDLImage("libs\\SDL2_image.dll")`, the system loader would 
find that DLL just fine, but then when it in turn attempted to 
load a dependency like libpng, the system loader would search the 
DLL search path and *not* the libs subdirectory, thereby causing 
a failure.


Now you can do this:

```
version(Windows) setCustomLoaderSearchPath("libs");

if(loadSDL() < sdlSupport) { /* handle error */ }
if(loadSDL_Image() < sdlImageSupport) { /* handle error */ }

// Give SDL_image a chance to load libpng and libjpeg (it loads 
them lazily

// when the corresponding flags are passed to IMG_Init.
auto flags = IMG_INIT_PNG | IMG_INIT_JPEG;
if(IMG_Init(flags) != flags) { /* handle error */ }

// Now reset the default loader search path
version(Windows) setCustomLoaderSearchPath(null);
```

It's up to the caller to ensure the path is valid. For example, 
if the executable is run from a different directory, then "libs" 
will not be relative to the current working directory. 
`SDL_GetBasePath` can help there:


https://wiki.libsdl.org/SDL_GetBasePath?highlight=%28%5CbCategoryFilesystem%5Cb%29%7C%28CategoryEnum%29%7C%28CategoryStruct%29

I'm unaware of any issues with other libraries BindBC binds to, 
but if they do arise, this will solve those, too.


== SDL_net

I didn't initially port SDL_net over because I didn't think 
anyone was using it. I was waiting for someone to request it. 
Someone did. It's a small API, so it took a matter of minutes to 
complete.


== Streamlined SDL_* version identifiers

Previously, the SDL satellite library bindings could be enabled 
with e.g., `BindSDL_Image`, `BindSDL_TTF`, etc. That would enable 
the lowest supported version of the library. To enable a more 
recent version, an additional identifier was required 
(`SDL_Image_205`, `SDL_TTF_2014`). That's just dumb. Now, only 
one identifier is required, e.g., `SDL_Image_205` will do the 
trick by itself now. `SDL_Image` is equivalent to the 
`SDL_Image_200`. The old approach is still supported, though, so 
current build configs should continue to work without change.


See the loader documentation for details on the new function:

https://github.com/BindBC/bindbc-loader

There's also a bit about it in the bindbc-sdl documentation, 
along with the details about the approach to version identifiers.


https://github.com/BindBC/bindbc-sdl/blob/master/README.md

I've got some bigger packages to port over from Derelict yet (the 
OpenCL binding, for example). I've also had a request to include 
support for SDL's thread/mutex API so folks using DasBetterC can 
have access to it. That's all in the pipeline. Going forward, I 
plan to devote a handful of hours one day a week to bindbc until 
I've implemented everything on my task list, so it will get done 
sooner rather than later.




DIP 1030--Named Arguments--Final Review Begins

2020-05-11 Thread Mike Parker via Digitalmars-d-announce

The Final Review for DIP 1030, "Named Arguments", has begun.

The purpose of the Final Review is a last check to make sure 
everything is in good shape. Generally, we aren't looking for 
major revisions to the DIP unless someone notices something 
critical. This is a chance for any revisions made in the previous 
review round to be scrutinized. Even if no revisions were made, 
it's a final opportunity to catch any problems that may have been 
missed before.


Please discuss the features of the proposal (its merits, its 
implementation, peripheral topics, etc.) in the Discussion Thread 
and save all review feedback (critiques on the content of the 
DIP: what to change, how to improve it, etc.) for the Feedback 
Thread.


Discussion Thread:
https://forum.dlang.org/post/osiiuzwesgmaegeko...@forum.dlang.org

Feedback Thread:
https://forum.dlang.org/post/lzpzaoaxzcxeijegf...@forum.dlang.org


Discussion Thread: DIP 1034--Add a Bottom Type (reboot)--Community Review Round 1 Begins

2020-05-06 Thread Mike Parker via Digitalmars-d-announce
The first round of Community Review for DIP 1034, "Add a Bottom 
Type (reboot)", is now underway. Please discuss the DIP (its 
merits, its implementation, peripheral topics, etc.) in the 
Discussion Thread and save all review feedback (critiques on the 
content of the DIP: what to change, how to improve it, etc.) for 
the Feedback Thread.


Discussion Thread:
https://forum.dlang.org/post/ooofastmtzmuylnje...@forum.dlang.org

Feedback Thread:
https://forum.dlang.org/post/arcpszmdarekxtnsn...@forum.dlang.org



Re: Interfacing D with C: Arrays and Functions (Arrays Part 2)

2020-04-28 Thread Mike Parker via Digitalmars-d-announce

On Tuesday, 28 April 2020 at 15:26:49 UTC, David Gileadi wrote:


Another great article!

Nit: in the following paragraph, did you really mean to say 
*are*?


But again, even D’s safety features are 100% foolproof when 
calling C functions from D.


Thanks and thanks!


Interfacing D with C: Arrays and Functions (Arrays Part 2)

2020-04-28 Thread Mike Parker via Digitalmars-d-announce
I've finally gotten around to publishing the next article in my D 
and C series on the D blog. This is the second post about arrays, 
focusing on properly declaring in D functions from C that accept 
array parameters.


The blog:
https://dlang.org/blog/2020/04/28/interfacing-d-with-c-arrays-and-functions-arrays-part-two/

Reddit:
https://www.reddit.com/r/programming/comments/g9o3wi/interfacing_d_with_c_arrays_and_functions_arrays/

HN:
https://news.ycombinator.com/item?id=23007409


Discussion Thread: DIP 1033--Implicit Conversion of Expressions to Delegates--Community Review Round 1 Begins

2020-04-22 Thread Mike Parker via Digitalmars-d-announce
The first round of Community Review of DIP 1033, "Implicit 
Conversion of Expressions to Delegates", has begun.


Feedback Thread:
https://forum.dlang.org/post/nxahrsukobybkezib...@forum.dlang.org

Discussion Thread:
https://forum.dlang.org/post/ecxdylguqkhtmdoml...@forum.dlang.org


Re: bindbc-sdl Updates

2020-04-18 Thread Mike Parker via Digitalmars-d-announce

On Saturday, 18 April 2020 at 15:31:02 UTC, aberba wrote:



There's this level of convenience that is triggered when you 
see a sample demo. It seems some library authors don't get it.


loadSDL();

That's it. It's in the readme.


DIP 1029--Add throw as Function Attribute--Final Review Begins

2020-04-17 Thread Mike Parker via Digitalmars-d-announce
The Final Review for DIP 1029, "Add throw as Function Attribute", 
has begun. Please use the Feedback thread for all feedback 
targeted specifically at the contents of the DIP:


https://forum.dlang.org/post/qhtqeavhyzjfamhgc...@forum.dlang.org

All posts in that thread must adhere to the rules summarized in 
the first post.


Please visit the Discussion thread for free-form discussion of 
the DIP, the proposed feature(s), and tangential topics:


https://forum.dlang.org/post/lyerouocavjvspqwv...@forum.dlang.org


Re: bindbc-sdl Updates

2020-04-16 Thread Mike Parker via Digitalmars-d-announce

On Thursday, 16 April 2020 at 18:55:21 UTC, Luis wrote:

On Wednesday, 15 April 2020 at 22:19:06 UTC, Mike Parker wrote:

On Wednesday, 15 April 2020 at 21:54:16 UTC, Luis wrote:



There isn't a "hello world" example with bindbc-sdl ? Would 
very usefull


Everything you need to know that's specfic to the binding is 
in the readme.


I was asking something like this : 
https://github.com/Zardoz89/dlang-bindbc-sdl-example1


Yeah, anybody could do this before reading SDL2 documentation, 
examining a few SDL2 examples on C/C++ and D (outdated derelict 
examples that only shows a translucent window). This take me 
two afternoons and was something very dumb.


This kind of lack of examples or documentation, not helps to 
make D more popular.


I disagree. There are numerous examples of SDL on the internet. 
There are sites full of SDL tutorials. bindbc-sdl is a binding. 
It doesn't change the API. I'm not going to write example 
programs for every library I create bindings for when plenty of 
examples exist.


Re: bindbc-sdl Updates

2020-04-15 Thread Mike Parker via Digitalmars-d-announce

On Wednesday, 15 April 2020 at 21:54:16 UTC, Luis wrote:



There isn't a "hello world" example with bindbc-sdl ? Would 
very usefull


Everything you need to know that's specfic to the binding is in 
the readme.


Re: DustMite: the General-Purpose Data Reduction Tool (from the D Blog)

2020-04-13 Thread Mike Parker via Digitalmars-d-announce

On Monday, 13 April 2020 at 13:06:30 UTC, Mike Parker wrote:
Vladimir has contributed to the blog an article on the 
evolution of DustMite, looking at some of the challenges he had 
to overcome along the way.


The blog:
https://dlang.org/blog/2020/04/13/dustmite-the-general-purpose-data-reduction-tool/

Reddit:
https://www.reddit.com/r/programming/comments/g0ihse/dustmite_the_generalpurpose_data_reduction_tool/


HN:
https://news.ycombinator.com/item?id=22855633


DustMite: the General-Purpose Data Reduction Tool (from the D Blog)

2020-04-13 Thread Mike Parker via Digitalmars-d-announce
Vladimir has contributed to the blog an article on the evolution 
of DustMite, looking at some of the challenges he had to overcome 
along the way.


The blog:
https://dlang.org/blog/2020/04/13/dustmite-the-general-purpose-data-reduction-tool/

Reddit:
https://www.reddit.com/r/programming/comments/g0ihse/dustmite_the_generalpurpose_data_reduction_tool/




Re: bindbc-sdl Updates

2020-04-10 Thread Mike Parker via Digitalmars-d-announce

On Friday, 10 April 2020 at 14:53:25 UTC, aberba wrote:

On Wednesday, 8 April 2020 at 06:32:39 UTC, Mike Parker wrote:
I've updated the BindBC bindings (to the Simple Direct Media 
Layer (SDL) library and its satellite libraries to support the 
following:


[...]


Mike have you considered a binding to a common tool like SFML 
(https://www.sfml-dev.org/)?


Yes, which is why I have an SFML binding in Derelict. I’ll be 
porting it over to BindBC soonish.


bindbc-sdl Updates

2020-04-08 Thread Mike Parker via Digitalmars-d-announce
I've updated the BindBC bindings (to the Simple Direct Media 
Layer (SDL) library and its satellite libraries to support the 
following:


SDL 2.0.12
SDL_image 2.0.5
SDL_mixer 2.0.4

This is available in bindbc-sdl 0.16.0:

http://bindbc-sdl.dub.pm/

A few notes:

The SDL maintainers have moved to a system of labeling public 
releases with even patch levels and development releases with odd 
patch levels. SDL 2.0.12 is the first release of SDL under that 
system. The same goes for SDL_mixer 2.0.4. SDL_image 2.0.5 was 
released before it took effect.


There is no difference in the public API of SDL_image versions 
2.0.2, 2.0.3, 2.0.4, and 2.0.5, other than the value of the 
SDL_IMAGE_PATCHLEVEL constant.


SDL_mixer 2.0.4 added support for OPUS files. The only API 
changes aside from the patchlevel constant are a couple of new 
values for the Mix_InitFlags and Mix_MusicType enums.


DIP 1032--Function pointers and Delegate Parameters...--Community Review Round 1 Begins

2020-04-03 Thread Mike Parker via Digitalmars-d-announce
The first round of Community Review of DIP 1032, "Function 
pointers and Delegate Parameters Inherit Attributes from 
Function", has begun.


Feedback Thread:
https://forum.dlang.org/post/tkosvxedhztfjxsxt...@forum.dlang.org

Discussion Thread:
https://forum.dlang.org/post/kfftxaescqxzcaycy...@forum.dlang.org


Discussion Thread: DIP 1028--Make @safe the Default--Final Review Begins

2020-03-25 Thread Mike Parker via Digitalmars-d-announce
The Final Review for DIP 1028, "Make @safe the Default", has 
begun. Please use the Feedback thread for all feedback targeted 
specifically at the contents of the DIP:


https://forum.dlang.org/post/wkdpnzarkbtqryigh...@forum.dlang.org

All posts in that thread must adhere to the rules summarized in 
the first post.


Please visit the Discussion thread for free-form discussion of 
the DIP, the proposed feature(s), and tangential topics:


https://forum.dlang.org/post/jelbtgegkwcjhzwze...@forum.dlang.org


DIP 1031--Deprecate Brace-Style Struct Initializers--Withdrawn

2020-03-22 Thread Mike Parker via Digitalmars-d-announce
Walter has decided to withdraw DIP 1031, "Deprecate Brace-Style 
Struct Initializers", from the review process. Anyone who chooses 
to do so may take over the DIP at any time.


Anyone who decides to take over an Abandoned or Withdrawn DIP 
should contact me to determine how to proceed.


Re: Release D 2.091.0

2020-03-17 Thread Mike Parker via Digitalmars-d-announce

On Tuesday, 10 March 2020 at 13:24:41 UTC, Martin Nowak wrote:

Glad to announce D 2.091.0, ♥ to the 55 contributors.

This release comes with 64-bit Windows binaries, improvements 
on C++ integrations, a @safe std.bigint, and various bugfixes.


http://dlang.org/download.html 
http://dlang.org/changelog/2.091.0.html


-Martin


The blog:
https://dlang.org/blog/2020/03/17/d-2-091-0-released/

Reddit:
https://www.reddit.com/r/programming/comments/fk93h9/d_20910_released/


Re: Tracing D Applications

2020-03-17 Thread Mike Parker via Digitalmars-d-announce
On Tuesday, 17 March 2020 at 16:13:24 UTC, Steven Schveighoffer 
wrote:

On 3/13/20 3:00 PM, Mike Parker wrote:
This post by Alexandr Druzhinin shows three different 
approaches to tracing, using writef and external tools.


Blog:
https://dlang.org/blog/2020/03/13/tracing-d-applications/

Reddit:
https://www.reddit.com/r/programming/comments/fi4qfw/tracing_d_applications/



typo:

sorta of => sort of

-Steve


Thanks!


Re: Release D 2.091.0

2020-03-17 Thread Mike Parker via Digitalmars-d-announce

On Tuesday, 17 March 2020 at 10:29:45 UTC, Anonymouse wrote:



Looking forward to it, but curiously still no updates to the 
Arch Linux package repositories...


https://www.archlinux.org/packages/community/x86_64/dmd/


Please contact the folks who maintain it.


Re: DConf 2020 Canceled

2020-03-16 Thread Mike Parker via Digitalmars-d-announce

On Monday, 16 March 2020 at 19:36:20 UTC, Walter Bright wrote:

On 3/16/2020 9:15 AM, bachmeier wrote:
"Have an online conference" isn't especially helpful. There 
haven't been any detailed proposals, and Walter hasn't said 
anything one way or the other about doing something online.


Oh, I'm quite in favor of an online conference. Anyone who 
wants to step up and take charge of it has my support.


Working on it. A few people have contacted me with offers of 
advice and support. Should have something to announce in a few 
weeks.


Tracing D Applications

2020-03-13 Thread Mike Parker via Digitalmars-d-announce
This post by Alexandr Druzhinin shows three different approaches 
to tracing, using writef and external tools.


Blog:
https://dlang.org/blog/2020/03/13/tracing-d-applications/

Reddit:
https://www.reddit.com/r/programming/comments/fi4qfw/tracing_d_applications/


DConf 2020 Canceled

2020-03-07 Thread Mike Parker via Digitalmars-d-announce
I really wish I didn't have to make this announcement, but in 
light of the COVID-19 outbreak and with an abundance of caution, 
the D Language Foundation and Symmetry Investments have agreed to 
cancel DConf 2020.


Though it's possible that things will have cleared up by June, we 
can't be sure that will be the case. We don't want to put members 
of the D community at risk if things are not cleared up, or risk 
travel disruptions for those who do register and make travel 
plans. We decided it's better to cancel earlier rather than later 
to minimize the number of people who will need to cancel or 
rebook their travel arrangements.


Personally, I was really looking forward to heading to London and 
seeing everyone again, but I do agree with the decision. We hope 
not many of you will be impacted by the decision and we're 
terribly sorry if you are.


Re: DConf Invited Keynote Speaker, Formal Call for Submissions & Early-bird Registration

2020-03-04 Thread Mike Parker via Digitalmars-d-announce

On Tuesday, 3 March 2020 at 19:34:45 UTC, Dibyendu Majumdar wrote:


Hi, I checked my emails again and spam folder as well - I did 
not receive an acknowledgment. Anyway, if you have received 
then its fine.




It’s possible I didn’t see it. I replied to someone over the 
weekend. It was a presentation with a duration of something like 
“30 minutes plus time for questions”. If that wasn’t yours, then 
I haven’t seen it yet. I’m on the road until early next week and 
won’t have access to the dlang.org address until I get back.




Re: DConf Invited Keynote Speaker, Formal Call for Submissions & Early-bird Registration

2020-03-02 Thread Mike Parker via Digitalmars-d-announce

On Monday, 2 March 2020 at 20:29:15 UTC, Dibyendu Majumdar wrote:

On Thursday, 6 February 2020 at 14:19:13 UTC, Mike Parker wrote:
I've just published the blog post that serves as the public 
launch (outside of this community) of early-bird registration 
and the call for submissions. I'm also very happy that I was 
able to include the announcement that our invited keynote 
speaker has been confirmed!




Hi,

I submitted a talk proposal but did not receive an 
acknowledgement. Please let me know if you have received the 
submission.


Thank you

Regards
Dibyendu


I’m pretty sure I replied to your email. Sometimes emails from 
soc...@dlang.org get marked as spam. But we did get it. Thanks 
for submitting!


Re: GSOC 2020 projects

2020-02-24 Thread Mike Parker via Digitalmars-d-announce
On Monday, 24 February 2020 at 18:00:15 UTC, rikki cattermole 
wrote:



Limited spots, somebody had to go.


That’s the only reason they ever give for rejection AFAIK.


Re: DIP 1027---String Interpolation---Format Assessment

2020-02-24 Thread Mike Parker via Digitalmars-d-announce
On Monday, 24 February 2020 at 08:43:57 UTC, Robert M. Münch 
wrote:






Out of curiosity, how and who makes such a decision? Is there a 
voting? Is there a committee? Is there a structured pro/con 
overview and highlight of blocking-points that need to be 
resolved?


The DIP review process is outlined here:

https://github.com/dlang/DIPs

The final decision rests with the language maintainers. Now, that 
means Walter and Atila.




I mean, people spend a lot of time thinking, making 
suggestions, etc. and the end result is: we now have nothing. 
Which, IMO is the worst result for all.


Not at all. In this case, as the DIP author, Walter could have 
chosen to revise the DIP with a new implementation. He chose not 
to. He wasn't persuaded by the arguments in the thread. Anyone 
else in the community is free to submit an alternative DIP for 
the same feature. Adam Ruppe has already done so:


https://github.com/dlang/DIPs/pull/186

If that proposal and its review manage to convince Walter and 
Atila, then the feature gets in.




As a community with highly skilled people I think there should 
be a way to come to a good solution, not only a good enough. If 
not, this doesn't shed light on D and the community...


The DIP process is one way to approach that. It allows everyone 
to provide feedback and influence the drafting of the DIP. That 
requires convincing the DIP author to revise the DIP and 
ultimately convincing the language maintainers to accept it. It 
means there's a high barrier for acceptance, but in my own 
opinion that's how it should be.


DIP 1027---String Interpolation---Format Assessment

2020-02-23 Thread Mike Parker via Digitalmars-d-announce
DIP 1027, "String Interpolation", has been rejected. The decision 
was primarily influenced by the lack of consensus over the 
implementation and the syntax demonstrated in the two review 
threads. As the DIP author, Walter also rejected the suggestion 
to go with an implementation that resolves to a library template. 
He sees that as equivalent to AST macros, a feature which he has 
previously rejected.


https://github.com/dlang/DIPs/blob/4be15bd40381667c0ab1c0aef360d0daa4b8c82c/DIPs/rejected/DIP1027.md


D Blog News Roundup

2020-02-17 Thread Mike Parker via Digitalmars-d-announce
There's new swag in the DLang Swag Emporium, work continues on 
porting DRuntime to WebAssembly and bringing D to iOS, and we 
need help preparing for a potentially upcoming documentation 
event.


The blog:
https://dlang.org/blog/2020/02/17/news-update-swag-platforms-documentation-help-and-more/

Reddit:
https://www.reddit.com/r/d_language/comments/f582mk/news_update_swag_platforms_documentation_help_and/


DIP 1031--Deprecate Brace-Style Struct Initializers--Community Review Round 1 Begins

2020-02-12 Thread Mike Parker via Digitalmars-d-announce
The first round of Community Review for DIP 1031, "Deprecate 
Brace-Style Struct Initializers", has begun. Please use the 
Feedback thread for all feedback targeted specifically at the 
contents of the DIP:


https://forum.dlang.org/post/iywiuqqmevdghgbyr...@forum.dlang.org

All posts in that thread must adhere to the rules summarized in 
the first post.


Please visit the Discussion thread for free-form discussion of 
the DIP, the proposed feature(s), and tangential topics:


https://forum.dlang.org/post/uivuxsycynvgvslkk...@forum.dlang.org


Re: DConf Invited Keynote Speaker, Formal Call for Submissions & Early-bird Registration

2020-02-08 Thread Mike Parker via Digitalmars-d-announce

On Thursday, 6 February 2020 at 16:54:50 UTC, Les De Ridder wrote:

On Thursday, 6 February 2020 at 14:19:13 UTC, Mike Parker wrote:

Typo:

On behalf of the D Language Foundation and Symmetry 
Investments, I want to thank everyone who participated in SAOC 
__2020__.


Thanks!


DConf Invited Keynote Speaker, Formal Call for Submissions & Early-bird Registration

2020-02-06 Thread Mike Parker via Digitalmars-d-announce
I've just published the blog post that serves as the public 
launch (outside of this community) of early-bird registration and 
the call for submissions. I'm also very happy that I was able to 
include the announcement that our invited keynote speaker has 
been confirmed!


Blog:
https://dlang.org/blog/2020/02/06/dconf-2020-submission-deadline-early-bird-registration-and-invited-keynote/

Reddit:
https://www.reddit.com/r/programming/comments/ezsvyp/dconf_2020_call_for_submissions_earlybird/


Also sharing on HN.


DIP 1030--Named Arguments--Community Review Round 1 Begins

2020-02-05 Thread Mike Parker via Digitalmars-d-announce
The first round of Community Review for DIP 1030, "Named 
Arguments", has begun. Please use the Feedback thread for all 
feedback targeted specifically at the contents of the DIP:


https://forum.dlang.org/post/bizqhxszbobynrims...@forum.dlang.org

All posts in that thread must adhere to the rules summarized in 
the first post.


Please visit the Discussion thread for free-form discussion of 
the DIP, the proposed feature(s), and tangential topics:


https://forum.dlang.org/post/ngjihdoyluxrikjzc...@forum.dlang.org


Re: DConf 2020 Early-Bird Registration & Submission Deadlines

2020-02-05 Thread Mike Parker via Digitalmars-d-announce

On Monday, 27 January 2020 at 12:00:32 UTC, Mike Parker wrote:

I'll open registration through PayPal once the official 
announcement goes out on the blog and social media. Both 
registration options will be available at dconf.org.




The PayPal links are live:

https://dconf.org/2020/index.html#registration

The blog announcement is coming soon. Just waiting wrap up a bit 
of housekeeping regarding our invited keynote speaker!




wc in D: 712 Characters Without a Single Branch

2020-01-28 Thread Mike Parker via Digitalmars-d-announce
Robert Schadek was inspired by a post he saw on Hacker News a 
while back showing an implementation of wc in Haskell totaling 80 
lines. He decided he could do better in D. So he did. This post 
on the D blog shows what he came up with and also provides a 
brief introduction to ranges.



The blog:
https://dlang.org/blog/2020/01/28/wc-in-d-712-characters-without-a-single-branch/

Reddit:
https://www.reddit.com/r/programming/comments/ev5w91/wc_in_d_712_characters_without_a_single_branch/

It's also on Hacker News, but please don't post a direct link to 
it if you find it there.


https://news.ycombinator.com/


Re: D For Data Science: Calling R from D

2020-01-27 Thread Mike Parker via Digitalmars-d-announce

On Monday, 27 January 2020 at 14:20:20 UTC, Adam D. Ruppe wrote:

On Monday, 27 January 2020 at 14:16:47 UTC, Mike Parker wrote:

https://dlang.org/blog/2020/01/27/d-for-data-science-calling-r-from-d/


"D [...] interoperability with C (in many cases as simple as 
adding an #include directive to import a C header file), "


like it is simple... but it isn't a #include directive unless 
you use third party things (that have their own issues).


Minor thing but can be misleading to newcomers.


Good point. I've added a mention of dpp and a link to the Project 
Highlight on the blog.


Re: DConf 2020 Early-Bird Registration & Submission Deadlines

2020-01-27 Thread Mike Parker via Digitalmars-d-announce

On Monday, 27 January 2020 at 13:30:20 UTC, Rory McGuire wrote:


There is a typo at:
*while enhanching the D ecosystem   *

R


Thanks, Rory!


D For Data Science: Calling R from D

2020-01-27 Thread Mike Parker via Digitalmars-d-announce
You've seen Lance Bachmeier posting in the forums under the 
bachmeier handle. He's put together a post for the D Blog showing 
how to integrate R into a D program.


The Blog:
https://dlang.org/blog/2020/01/27/d-for-data-science-calling-r-from-d/

Reddit:
https://www.reddit.com/r/programming/comments/euobu1/d_for_data_science_calling_r_from_d/

It's also on Hacker News. If it isn't on the front page, just 
search for "D for Data Science". Please don't post a direct link 
if you find it on there, not until after it's been on there a few 
days.


https://news.ycombinator.com/


DConf 2020 Early-Bird Registration & Submission Deadlines

2020-01-27 Thread Mike Parker via Digitalmars-d-announce
I'm currently planning to officially launch early-bird 
registration for DConf 2020 in early February, hopefully in 
tandem with news that we have confirmed our invited keynote 
speaker.


Consider this announcement a "soft launch". Those of you eager to 
get your registrations squared away can do so right now through 
our Flipcause registration form:


https://www.flipcause.com/secure/cause_pdetails/NzQ0NzA=

I'll open registration through PayPal once the official 
announcement goes out on the blog and social media. Both 
registration options will be available at dconf.org.


Once again, the regular registration rate will be $400 USD + 20% 
VAT, for a total of $480. The early-bird registration is a 15% 
discount: $340 + 20% VAT for a total of $408 (£312.15 at the 
January HMRC exchange rate, which may change in February).


Early-bird registration is available until April 19 AOE.

For those of you intending to make any submissions, that is also 
the date we'll notify submission authors of their submission 
status. The submission deadline is April 12 AOE.


DIP Reviews: Discussion vs. Feedback

2020-01-26 Thread Mike Parker via Digitalmars-d-announce
I'm making a change to the way we solicit feedback during DIP 
review rounds. The goal is to separate explicit feedback from 
discussion. Discussion is vital to the process, but it also makes 
it difficult to find the actionable feedback buried in the 20+ 
pages that some DIP reviews generate (particularly Walter's). So 
henceforward, we're going with two threads per review round: one 
for discussion and one for feedback (critique).


It's all laid out in this blog post:

https://dlang.org/blog/2020/01/26/dip-reviews-discussion-vs-feedback/

Also on reddit:

https://www.reddit.com/r/d_language/comments/eu4fi8/dip_reviews_discussion_vs_feedback/


DIP 1029---Add throw as Function Attribute---Community Review Round 1 Begins

2020-01-14 Thread Mike Parker via Digitalmars-d-announce
The first round of Community Review for DIP 1029, "Add throw as 
Function Attribute", has begun. To participate, please visit the 
review thread for the details:


https://forum.dlang.org/post/sbdrybtyfkxfhxxjg...@forum.dlang.org

*Please leave all feedback in the review thread rather than here!*

Thanks!


Re: DConf 2020: Double Decker Edition

2020-01-10 Thread Mike Parker via Digitalmars-d-announce

On Friday, 10 January 2020 at 21:58:27 UTC, Murilo wrote:

On Saturday, 4 January 2020 at 12:23:40 UTC, Mike Parker wrote:
The announcement is on the blog and dconf.org is up to date. 
Read all about it!


https://dlang.org/blog/2020/01/04/dconf-2020-double-decker-edition/
https://dconf.org/2020/index.html


Is it okay if I make many submissions? I have several ideas in 
mind.


Yes.


Re: On the Blog: Recent D Compiler Releases

2020-01-10 Thread Mike Parker via Digitalmars-d-announce
On Wednesday, 8 January 2020 at 18:17:40 UTC, Rainer Schuetze 
wrote:


With the current GC implementation, it’s illegal to perform any 
GC

operations during finalization.

There are some exceptions, namely addRoot/addRange and 
removeRoot/removeRange and the iterators over roots or ranges.


I guess it might be possible to support some querying functions 
during finalization, too.


I'll replace the "any" with "some". Thanks!


Re: DConf 2020: Double Decker Edition

2020-01-09 Thread Mike Parker via Digitalmars-d-announce

On Friday, 10 January 2020 at 01:11:44 UTC, Murilo wrote:

On Saturday, 4 January 2020 at 12:23:40 UTC, Mike Parker wrote:
The announcement is on the blog and dconf.org is up to date. 
Read all about it!


https://dlang.org/blog/2020/01/04/dconf-2020-double-decker-edition/
https://dconf.org/2020/index.html


Once I submit a proposal for a talk, how long will it take to 
be reviewed and replied to?


Soon, I'll update the website with all of the deadline dates. 
There will be a submission deadline and a deadline for the 
announcement of selections. Typically, the announcement takes 
place one week after the submission deadline and the submission 
authors are notified by email the day before.


I anticipate the submission deadline will be some time in March.


On the Blog: Recent D Compiler Releases

2020-01-08 Thread Mike Parker via Digitalmars-d-announce
I've posted an overview of LDC 1.19.0 and DMD 2.090.0 on the 
blog, and a reminder that GDC is available as part of the GCC 9 
series.


The blog:
https://dlang.org/blog/2020/01/08/recent-d-compiler-releases/

Reddit:
https://www.reddit.com/r/programming/comments/elq5yx/recent_d_compiler_releases_ldc_dmd_and_gdc/


Re: ssll - simple shared library loader

2020-01-05 Thread Mike Parker via Digitalmars-d-announce

On Sunday, 5 January 2020 at 23:23:48 UTC, Oleg B wrote:

Nice work! One thing I would recommend, though, is that you not 
bake in extern(C). Some libraries require extern(System) (because 
they're stdcall on Windows and cdecl everywhere else).


There's also the issue with the Windows stdcall name-mangling 
scheme in 32-bit libraries, where the symbol name incorporates 
the size of the function parameters. Some stdcall libraries (like 
OpenGL) are configured to compile with the unmangled names, but 
others (like FreeImage) are not and require transforming the 
symbol name into the mangled form.


So to be robust, you'll want to implement support for both into 
SSLL.



It's analog of bindbc, but without need write boilerplate code.
May be bindbc is designed for another cases, but I don't 
understand need writing triple definition for one function 
(pointer, loading, wrap-function).


There are only two declarations required for the dynamic bindings 
in BindBC: an alias and a pointer. And of course the loader is 
separate. The reason is historical. When I was working on the 
earliest version of Derelict back in 2004, we didn't have all the 
fancy compile-time features we have now. I (and a couple of 
contributors) tried doing it by declaring the function pointers 
without aliases, but we ran into a couple of issues and settled 
for taking the alias + pointer approach. (It's been so long that 
I can't recall what the issues were).


In the 4th iteration of Derelict (the bindings in DerelictOrg on 
github), I experimented with UDAs and single function 
declarations that I could generate static and dynamic bindigs 
with. But I was still mixing in the alias and pointer 
declarations for the dynamic bindings and could never figure out 
a way to distinguish between them during introspection. I posted 
about it here on the forums and no one had an answer, so I gave 
up.


So bindbc is implemented the way it is because that's the way 
I've done it for almost 16 years.


Re: DConf 2020: Double Decker Edition

2020-01-05 Thread Mike Parker via Digitalmars-d-announce

On Sunday, 5 January 2020 at 18:08:28 UTC, DanielG wrote:
Is there a deadline for submissions? Not looking to 
inconvenience the evaluation team, just busy with something 
else for the next few weeks and wanting to give a submission 
the attention it deserves.


I’ll update the site with the submission deadline and the 
early-bird & regular registration periods as soon as we get the 
dates sorted. The submission deadline will likely be some time in 
March.


DConf 2020: Double Decker Edition

2020-01-04 Thread Mike Parker via Digitalmars-d-announce
The announcement is on the blog and dconf.org is up to date. Read 
all about it!


https://dlang.org/blog/2020/01/04/dconf-2020-double-decker-edition/
https://dconf.org/2020/index.html


DIP 1028---Make @safe the Default---Community Review Round 1 Begins

2020-01-02 Thread Mike Parker via Digitalmars-d-announce
The first round of Community Review for DIP 1028, "Make @safe the 
Default", has begun. To participate, please visit the review 
thread for the details:


https://forum.dlang.org/post/ejaxvwklkyfnksjkl...@forum.dlang.org

*Please leave all feedback in the review thread rather than here!*

Thanks!


DIP 1024---Shared Atomics---Accepted

2020-01-01 Thread Mike Parker via Digitalmars-d-announce

DIP 1024, "Shared Atomics", was accepted without comment.

https://github.com/dlang/DIPs/blob/master/DIPs/accepted/DIP1024.md


Re: Beta 2.090.0

2019-12-22 Thread Mike Parker via Digitalmars-d-announce

On Sunday, 22 December 2019 at 18:51:45 UTC, berni44 wrote:

On Sunday, 22 December 2019 at 15:23:32 UTC, Martin Nowak wrote:
Glad to announce the first beta for the 2.090.0 release, ♥ to 
the 48 contributors.


I'm wondering, why I'm listed twice there (as Bernhard 
Seckinger and as berni44). IMHO berni44 should not have been 
listed there... Do I have to change something in my git 
settings to get this right?


You can submit a PR to add a mapping to tools/.mailmap:

https://github.com/dlang/tools/blob/master/.mailmap
https://github.com/git/git/blob/master/Documentation/mailmap.txt


Re: Beta 2.090.0

2019-12-22 Thread Mike Parker via Digitalmars-d-announce
On Sunday, 22 December 2019 at 15:27:15 UTC, rikki cattermole 
wrote:

On 23/12/2019 4:23 AM, Martin Nowak wrote:
Glad to announce the first beta for the 2.090.0 release, ♥ to 
the 48 contributors.


http://dlang.org/download.html#dmd_beta
http://dlang.org/changelog/2.090.0.html

As usual please report any bugs at
https://issues.dlang.org

-Martin


404'ing


The changelog, that is.


DIP 1027---String Interpolation---Community Review Round 1 Begins

2019-12-11 Thread Mike Parker via Digitalmars-d-announce
The first round of Community Review for DIP 1027, "String 
Interpolation", has begun. To participate, please visit the 
review thread for the details:


https://forum.dlang.org/post/abhpqwxqgiyzgqxmj...@forum.dlang.org

*Please leave all feedback in the review thread rather than here!*

Thanks!


Goings-on in DLand

2019-12-10 Thread Mike Parker via Digitalmars-d-announce
My latest post on the D Blog is an update on some current and 
upcoming events, a thank you note to all of our contributors, and 
a plea to help us fill our ongoing need for contributions.


Re: Goings-on in DLand

2019-12-10 Thread Mike Parker via Digitalmars-d-announce

On Tuesday, 10 December 2019 at 10:09:22 UTC, Mike Parker wrote:
My latest post on the D Blog is an update on some current and 
upcoming events, a thank you note to all of our contributors, 
and a plea to help us fill our ongoing need for contributions.


https://dlang.org/blog/2019/12/10/goings-on-in-dland/


<    1   2   3   4   5   6   7   8   9   10   >