D for Android beta

2017-06-01 Thread Joakim via Digitalmars-d-announce
The beta release of ldc 1.3, the llvm-based D compiler, is now 
out:


https://github.com/joakim-noah/android/releases

It is accompanied by a non-trivial sample app from the Android 
NDK, ported from C++ to about 1.2 klocs of D: the classic Utah 
Teapot (https://en.wikipedia.org/wiki/Utah_teapot), updated with 
mobile touch controls.  This app also demonstrates calling Java 
functions from your D code through JNI, though most of it is 
written in D.


There are two builds of ldc, a cross-compiler that you can use 
from a linux/x64 shell to compile to Android/ARM, and a native 
compiler that you can run on your Android device itself.  As I 
pointed out last year, not only is ldc a large mixed D/C++ 
codebase that just worked on ARM, but it is possible to build 
arbitrarily large Android apps on your Android device itself, a 
first for any mobile platform:


http://forum.dlang.org/thread/ovkhtsdzlfzqrqneo...@forum.dlang.org

This is the way the next generation of coders will get into 
coding, by tinkering with their Android devices like we did with 
Macs and PCs decades ago, and D is one the few languages that is 
already there.


I will write up instructions on how to write an Android app in D 
_on_ your Android device by using ldc and the Termux app, and get 
ldc into the Termux packages, a package repository for Android:


https://play.google.com/store/apps/details?id=com.termux=en


Re: D for Android beta

2017-06-04 Thread Joakim via Digitalmars-d-announce

On Friday, 2 June 2017 at 00:00:17 UTC, Laeeth Isharc wrote:

On Thursday, 1 June 2017 at 19:31:28 UTC, Joakim wrote:

[...]


Congratulations, Joakim!
https://www.reddit.com/r/programming/comments/6eqv46/write_mixed_dc_android_apps_even_build_them/
and news.ycombinator.com

Looking forward to termux.


Haha, I lol'ed when I just read this comment:

"Ah, D only came into my field of view with the recent support on 
Android and I assumed it was a recent language designed for 
Android."

https://www.reddit.com/r/programming/comments/6eqv46/comment/dif3sa0

Well, at least we're getting more of these Android people 
introduced to D.


Re: Life in the Fast Lane (@nogc blog post)

2017-06-16 Thread Joakim via Digitalmars-d-announce

On Friday, 16 June 2017 at 13:51:18 UTC, Mike Parker wrote:
I've been meaning to get this done for weeks but have had a 
severe case of writer's block. The fact that I had no other 
posts ready to go this week and no time to write anything at 
all motivated me to make time for it and get it done anyway. My 
wife didn't complain when I told her I had to abandon our 
regular bedtime Netflix time block (though she did extract a 
concession that I have no vote in the next series we watch). 
Thanks to Vladimir, Guillaume, and Steve, for their great 
feedback on such short notice. Their assistance kept the blog 
from going quiet this week.


The blog:
https://dlang.org/blog/2017/06/16/life-in-the-fast-lane/

Reddit:
https://www.reddit.com/r/programming/comments/6hmlfq/life_in_the_fast_lane_using_d_without_the_gc/


Nicely written.  I never bothered to look into this GC 
fine-tuning, as I don't need that level of optimization, but I 
finally have some idea of how this works.


Re: Life in the Fast Lane (@nogc blog post)

2017-06-17 Thread Joakim via Digitalmars-d-announce

On Friday, 16 June 2017 at 18:26:15 UTC, Joakim wrote:

On Friday, 16 June 2017 at 13:51:18 UTC, Mike Parker wrote:
I've been meaning to get this done for weeks but have had a 
severe case of writer's block. The fact that I had no other 
posts ready to go this week and no time to write anything at 
all motivated me to make time for it and get it done anyway. 
My wife didn't complain when I told her I had to abandon our 
regular bedtime Netflix time block (though she did extract a 
concession that I have no vote in the next series we watch). 
Thanks to Vladimir, Guillaume, and Steve, for their great 
feedback on such short notice. Their assistance kept the blog 
from going quiet this week.


The blog:
https://dlang.org/blog/2017/06/16/life-in-the-fast-lane/

Reddit:
https://www.reddit.com/r/programming/comments/6hmlfq/life_in_the_fast_lane_using_d_without_the_gc/


Nicely written.  I never bothered to look into this GC 
fine-tuning, as I don't need that level of optimization, but I 
finally have some idea of how this works.


And people have noticed, it's about to hit the top 10 most-liked 
proggit links of the last 7 days:


https://www.reddit.com/r/programming/top/?sort=top=week

One typo I forgot to mention earlier, where you wrote "aren't 
likey."


[OT] adtech prevalence

2017-06-14 Thread Joakim via Digitalmars-d-announce

On Wednesday, 14 June 2017 at 06:55:39 UTC, anonymous wrote:
“The best minds of my generation are thinking about how to make 
people click ads.” - Jeffrey Hammerbacher (Cloudera cofounder)


I see this quote repeated a lot, but are they really the best 
minds if they settle for such a silly goal?  One of the tests of 
the best minds is that they seek, or perhaps just stumble, onto 
much more worthwhile goals.  Rather there are always a lot of 
talented people that waste their time on the latest gold rush, 
instead of surveying the field for what's coming down the line.  
Andrei left Facebook, one of the larget ad companies in the 
world, to work more on D: I think he made the right move.


And no offense to those working more on the tech side of adtech, 
at Sociomantic or elsewhere, as those systems can be repurposed 
for something else when the adtech bubble eventually bursts:


http://www.businessinsider.com/The-ad-tech-sector-looks-an-awful-lot-like-a-bubble-that-just-popped/articleshow/47249873.cms


Re: D for Android beta

2017-06-10 Thread Joakim via Digitalmars-d-announce

On Thursday, 1 June 2017 at 19:31:28 UTC, Joakim wrote:
The beta release of ldc 1.3, the llvm-based D compiler, is now 
out:


https://github.com/joakim-noah/android/releases


---snip---
I will write up instructions on how to write an Android app in 
D _on_ your Android device by using ldc and the Termux app, and 
get ldc into the Termux packages, a package repository for 
Android:


https://play.google.com/store/apps/details?id=com.termux=en


I've now put up a deb file at the first release link above that 
you can install in the Termux app, the result of this PR to get 
ldc into the Termux package repository for Android:


https://github.com/termux/termux-packages/pull/1078

Try the deb file out by installing the Termux app, then running 
the following commands:


apt install clang curl
curl -L -O 
https://github.com/joakim-noah/android/releases/download/tea/ldc_1.3.0_arm.deb

dpkg -i ldc
ldc2 --version

Once ldc gets into the Termux package repository, all you'll need 
to run is "apt install ldc".  Finally, try to build your favorite 
D file:


ldc2 sieve.d


Re: D for Android beta

2017-06-11 Thread Joakim via Digitalmars-d-announce

On Sunday, 11 June 2017 at 04:15:13 UTC, Joakim wrote:

On Thursday, 1 June 2017 at 19:31:28 UTC, Joakim wrote:

[...]

---snip---

[...]


I've now put up a deb file at the first release link above that 
you can install in the Termux app, the result of this PR to get 
ldc into the Termux package repository for Android:


https://github.com/termux/termux-packages/pull/1078

Try the deb file out by installing the Termux app, then running 
the following commands:


apt install clang curl
curl -L -O 
https://github.com/joakim-noah/android/releases/download/tea/ldc_1.3.0_arm.deb

dpkg -i ldc
ldc2 --version

Once ldc gets into the Termux package repository, all you'll 
need to run is "apt install ldc".  Finally, try to build your 
favorite D file:


ldc2 sieve.d


Sorry, that should be:

dpkg -i ldc_1.3.0_arm.deb


Re: DConf 2017 livestream

2017-05-04 Thread Joakim via Digitalmars-d-announce
On Friday, 5 May 2017 at 01:43:15 UTC, سليمان السهمي (Soulaïman 
Sahmi) wrote:

On Thursday, 4 May 2017 at 09:29:01 UTC, Johannes Pfau wrote:

Looks like the youtube video ID changes when the stream is


for the late comers, meanwhile the videos are getting ready and 
posted on youtube, it would be nice to post all those ids here. 
because it seems only those with a link can access todays 
recordings, on the channel' page there's only dating videos.


If you use either of the Sociomantic live links he gave while the 
stream is live, that will show it to you.  As for the archived 
stream, yes, you need the youtube video ids to view the pieces of 
that stream, as those videos are not public.


They will be chopped up and made into public videos soon.  If you 
can't wait, those archived stream ids have been posted in the 
General forum.


Re: DConf 2017 Day 2 Livestream

2017-05-06 Thread Joakim via Digitalmars-d-announce

On Saturday, 6 May 2017 at 09:36:16 UTC, mate wrote:

On Friday, 5 May 2017 at 08:06:05 UTC, Mike Parker wrote:

https://www.youtube.com/watch?v=_gfwk-zRwmk


Unfortunately all these links now give a “This video is 
unavailable” error.


Day 1
https://www.youtube.com/watch?v=MqrJZg6PgnM
https://www.youtube.com/watch?v=IqiXMN03968
Day 2
https://www.youtube.com/watch?v=_gfwk-zRwmk

Would there be a way to view these talks please?


The Sociomantic team has taken down the archived livestreams.  
They say they will try to get them chopped up and back up by 
Monday.


Re: Compile-Time Sort in D

2017-06-06 Thread Joakim via Digitalmars-d-announce

On Monday, 5 June 2017 at 14:23:34 UTC, Mike Parker wrote:
The crowd-edited (?) blog post exploring some of D's 
compile-time features is now live. Thanks again to everyone who 
helped out with it.


The blog:
https://dlang.org/blog/2017/06/05/compile-time-sort-in-d/

Reddit:
https://www.reddit.com/r/programming/comments/6fefdg/compiletime_sort_in_d/


Nice work, the reddit likes keep going up.  Nothing new for D 
users, but by encapsulating CTFE in a bite-sized blog post, 
you've gotten some outsiders to pay attention.  Just read perhaps 
the most ringing endorsement I've ever seen for D in the comments:


"How do you explain that in D complex metaprogramming artifacts 
such as bitfields, regex engines, compile-time parser generators, 
checked integers, generic allocators, are readily available from 
a smaller community, when in C++ you need an article explaining 
what tricks to use to sort a list of integers at compile time?"

https://www.reddit.com/r/programming/comments/6fefdg/comment/dijct48


Re: Eilmer4 - a Computational Fluid Dynamics code in D

2017-10-06 Thread Joakim via Digitalmars-d-announce

On Friday, 6 October 2017 at 23:49:33 UTC, Bastiaan Veelo wrote:

On Friday, 6 October 2017 at 22:16:09 UTC, Peter Jacobs wrote:
Eilmer is a simulation code for studying high-speed 
compressible flows.  Early versions were written in C and then 
C++.  Version 4 is a complete rewrite in D, with Lua for 
configuration and run-time scripting.  Code and documentation 
may be found at http://cfcfd.mechmining.uq.edu.au/eilmer/


This note is principally to say thank you to all of the people 
who have made the D programming language and its ecosystem.  
Being mechanical engineers, we are occasional but serious 
programmers.  For a number of years, we struggled with C++ and 
a code base of growing complexity.  In 2014, we made a serious 
commitment to reworking the entire code into D. In mid-2017, 
the new code was complete enough for general use and it is 
currently being used in a fourth-year course on computational 
fluid dynamics.  The D programming language has enhanced our 
programming experience and, for that, we are grateful to the 
many people who have built the foundation upon which we build 
our flow simulation code.


Cheers,
Peter Jacobs and Rowan Gollan


Congtatulations on a job well done. Your motivation for use of 
the D Programming Language is the same as ours. I found your 
paper describing the rewrite [1] very interesting, I think it 
deserves a more prominent mention here and on the usual news 
sites.


Bastiaan

[1] 
http://cfcfd.mechmining.uq.edu.au/eilmer/pdfs/T0316-eilmer-dlang-v2.pdf


I like how you have setup instructions and docs on your site.

Two relevant quotes from the paper:

"With the recent maturing of the programming language D as a good 
alternative to C++ for statically-checked, natively-compiled 
code, we have taken the opportunity to rebuild our simulation 
code. The D programming language provides the conveniences of 
Python, the run-time performance of C++ and the ability to be 
directly linked to C language libraries. It appears that we can 
have it all and we can have it now. One good example of where the 
rebuild has resulted in significant improvements is the 
viscous-flux calculation code. In the C++ code, about 2500 lines 
were used, and this had the extra complication of requiring the 
M4 preprocessor to produce the actual C++ code (of length 5580 
lines) that was given to the compiler. The new D language code 
amounts to 733 lines."


"Conclusion
We have spent much of a year building a new compressible flow 
simulation code from scratch, in a relatively new language. So 
far, our experience with the D programming language has been 
positive, with a fairly capable simulation code being constructed 
with a few months of effort by two people. Together with some 
code redesign, the D programming language has allowed the 
construction of a code base that is much simpler than its C++ 
predecessor but is just as fast."


Mike, want to stick this on proggit and HN?


Re: D for Android beta

2017-09-08 Thread Joakim via Digitalmars-d-announce

On Wednesday, 30 August 2017 at 07:09:05 UTC, Joakim wrote:

On Saturday, 26 August 2017 at 09:59:33 UTC, Joakim wrote:

On Thursday, 1 June 2017 at 19:45:17 UTC, Ali Çehreli wrote:

[...]


I've finally written up full instructions on building D apps 
for Android by using the linux cross-compiler or native 
Android compiler I provide:


https://wiki.dlang.org/Build_D_for_Android

The upcoming ldc 1.4 beta will be the first to include Android 
cross-compilation support for all supported host platforms, ie 
Windows, Mac, and linux, as all my Android patches have now 
been merged.  I'll stop putting out my own cross-compiler 
builds, though I'll maintain the native ldc package in the 
Termux package repo, once that's accepted.


If you want to build full OpenGLES GUI Android apps on your 
Android device, this wiki page shows you how to do that too.  
You too can be one of the elite few building mobile apps on 
your mobile device, and in D!


And there is now an ldc package in the Termux Android app, 
updated the wiki page to show how simple it is to install ldc 
on your Android device now:


https://wiki.dlang.org/Build_D_for_Android#Native_compilation_2

Make sure to tell everyone you know how easy it is to write D 
on your Android smartphone or tablet now, just like the Go 
people have been enjoying:


https://mobile.twitter.com/mattbostock/status/896923877711814657

The Termux twitter highlights those now happy about using Node, 
Clojure, or Scala on their Android phone, hopefully D is next:


https://mobile.twitter.com/termux

Next up, getting D working on 64-bit ARM devices, which I 
recently got access to.  David has been working on it already, 
hope we can get that done by ldc 1.5:


https://github.com/ldc-developers/ldc/issues/2153


rdmd and dub are now bundled with the native ldc package for 
Termux, so you can easily write small scripts in D on your phone 
or build and run tools like DScanner from the D package 
repository at code.dlang.org.


For example, here's how you install ldc and run DScanner on your 
codebase to count how many lines of D code it has, all on your 
smartphone or tablet:


apt install ldc

dub fetch dscanner

dub run dscanner -- -l your-code/


Re: D for Android beta

2017-08-30 Thread Joakim via Digitalmars-d-announce

On Saturday, 26 August 2017 at 09:59:33 UTC, Joakim wrote:

On Thursday, 1 June 2017 at 19:45:17 UTC, Ali Çehreli wrote:

Very exciting! :)

On 06/01/2017 12:31 PM, Joakim wrote:

> I will write up instructions on how to write an Android app
in D _on_
> your Android device

I hope it will be detailed enough for people who are very new 
to programming on the Android.


Ali


I've finally written up full instructions on building D apps 
for Android by using the linux cross-compiler or native Android 
compiler I provide:


https://wiki.dlang.org/Build_D_for_Android

The upcoming ldc 1.4 beta will be the first to include Android 
cross-compilation support for all supported host platforms, ie 
Windows, Mac, and linux, as all my Android patches have now 
been merged.  I'll stop putting out my own cross-compiler 
builds, though I'll maintain the native ldc package in the 
Termux package repo, once that's accepted.


If you want to build full OpenGLES GUI Android apps on your 
Android device, this wiki page shows you how to do that too.  
You too can be one of the elite few building mobile apps on 
your mobile device, and in D!


And there is now an ldc package in the Termux Android app, 
updated the wiki page to show how simple it is to install ldc on 
your Android device now:


https://wiki.dlang.org/Build_D_for_Android#Native_compilation_2

Make sure to tell everyone you know how easy it is to write D on 
your Android smartphone or tablet now, just like the Go people 
have been enjoying:


https://mobile.twitter.com/mattbostock/status/896923877711814657

The Termux twitter highlights those now happy about using Node, 
Clojure, or Scala on their Android phone, hopefully D is next:


https://mobile.twitter.com/termux

Next up, getting D working on 64-bit ARM devices, which I 
recently got access to.  David has been working on it already, 
hope we can get that done by ldc 1.5:


https://github.com/ldc-developers/ldc/issues/2153


Re: From the D Blog: The Evolution of the accessors Library

2017-09-06 Thread Joakim via Digitalmars-d-announce

On Wednesday, 6 September 2017 at 13:32:14 UTC, Mike Parker wrote:
Ronny Spiegel from Funkwerk has written an article for the D 
Blog describing the background of the company's open source 
accessors library & how it works. accessors can be used to 
automatically generate property getters & setters.


Blog:
https://dlang.org/blog/2017/09/06/the-evolution-of-the-accessors-library/

Reddit:
https://www.reddit.com/r/programming/comments/6yfm6y/accessors_is_an_open_source_library_for/


Nice post, interesting usage.  Some edits:

- "That true" -> "That's true"

- add two commas: "accessible annotations, similar to UDAs 
(User-Defined Attributes) were" -> "accessible, annotations, 
similar to UDAs (User-Defined Attributes), were"


- There's no resolution to the Flag type issue: you should say 
whether you filed a bug, as you did with the issue in the private 
classes section, or if you were able to work around it.


Re: D for Android beta

2017-08-26 Thread Joakim via Digitalmars-d-announce

On Thursday, 1 June 2017 at 19:45:17 UTC, Ali Çehreli wrote:

Very exciting! :)

On 06/01/2017 12:31 PM, Joakim wrote:

> I will write up instructions on how to write an Android app
in D _on_
> your Android device

I hope it will be detailed enough for people who are very new 
to programming on the Android.


Ali


I've finally written up full instructions on building D apps for 
Android by using the linux cross-compiler or native Android 
compiler I provide:


https://wiki.dlang.org/Build_D_for_Android

The upcoming ldc 1.4 beta will be the first to include Android 
cross-compilation support for all supported host platforms, ie 
Windows, Mac, and linux, as all my Android patches have now been 
merged.  I'll stop putting out my own cross-compiler builds, 
though I'll maintain the native ldc package in the Termux package 
repo, once that's accepted.


If you want to build full OpenGLES GUI Android apps on your 
Android device, this wiki page shows you how to do that too.  You 
too can be one of the elite few building mobile apps on your 
mobile device, and in D!


Re: LDC 1.4.0-beta1

2017-08-27 Thread Joakim via Digitalmars-d-announce

On Sunday, 27 August 2017 at 15:45:00 UTC, bitwise wrote:

On Saturday, 26 August 2017 at 22:35:11 UTC, kinke wrote:

* Shipping with ldc-build-runtime, a small D tool to easily 
(cross-)compile the runtime libraries yourself.

* Full Android support, incl. emulated TLS.


Does this mean I can actually build D static libraries, link 
them into an NDK shared lib, and use it in a phone app that I 
can submit to Google Play?


Yes.  Just follow these instructions to generate the standard 
library for Android/ARM;


https://wiki.dlang.org/Building_LDC_runtime_libraries

We're still cleaning up loose ends and refining the process 
though.  I forgot that you need to disable building one module 
when cross-compiling the stdlib, as mentioned here:


http://forum.dlang.org/post/jmucnjekkcmiszpag...@forum.dlang.org

Then, you can use a variation of these instructions to build D 
code:


https://wiki.dlang.org/Build_D_for_Android

The problem is those instructions assume you have a ldc2.conf set 
up properly, whereas the new ldc 1.4 beta won't do that for you.  
I'm looking into adding that.


Basically, you can do what you asked now, but while all the 
functionality is there, we're refining the build setup with this 
ldc beta process.  By the final 1.4 release, it should be really 
easy to cross-compile the stdlib and use it, but we're not quite 
there yet.


If you're adventurous, try it out know and let us know what you 
think.  Otherwise, it will get even simpler soon.


Re: Release D 2.076.0

2017-09-01 Thread Joakim via Digitalmars-d-announce

On Friday, 1 September 2017 at 15:24:57 UTC, Mike Parker wrote:

On Friday, 1 September 2017 at 14:03:26 UTC, Martin Nowak wrote:

Glad to announce D 2.076.0.


Blogged and reddited:

https://dlang.org/blog/2017/09/01/dmd-2-076-0-released/

https://www.reddit.com/r/programming/comments/6xf77f/version_20760_of_dmd_the_d_reference_compiler/


Nice writeup of the major features of this release, think it 
really helps.


Typo in blog post - dramtically

Also, changelog still lists this as a beta, to be released.


Re: Release D 2.076.0

2017-09-03 Thread Joakim via Digitalmars-d-announce

On Friday, 1 September 2017 at 14:03:26 UTC, Martin Nowak wrote:

Glad to announce D 2.076.0.

This release comes with static foreach, many -betterC 
enhancements, various phobos additions, an -mcpu=avx2 switch, 
and lots of bugfixes.


Thanks to everyone involved in this .

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


- -Martin


Just downloaded it, the linux version reports as v2.076.0-dirty, 
probably want to get rid of the "dirty" tag for an official 
release.


Re: LDC 1.6.0-beta1

2017-11-13 Thread Joakim via Digitalmars-d-announce

On Monday, 13 November 2017 at 02:35:11 UTC, Brian wrote:

On Sunday, 12 November 2017 at 15:57:19 UTC, kinke wrote:

Hi everyone,

on behalf of the LDC team, I'm glad to announce the first beta 
for LDC 1.6. The highlights of this version in a nutshell:


* Based on D 2.076.1.
* Experimental support for dynamic codegen at runtime ('manual 
JIT').

* Many std.math functions are now CTFE-able.

Full release log and downloads: 
https://github.com/ldc-developers/ldc/releases/tag/v1.6.0-beta1


Thanks to all contributors!


Fast update, thank you!

There is no version for FreeBSD?


See my prior response:

http://forum.dlang.org/post/ewhlrbimojselcefb...@forum.dlang.org


Re: We're looking for a Software Developer! (D language)

2017-11-29 Thread Joakim via Digitalmars-d-announce

On Wednesday, 29 November 2017 at 10:47:31 UTC, aberba wrote:
On Thursday, 8 January 2015 at 11:10:09 UTC, Johanna Burgos 
wrote:

Your Mission




Your Track Record

Degree in Computer Science, or closely-related



It baffles me that recruitment still works using this as a 
requirement. A CS graduate will never know any of these besides 
basic intro to C, C++, html, css,  databases,  and basic 
hardware-software theory... without self learning and practice.


I've never sat in a cs class for a second and I will be bored 
to death learning these stuff in lectures. I learnt them beyond 
the syllables years back on my own at a much quicker pase.


You become experienced and skilled when you're passionate about 
it.  Its how I started from being curious about how software is 
made to a full stack generalist... knowing more stack than the 
above requirements.


You want skills not pedigree.


Incompetence in hiring and HR is par for the course pretty much 
everywhere, lots of threads about it on proggit/HN/blogs these 
days.  Take for example the recent sexual harassment scandals in 
the US, where HR depts did nothing for decades.  People rightly 
complain about much smaller stuff than that not getting done well 
by HR, so of course they don't handle real malfeasance properly.


The biggest joke is that these companies all claim they want the 
best talent, when they have no idea what the best is in the first 
place:


https://danluu.com/programmer-moneyball/

It is one of the main reasons for the rise of open source, 
because you can't stop anyone from contributing or forking, 
assuming they have the extra time/money to do so.


Re: LDC 1.7.0-beta1

2017-12-12 Thread Joakim via Digitalmars-d-announce

On Sunday, 10 December 2017 at 18:11:46 UTC, Suliman wrote:

On Sunday, 10 December 2017 at 17:33:34 UTC, kinke wrote:

Hi everyone,

on behalf of the LDC team, I'm glad to announce the first beta 
for LDC 1.7. The highlights of this version in a nutshell:


* Based on D 2.077.1.
* Catching C++ exceptions supported on Linux and Windows.

Full release log and downloads: 
https://github.com/ldc-developers/ldc/releases/tag/v1.7.0-beta1


Thanks to all contributors!


Is it's possible to produce x64 binaries on Windows x64 without 
installing Visual Studio? DMD do not have linker for x64.


You could try using the llvm linker, lld, as noted in the release 
notes for ldc 1.5:


https://github.com/ldc-developers/ldc/releases/tag/v1.5.0

I don't know what's needed to link against functions from the 
Windows libc though.


On Sunday, 10 December 2017 at 19:00:53 UTC, Timothee Cour wrote:
could these releases be tied to 'homebrew/linuxbrew' upgrades 
as part of release process?


John usually submits a pull to homebrew for the betas, may just 
be behind on this one:


https://github.com/Homebrew/homebrew-core/pull/20580

Looks pretty simple, you or any other brew user could easily 
submit that too.


On Tuesday, 12 December 2017 at 01:37:31 UTC, Meta wrote:
Very impressive. I'm curious, is the work done to catch C++ 
exceptions separate from Walter's previous efforts with dmd, or 
does it build on his work in some way?


As noted in the linked 1.7 release notes, kinke merged ldc's 
non-MSVC exception-handling with Walter's new DWARF efforts and 
integrated some work by Rainer for MSVC.


Re: DConf 2018 Call for Submissions

2017-11-14 Thread Joakim via Digitalmars-d-announce

On Tuesday, 14 November 2017 at 14:07:51 UTC, Mike Parker wrote:
The time to start preparing submissions for DConf 2018 has 
come! The event is scheduled for May 2-5 in Munich, Germany. As 
with the 2017 edition, three days of talks are planned, 
followed by a Hackathon on the last day.


Deadline details can be found on the DConf home page [1]. As a 
bonus, Andrei did a brief interview for the D Blog [2], where 
he explains how we wound up in Munich this time around and what 
to expect.


[1] https://dconf.org/2018/index.html
[2] 
https://dlang.org/blog/2017/11/14/dconf-2018-assemblage-in-bavaria/


Reddit:
https://www.reddit.com/r/programming/comments/7cvsi3/dconf_2018_call_for_submissions_interview_with/


Typo in blog post, procrastanate -> procrastinate.


Re: compile D to asm.js using ldc --betterC and emcc

2017-11-14 Thread Joakim via Digitalmars-d-announce

On Tuesday, 14 November 2017 at 10:01:51 UTC, SrMordred wrote:

On Sunday, 8 October 2017 at 09:48:57 UTC, Dukc wrote:

On Saturday, 7 October 2017 at 17:31:37 UTC, cosinus wrote:
I wrote a little working demo that shows how to use D inside 
firefox.


It uses emscripten(emcc) and ldc.

https://github.com/cosinus2/dlang-emscripten-demo


Judging by looking at that build script, sure that's simpler 
than what I read you had to do some time back! You had to 
switch to some legacy llvm and compile the indermediate first 
to C and only then to Asm.js.


This looks like powerful enough for normal use. You still miss 
DRuntime but a lot better than using C to do the same. Perhaps 
even better than Typescript in some cases?


Can someone explain the reasons why LDC can't compiles to 
webasm with the DRuntime?


Nobody has done the work to port it, though someone has expressed 
interest and opened an issue for it:


https://github.com/ldc-developers/ldc/issues/2144

Regarding porting druntime, I'm told by some here that there are 
some issues with the GC and thread-local storage because of the 
particular wasm instruction set, but I've never looked into it.


Re: Release D 2.077.0

2017-11-03 Thread Joakim via Digitalmars-d-announce

On Friday, 3 November 2017 at 10:02:18 UTC, Mike Parker wrote:

On Friday, 3 November 2017 at 09:33:31 UTC, Walter Bright wrote:

On 11/3/2017 2:28 AM, Daniel Kozak wrote:

How should I compile my program to enable array vectorization?


dmd doesn't do what is known as "auto-vectorization".

https://en.wikipedia.org/wiki/Automatic_vectorization

What D does is have vector data types, and when those are used 
vector instructions are generated for them.


https://dlang.org/spec/simd.html


For clarity, where the changeling says that GDC & LDC use 
auto-vectorization, that's actually happening with the array 
operations and core.simd is not required, correct?


Yes, at least with ldc.


Re: Release D 2.077.0

2017-11-03 Thread Joakim via Digitalmars-d-announce

On Friday, 3 November 2017 at 10:07:25 UTC, Mike Parker wrote:

On Friday, 3 November 2017 at 10:02:18 UTC, Mike Parker wrote:

[...]


OK, I'm a bit confused here. This gives the impression that the 
vectorization happens automatically with array operations:


"Array operations have been converted from dedicated assembly 
routines for some array operations to a generic template 
implementation for all array operations. This provides huge 
performance increases (2-4x higher throughput) for array 
operations that were not previously vectorized. Furthermore the 
implementation makes better use of vectorization even for short 
arrays to heavily reduce latency for some operations (up to 
4x)."


Where does core.simd fit in?


See the linked druntime pull, core.simd is only imported for dmd:

https://github.com/dlang/druntime/pull/1891/files#diff-c17bbc97c8719ab709a4a54e2f6924ceR67


Re: Release D 2.077.0

2017-11-03 Thread Joakim via Digitalmars-d-announce

On Friday, 3 November 2017 at 13:47:55 UTC, Mike Parker wrote:
On Thursday, 2 November 2017 at 22:35:03 UTC, Martin Nowak 
wrote:

Glad to announce D 2.077.0.

This release comes with a new, more compact mangling, 
templated vector operations, reproducible dmd builds, and 
various fixes.

Thanks to everyone involved in this .

http://downloads.dlang.org/releases/2.x/2.077.0/
http://dlang.org/changelog/2.077.0.html
The dlang.org website will get updated soon.

-Martin


Blog:
https://dlang.org/blog/2017/11/03/dmd-2-077-0-released/

Reddit:
https://www.reddit.com/r/programming/comments/7ajg71/dmd_20770_released/


Typo: particulary

"case so that," -> "case, so that" (I'd also remove the comma 
after that)




Re: The latest Terrarium TV 1.8.1 has been updated.

2017-11-08 Thread Joakim via Digitalmars-d-announce

On Wednesday, 8 November 2017 at 10:36:46 UTC, codephantom wrote:
On Wednesday, 8 November 2017 at 09:40:01 UTC, Theresa Henson 
wrote:
The update is compatible with the latest Android OS as well as 
all others over Android 4.0


sounds great! thanks!

what is it?


It's spam, don't respond to it, as the mods apparently can't 
delete it then.


Re: LDC 1.5.0

2017-11-04 Thread Joakim via Digitalmars-d-announce

On Saturday, 4 November 2017 at 02:43:35 UTC, codephantom wrote:

On Friday, 3 November 2017 at 17:17:04 UTC, kinke wrote:

Hi everyone,

on behalf of the LDC team, I'm glad to finally officially 
announce LDC 1.5. The highlights of this version in a nutshell:




Great stuff.

No binary release for FreeBSD though??

:-(


There were some in the recent past, last done for the 1.2 release 
and 1.3 beta1:


https://github.com/ldc-developers/ldc/releases

Unfortunately, almost nobody was downloading them:

http://www.somsubhra.com/github-release-stats/?username=ldc-developers=ldc

Maybe FreeBSD users prefer using the package from ports, though 
it hasn't kept up:


https://www.freshports.org/lang/ldc/

It is fairly easy to compile ldc yourself:

https://wiki.dlang.org/Building_LDC_from_source


Re: LDC 1.5.0

2017-11-04 Thread Joakim via Digitalmars-d-announce

On Saturday, 4 November 2017 at 08:44:12 UTC, codephantom wrote:

On Saturday, 4 November 2017 at 08:40:19 UTC, Joakim wrote:

It is fairly easy to compile ldc yourself:

https://wiki.dlang.org/Building_LDC_from_source


Have you tried those instructions on 'FreeBSD'?


Not those instructions maybe, but I wrote the first ports script 
for FreeBSD back in 2010, so I have built ldc there:


https://www.freshports.org/lang/ldc-devel


Have you ever had to deal with pkg conflicts in FreeBSD?

I have ;-(


Can't say that ever really hit me, not sure how it's relevant to 
building ldc either.


Re: Interfacing D with C: Getting Started

2017-12-05 Thread Joakim via Digitalmars-d-announce

On Tuesday, 5 December 2017 at 16:06:19 UTC, Mike Parker wrote:
This is the first post in a new tutorial series I'm doing on 
the blog. I've covered this topic elsewhere, so for most of the 
basics I just link to existing material. The purpose of this 
series is to delve into some of the trouble spots that arise 
from the differences between the two languages. In this post, I 
go through a brief tutorial to make sure that all readers at 
least know how to compile a C source module to an object file 
and link it with a D executable, then give them an opportunity 
to try it out by showing the potential problem with long/ulong 
and C.


The blog:
https://dlang.org/blog/2017/12/05/interfacing-d-with-c-getting-started/

Reddit:
https://www.reddit.com/r/programming/comments/7hqk8b/interfacing_d_with_c_getting_started/


Typo: substitue

I think you should change the "long" explanation to

"However, in C, they are 4 bytes"

as it may not be clear to some that you're now talking about C.


Re: Dconf live stream for Shachar's talk

2018-05-05 Thread Joakim via Digitalmars-d-announce
On Saturday, 5 May 2018 at 07:59:48 UTC, Steven Schveighoffer 
wrote:

On 5/5/18 9:56 AM, Steven Schveighoffer wrote:

Hi all,

We are live streaming Shachar's talk this morning at 
https://www.youtube.com/watch?v=xNWRgEHxOhc


Ali is uploading the slides to dconf.org so you can follow 
along.


Cheers!


I will note that we don't have the normal A/V crew from the 
other days, so this is being done via a laptop camera. So you 
will probably need to download the slides.


-Steve


Thanks, watching it now. :)


Re: Announcing Mecca

2018-05-05 Thread Joakim via Digitalmars-d-announce

On Saturday, 5 May 2018 at 10:43:53 UTC, Mengu wrote:

On Friday, 4 May 2018 at 05:23:51 UTC, Shachar Shemesh wrote:

Hello everybody,

I am very happy to announce that Mecca version 0.0.1 (sorry, 
no more zeros than that) is now officially available. You can 
get the source code at https://github.com/weka-io/mecca. The 
API documentation is at https://weka-io.github.com/mecca/docs.


[...]


why the name mecca?


Liran said in his closing keynote that they use a lot of internal 
codenames that rhyme with Weka.


Re: LDC 1.10.0 beta

2018-05-14 Thread Joakim via Digitalmars-d-announce

On Monday, 14 May 2018 at 18:31:13 UTC, Jacob Carlborg wrote:

On 2018-05-13 20:12, kinke wrote:

Hi everyone,

on behalf of the LDC team, I'm glad to announce the first beta 
for LDC 1.10. The highlights of this version in a nutshell:


* Based on D 2.080.0.
* Supports DragonFly BSD.
* Some fixes, most notably wrt. exception stack traces on 
Linux.


Full release log and downloads: 
https://github.com/ldc-developers/ldc/releases/tag/v1.10.0-beta1


Thanks to all contributors!


Out of curiosity, how come the Objective-C integration seem to 
always lack behind when LDC merges a new DMD release with some 
new Objective-C integration? Is it less prioritized, not so 
much knowledge in this area, something else?


In addition to what David said, the plan is to have longer beta 
periods for ldc from here on out, which is why this ldc beta was 
released so soon after the corresponding dmd release, two weeks, 
a new record. You're free to test it out and submit issues or 
pulls before the final ldc release, as I do for Android.


Re: iopipe v0.0.4 - RingBuffers!

2018-05-11 Thread Joakim via Digitalmars-d-announce
On Friday, 11 May 2018 at 16:07:26 UTC, Steven Schveighoffer 
wrote:

On 5/11/18 11:44 AM, Steven Schveighoffer wrote:

On 5/10/18 7:22 PM, Steven Schveighoffer wrote:


[...]


Shameful note: Macos grep is BSD grep, and is not NEARLY as 
fast as GNU grep, which has much better performance (and is 2x 
as fast as iopipe_search on my Linux VM, even when printing 
line numbers).


So at least there is something to strive for :)


More testing reveals that as I increase the context lines to 
print, iopipe performs better than GNU grep. A shocking thing 
is that at 9 lines of context, grep goes up slightly, but all 
of a sudden at 10 lines of context, it doubles in the time 
taken (and is now slower than the iopipe_search).


Also noting: my Linux VM does not have ldc, so these are dmd 
numbers.


-Steve


What stops you from downloading a linux release from here?

https://github.com/ldc-developers/ldc/releases


Re: GitHub could be acquired by Microsoft

2018-06-10 Thread Joakim via Digitalmars-d-announce

On Monday, 4 June 2018 at 20:00:45 UTC, Maksim Fomin wrote:

On Monday, 4 June 2018 at 19:26:23 UTC, Joakim wrote:

On Monday, 4 June 2018 at 19:06:52 UTC, Maksim Fomin wrote:

Unlikely, you don't spend $7.5 billion on a company because 
you want to send a message that you're a good dev tools 
company, then neglect it.


You have no idea about how big corporations' management spends 
money.
As with Nokia and Skype - I don't know whether it was initially 
a plan to destroy products or management was just silly.


I suggest you look at their online slides linked from the 
Nadella blog post to see their stated plan, such as 
integrating github into VS Code more:


http://aka.ms/ms06042018

and likely vastly overpaid for an unprofitable company in the 
first place


:) this is exactly how such deals are done - paying $7.5 bl. 
for nonprofitable company.
Unfortunately, their books are unavailable because they are 
private company, but scarce information in the web suggests 
that in most of their years they have losses.


Just as rough estimate: to support $7.5 bl valuation Microsoft 
must turn -$30 ml. net loss company into business generating 
around $750 ml. for many years. There is no way to get these 
money from the market. Alternatively, the project can have 
payoff if something is broken and Microsoft cash flows increase 
by $750 ml. This is more likely...


but they emphasize that they intend to keep github open and 
independent.


They can claim anything which suits best their interests right 
now. Or, as alternative, github can be broken in a such way, 
that their promises on surface are kept. Business is badly 
compatible with opensource by design.


I just finished reading this interesting article by a former 
Microsoft business guy, which makes the same point I did, that MS 
is unlikely to neglect github or otherwise force it in some 
direction to leverage it:


https://stratechery.com/2018/the-cost-of-developers/

You're right that MS has had many acquisitions go badly already, 
such as Nokia and Skype (though I'd argue both were long-term 
doomed before they were bought), but, as always, incompetence is 
the much more likely reason than malice.


Re: GitHub could be acquired by Microsoft

2018-06-08 Thread Joakim via Digitalmars-d-announce

On Thursday, 7 June 2018 at 19:02:31 UTC, Russel Winder wrote:
On Thu, 2018-06-07 at 10:17 -0700, H. S. Teoh via 
Digitalmars-d-announce wrote:

[…]

Exactly!!!  Git was built precisely for decentralized, 
distributed development.  Anyone should be (and is, if they 
bothered to put just a tiny amount of effort into it) able to 
set up a git server and send the URL to prospective 
collaborators.  Anyone is free to clone the git repo and 
redistribute that clone to anyone else.  Anyone can create new 
commits in a local clone and send the URL to another 
collaborator who can pull the commits.  It should never have 
become the tool to build walled gardens that inhibit this free 
sharing of code.




I think there is an interesting tension between using a DVCS as 
a DVCS and no central resource, and thus no mainline version, 
and using a DVCS in combination with a central resource.  In 
the latter category the central resource may just be the 
repository acting as the mainline, or, as with GitHub, GitLab, 
Launchpad, the central resource provides sharing and reviewing 
support.


Very few organisations, except perhaps those that use Fossil, 
actually use DVCS as a DVCS. Everyone seems to want a public 
mainline version: the repository that represents the official 
state of the project. It seems the world is not capable of 
working with a DVCS system that does not even support 
"eventually consistent". Perhaps because of lack of trying or 
perhaps because the idea of the mainline version of a project 
is important to projects.


Well, as Jonathan says, you have to release a build eventually, 
and you need a mainline version that you know has all the needed 
commits to release from.


If you have multiple people all releasing their own builds with 
each build getting a roughly equivalent number of downloads, then 
a mainline version may not be needed, but I know of no large 
project like that.


In the past Gnome, Debian, GStreamer, and many others have had 
a central mainline Git repository and everything was handled as 
DVCS, with emailed patches. They tended not to support using 
remotes and merges via that route, not entirely sure why. 
GitHub and GitLab supported forking, issues, pull requests, and 
CI. So many people have found this useful. Not just for having 
ready made CI on PRs, but because there was a central place 
that lots of projects were at, there was lots of serendipitous 
contribution. Gnome, Debian, and GStreamer are moving to 
private GitLab instances. It seems the use of a bare Git 
repository is not as appealing to these projects as having the 
support of a centralised system.


Nobody uses a DVCS alone, even the linux kernel guys have mailing 
lists and other software they use to coordinate with around git.


I think that whilst there are many technical reasons for having 
an element of process support at the mainline location 
favouring the GitHubs and GitLabs of this Gitty world, a lot of 
it is about the people and the social system: there is a sense 
of belonging, a sense of accessibility, and being able to 
contribute more easily.


There is some of that, but you could reproduce all of that in a 
technically decentralized manner.


One of the aspects of the total DVCS is that it can exclude, it 
is in itself a walled garden, you have to be in the clique to 
even know the activity is happening.


Right now, yes, mailing lists and bugzilla can be forbidding to 
the noob, compared to just signing up on github and getting 
everything at one go. But as Basile's link above points out, 
there are tools like git-ssb that try decentralize all that:


http://git-ssb.celehner.com/%25RPKzL382v2fAia5HuDNHD5kkFdlP7bGvXQApSXqOBwc%3D.sha256


All of this is not just technical, it is socio-technical.


It is all ultimately technical, but yes, social elements come 
into play.


One big thing that web software like github or trac helps with is 
reviewing pulls to the main repo. I'm not about to add dozens of 
remotes to my local repo to review pulls from all the 
contributors to dmd/druntime/phobos, the github pull review 
workflow is much easier than the git command-line equivalent.


However, it wouldn't be that hard to decentralize most of what 
github provides by coming up with a standard format to store 
issues and other discussion in a git repo, as I'm guessing 
git-ssb does. The only aspect that might present difficulty is 
that you may not get as nice a web viewer as github provided, as 
the built-in gitweb is not very good compared to github's web UI.


In that way, while many are complaining about using github, the 
OSS community doing so for all these years may have been optimal, 
in that as long as a money-losing company was willing to do that 
work for you for years, why not use it? Where was all that money 
being lost after all, if not on providing features to users who 
weren't paying enough to sustain it? Then, once you know whether 
github's business model works or not, apparently 

Re: DasBetterC: Converting make.c to D

2018-06-12 Thread Joakim via Digitalmars-d-announce

On Monday, 11 June 2018 at 14:21:20 UTC, Mike Parker wrote:
Walter's latest post on -betterC is now on the blog. Here, he 
shows step-by-step an example of using -betterC to convert a 
real-world program, one small enough to describe in a blog 
post, from C to D.


The blog:
https://dlang.org/blog/2018/06/11/dasbetterc-converting-make-c-to-d/

Reddit:
https://www.reddit.com/r/programming/comments/8q9u5t/dasbetterc_converting_makec_to_d/


The example for replacing grouping together multiple pointer 
declarations has some raw HTML leaked into it, at least for me in 
Chrome.


[OT]: companies

2018-06-14 Thread Joakim via Digitalmars-d-announce

On Thursday, 14 June 2018 at 20:59:06 UTC, Jonathan M Davis wrote:
On Thursday, June 14, 2018 16:04:32 Nick Sabalausky  via 
Digitalmars-d- announce wrote:

On 06/14/2018 05:01 AM, AnotherTorUser wrote:
> If all such people stopped working for such companies, what 
> do you think the economic impact would be?


What do you think is the social impact if they don't? And 
don't even try to pretend the companies can't trivially solve 
the "economic" issues for themselves in an instant by knocking 
off the behaviour that causes loss of talent.


But that would imply that they have a frontal lobe. :)

In all seriousness, it is surprising how frequently companies 
seem to be incapable of making decisions that would fix a lot 
of their problems, and they seem to be incredibly prone to 
thinking about things in a shortsighted manner.


I'm reminded of an article by Joel Spoelskey where he talks 
about how one of the key things that a source control software 
solution can do to make it more likely for folks to be willing 
to try it is to make it easy to get your source code and 
history back out again and into another source control system. 
However, companies typically freak out at the idea of making it 
easy to switch from their product to another product. They're 
quite willing to make it easy to switch _to_ their product so 
that they can start making money off of you, but the idea that 
making it low cost to leave could actually improve the odds of 
someone trying their product - and thus increase their profits 
- seems to be beyond them.


Another case which is closer to the exact topic at hand is that 
many companies seem to forget how much it costs to hire someone 
when they consider what they should do to make it so that their 
employees are willing - or even eager - to stay. Spending more 
money on current employees (be that on salary or something else 
to make the workplace desirable) or avoiding practices that 
tick employees off so that they leave can often save money in 
the long run, but companies frequently ignore that fact. 
They're usually more interested in saving on the bottom line 
right now than making decisions that save money over time.


So, while I completely agree that companies can technically 
make decisions that solve some of their problems with things 
like retaining talent, it seems like it's frequently the case 
that they're simply incapable of doing it in practice - though 
YMMV; some companies are better about it than others.


This was an interesting read on that topic, which I've linked on 
this forum before, where an engineer points out that companies 
would be better off not chasing "rockstars" with hot keywords on 
their resumes but improving their training, processes, and 
culture so that even average programmers can be productive, 
including mentioning using source control and the Joel test that 
you just referenced:


https://danluu.com/programmer-moneyball/

Of course, the reason companies mostly don't do it is they're 
prone to the same cognitive failings as anybody else: it's easier 
to chase a quick fix than doing the hard work of putting in a 
system like this.





Re: D only has Advantages

2018-06-14 Thread Joakim via Digitalmars-d-announce

On Friday, 15 June 2018 at 04:19:22 UTC, Tony wrote:

On Friday, 15 June 2018 at 02:17:26 UTC, Adam D. Ruppe wrote:

On Friday, 15 June 2018 at 02:02:52 UTC, Tony wrote:
Have their been other languages - besides D - that compiled 
to object code and used a garbage collector?


You can use a GC with C++ and you can compile Java to native 
code ahead of time.


The distinctions aren't really that sharp, it just depends on 
how you use it.


After I posted I wanted to edit it to add "disregarding JIT in 
conjunction with a VM like JVM or .NET". Have there been any 
C++ compilers that used a garbage collector?


What I was getting at was, if someone says "I've got a systems 
level project I want to play around with, however GC is not a 
deal breaker for me. ", it seems like they are making an 
implied reference to D as I assume "systems level" means 
"compile to object code and link with linker to executable".


Search this forum or HN for Paulo and Oberon, you'll find plenty 
of posts like this, where he lists all of them: :)


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


Re: Encouraging preliminary results implementing memcpy in D

2018-06-14 Thread Joakim via Digitalmars-d-announce

On Thursday, 14 June 2018 at 02:32:51 UTC, errExit wrote:

On Wednesday, 13 June 2018 at 17:04:11 UTC, Ali Çehreli wrote:


I am part of the D community. I haven't discriminated against 
anyone. I don't know what a Tor user is.


I've just searched: So Tor is an old idea of mine, 
implemented. :o)


Ali


Tor is our last line of defence against an Orson Wells future, 
where everyones actions are scrutinized by big brother, so that 
big brother can use that knowledge to put fear into, control 
and manipulate, those that don't conform.


assert("bad tor user" != "all tor users are bad");

(actually there are more bad non-tor users)

Unfortunately, it's becoming increasingly, the norm, to 
discriminate against tor users (no doubt those doing that 
discrimination are those that are happy to conform, of which 
there will be many, sadly).


https://people.torproject.org/~lunar/20160331-CloudFlare_Fact_Sheet.pdf


Tor is merely one tool used to route around those building 
centralized systems on top of the internet. The real solution is 
that as more and more decentralized tech does well, like git or 
cryptocurrencies, to get rid of these obsolete centralized 
systems altogether.


Re: DConf 2018 Ex Post Facto

2018-05-31 Thread Joakim via Digitalmars-d-announce

On Thursday, 31 May 2018 at 15:49:47 UTC, Ali Çehreli wrote:
Only the Vang's picture shows for me. All the others show the 
"no entry" icon with both Firefox and Chrome. Permissions issue?


Yep, same here.


Re: GitHub could be acquired by Microsoft

2018-06-03 Thread Joakim via Digitalmars-d-announce

On Monday, 4 June 2018 at 03:51:15 UTC, Anton Fediushin wrote:
This is still just a rumour, we'll know the truth on Monday 
(which is today).


Some articles about the topic:

https://fossbytes.com/microsoft-github-aquisition-report/
https://www.theverge.com/2018/6/3/17422752/microsoft-github-acquisition-rumors

What's your opinion about that? Will you continue using GitHub?

Both GitLab and Bitbucket can be used instead to host your D 
projects - dub registry supported them for a while now.


IMHO Microsoft isn't the type of company I want to see behind 
the GitHub. Maybe I am wrong since Microsoft has both money and 
programmers to improve it further, I just don't trust them too 
much which is the right thing to do when dealing with 
companies. This means that I will move my repositories 
elsewhere and use GitHub just to contribute to other projects.


Looks like a done deal, will be announced tomorrow:

https://www.bloomberg.com/news/articles/2018-06-03/microsoft-is-said-to-have-agreed-to-acquire-coding-site-github

It all depends on how much support they pour into github, but I 
agree it's not a good sign.


Re: GitHub could be acquired by Microsoft

2018-06-04 Thread Joakim via Digitalmars-d-announce

On Monday, 4 June 2018 at 19:06:52 UTC, Maksim Fomin wrote:

On Monday, 4 June 2018 at 08:42:08 UTC, Walter Bright wrote:

On 6/3/2018 8:51 PM, Anton Fediushin wrote:
This is still just a rumour, we'll know the truth on Monday 
(which is today).


We'll stay on Github as long as it continues to serve our 
interests, which it has done very well, and I have no reason 
to believe will change.


We have a number of ties to Microsoft:

1. It's just down the street.
2. Many D users work at Microsoft.
3. Microsoft has always been helpful and supportive of Digital 
Mars, note the files licensed from Microsoft in the 
distribution.
4. Microsoft has invited myself and Andrei to speak at 
Microsoft from time to time.
5. Microsoft hosts the nwcpp.org meetings, which provide a 
venue for me to try out D presentations to a friendly crowd.
6. Microsoft has been generous with helping me solve some 
vexing compatibility problems from time to time.


OK, so Digital Mars is in good relationship with Microsoft (I 
am surprised because have never heard about it). However, 
judging by Microsoft acqusition experience my prediction is 
that github will slowly but surely degradate (as suggested on 
some forums, everything will be firstly switched to Microsoft 
account - to track data, then everything will be mangled by 
ads, then some features deemed unnecessary by Microsoft will be 
removed, then linux will be badly supoorted, then some features 
incompatible with Microsoft services will stop working, then 
servers will start work poorly like skype...).


P.S.

My second reaction after reading news (after shock) was to 
visit D forum.


Unlikely, you don't spend $7.5 billion on a company because you 
want to send a message that you're a good dev tools company, then 
neglect it.


I suggest you look at their online slides linked from the Nadella 
blog post to see their stated plan, such as integrating github 
into VS Code more:


http://aka.ms/ms06042018

Of course, this is Microsoft: they probably won't execute that 
plan well, and likely vastly overpaid for an unprofitable company 
in the first place, but they emphasize that they intend to keep 
github open and independent.


Re: SecureD moving to GitLab

2018-06-05 Thread Joakim via Digitalmars-d-announce

On Tuesday, 5 June 2018 at 06:45:48 UTC, Adam Wilson wrote:

Hello Fellow D'ers,

As some of you know I work for Microsoft. And as a result of 
the recent acquisition of GitHub by Microsoft, I have decided, 
out of an abundance of caution, to move all of my projects that 
currently reside on GitHub to GitLab.


[...]


This reads like a joke, why would it matter if you contributed to 
open source projects on an open platform that your employer runs?


Re: Driving Continuous Improvement in D

2018-06-04 Thread Joakim via Digitalmars-d-announce
On Monday, 4 June 2018 at 15:52:24 UTC, Steven Schveighoffer 
wrote:

On 6/2/18 3:23 AM, Mike Parker wrote:

[...]


I like the article, but was taken aback a bit by this quote: 
"for example, a PR to fix a bug in a specific piece of code 
mustn’t also edit the documentation of that function."


[...]


I think he was talking about _unrelated_ doc changes.


Re: GitHub could be acquired by Microsoft

2018-06-04 Thread Joakim via Digitalmars-d-announce

On Monday, 4 June 2018 at 09:47:58 UTC, Anton Fediushin wrote:

Oh look, rumours are confirmed:

https://itsfoss.com/microsoft-github/
MS bought GitHub for $5 billion.


It's official, Nat Friedman, formerly of Xamarin, is the new CEO:

https://blog.github.com/2018-06-04-github-microsoft/

MS is basically selling a story to Wall Street, "Everything new 
we tried since Windows and Office has failed abysmally, so we've 
learned our lesson and will be the business software company from 
now on," hence buying LinkedIn, pushing Azure, and now buying 
Github. I don't expect this new management direction to go any 
better.


Re: I have a plan.. I really DO

2018-06-29 Thread Joakim via Digitalmars-d-announce

On Friday, 29 June 2018 at 22:54:34 UTC, bachmeier wrote:

On Friday, 29 June 2018 at 07:03:52 UTC, Dmitry Olshansky wrote:

P.S. I mean what you think the future of native code is??? 
Rust? Crystal?? Nim???


The future of native code will be replacing scripting 
languages. D is really good at that task.


This will never happen, doesn't matter how good D is at it, they 
will always be better because they sacrifice performance for ease 
of use.


The future of native code will not be one language. I don't 
know why the discussion always turns to that, because it goes 
against the steady increase in the number of good languages 
that are available. Different folks have different preferences, 
many of us use multiple languages, and our preferences change 
over our lifetimes. These days language interoperability is 
getting so good that "choosing a language" is becoming 
obsolete. If we keep reducing the obstacles to using D, the 
number of users will continue to grow.


Yep, agreed.

WRT donating money, isn't it natural to explain what will be 
done with the money? There's been some movement in the 
direction of transparency. I'll only say there's more to be 
done in that area and leave it at that.


Let me echo this: transparency has historically been a big 
problem for D.  AFAIK, nobody in the broader community was ever 
told that the D foundation money would be used to fund a bunch of 
Romanian interns, it just happened. In the end, it appears to 
have worked out great, but why would anybody donate without being 
given transparency on where the money was going in the first 
place, when it could have ended badly?


I understand Andrei had connections with that Romanian 
university, but some donor might have had connections with a 
Brazilian or Chinese university that might have worked out even 
better. We'll never explore such connections and alternatives 
without transparency.


The current move to fund some IDE work with Opencollective is 
better in that regard, but with no concrete details on what it 
entails, not significantly better:


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

Anyway, I don't use such IDEs, so not a reason for me to donate 
anyway.


Honestly, Dmitry's posts starting this thread are incoherent, I'm 
not sure what he was trying to say. If he feels D users should be 
donating much more, he and others need to make clear how that 
money will be spent.


Re: I have a plan.. I really DO

2018-07-01 Thread Joakim via Digitalmars-d-announce

On Sunday, 1 July 2018 at 15:40:20 UTC, Ecstatic Coder wrote:

On Sunday, 1 July 2018 at 14:01:11 UTC, Jonathan M Davis wrote:
On Sunday, July 01, 2018 13:37:32 Ecstatic Coder via 
Digitalmars-d-announce wrote:

On Sunday, 1 July 2018 at 12:43:53 UTC, Johannes Loher wrote:
> Am 01.07.2018 um 14:12 schrieb Ecstatic Coder:
>> Add a 10-liner "Hello World" web server example on the 
>> main page and that's it.

>
> There already is one in the examples:
>
> #!/usr/bin/env dub
> /+ dub.sdl:
> name "hello_vibed"
> dependency "vibe-d" version="~>0.8.0"
> +/
> void main()
> {
>
> import vibe.d;
> listenHTTP(":8080", (req, res) {
>
> res.writeBody("Hello, World: " ~ req.path);
>
> });
> runApplication();
>
> }

Yeah I know, guess who asked for it...

But the last step, which is including such functionality into 
the standard library , will never happen, because nobody here 
seems to see the point of doing this.


I guess those who made that for Go and Crystal probably did 
it wrong.


What a mistake they did, and they don't even know they make a 
mistake, silly them... ;)


What should and shouldn't go in the standard library for a 
language is something that's up for a lot of debate and is 
likely to often be a point of contention. There is no clear 
right or wrong here. Languages that have had very sparse 
standard libraries have done quite well, and languages that 
have had kitchen sink libraries have done quite well. There 
are pros and cons to both approaches.


- Jonathan M Davis


I agree.

But here I'm just talking of the "public image" of the language.

Languages which integrates HTTP-related components in their 
standard library, and advertize on that (like Crystal for 
instance), obviously apply a different "marketing" strategy 
than languages which have chosen not to do so.


That's all I say...


Two points:

- Andrei pushed to include vibe.d but it didn't happen.

"There's no web services framework (by this time many folks know 
of D, but of those a shockingly small fraction has even heard of 
vibe.d). I have strongly argued with Sönke to bundle vibe.d with 
dmd over one year ago, and also in this forum. There wasn't 
enough interest."

https://forum.dlang.org/post/nipb14$ldb$1...@digitalmars.com

- As you acknowledge, integration has drawbacks too. I thought 
this was an interesting recent article about how it has now 
hobbled one of the biggest tech companies in the world:


https://stratechery.com/2018/intel-and-the-danger-of-integration/

I don't think the web matters enough these days that it is worth 
bundling, which is why a webassembly port is also not worth it 
for most:


https://www.mobiloud.com/blog/mobile-apps-vs-the-mobile-web/


Re: LDC 1.10.0

2018-06-21 Thread Joakim via Digitalmars-d-announce

On Wednesday, 20 June 2018 at 09:11:32 UTC, Russel Winder wrote:
Great to see LDC being as up to date with DMD as possible 
quickly.


Sadly due to a Phobos bug, I need D 2.081.0 :-(


It is very easy to build ldc from source, I do it all the time, 
even on my Android tablet or smartphone:


https://wiki.dlang.org/Building_LDC_from_source

If you're waiting on a Phobos fix, you can always backport it to 
LDC 1.10 and build it yourself.


You can also try out the WIP pull for the next release, available 
on its own branch, particularly if you're on linux where it's 
mostly working:


https://github.com/ldc-developers/ldc/pull/2752


Re: LDC 1.10.0

2018-06-19 Thread Joakim via Digitalmars-d-announce

On Tuesday, 19 June 2018 at 22:10:38 UTC, kinke wrote:

Hi everyone,

on behalf of the LDC team, I'm glad to announce LDC 1.10. The 
highlights of this version in a nutshell:


* Based on D 2.080.1.
* Win64: Breaking ABI change by passing vectors efficiently in 
registers.

* Config file extensions for cross-compilation.
* Support for DragonFly BSD.
* Various fixes, most notably wrt. exception stack traces on 
Linux.


Full release log and downloads: 
https://github.com/ldc-developers/ldc/releases/tag/v1.10.0


Thanks to all contributors!


Nice work, LDC has caught up to the latest DMD version, and 
that's with the much faster DMD release cycle since last year, 
good to see.


Re: I have a plan.. I really DO

2018-06-30 Thread Joakim via Digitalmars-d-announce

On Saturday, 30 June 2018 at 07:28:24 UTC, Ecstatic Coder wrote:

On Saturday, 30 June 2018 at 07:11:18 UTC, Joakim wrote:
On Saturday, 30 June 2018 at 06:52:01 UTC, Ecstatic Coder 
wrote:

[...]


I'd hope a manager would look at actually meaningful stats 
like downloads, rather than just fluffy stats such as "likes":


http://www.somsubhra.com/github-release-stats/?username=crystal-lang=crystal
http://www.somsubhra.com/github-release-stats/?username=ldc-developers=ldc

I see around 9k total downloads of the various Crystal 0.24 
and 0.25 versions over the last 8 months, compared to 14k 
downloads of the ldc 1.9 compiler alone from two months ago. 
Of course, all these stats can be gamed, but I think it'd be 
hard to argue Crystal is more popular.


Obviously you haven't read my post.

No problem, I'll repeat it.

I said that Crystal is probably gaining popularity FASTER than 
D.


I've never said that Crystal is more used than D.

FYI, D is in the top 50 at the TIOBE index, while Crystal is 
only in the top 100.


Of course, you will tell me that these rankings are numbers, 
and that a higher number means nothing. Right ?


I'll tell you that all data should be carefully vetted before 
using it to draw conclusions. For example, I just checked and the 
ldc data includes a download for every CI run, which skews it 
upwards, but I doubt enough to change my conclusion above:


https://github.com/ldc-developers/ldc/blob/master/.circleci/config.yml#L62


Re: I have a plan.. I really DO

2018-06-30 Thread Joakim via Digitalmars-d-announce

On Saturday, 30 June 2018 at 06:52:01 UTC, Ecstatic Coder wrote:

On Friday, 29 June 2018 at 22:59:25 UTC, bachmeier wrote:

On Friday, 29 June 2018 at 20:13:07 UTC, Ecstatic Coder wrote:

Have a look at Crystal's Github project, you will see that 
Crystal, still in development and quite far from its 1.0 mile 
version (= despite no parallism and windows support, etc) 
ALREADY has 11206 stars, 881 forks and 292 contributors :


https://github.com/crystal-lang/crystal

Not bad for a language in its 0.25 version and first released 
in June 2014 (4 years), especially compared to D in its 2.0 
version and first released in December 2001 (16 years), whose 
official compiler has 1806 stars, 452 forks and 168 
contributors :


https://github.com/dlang/dmd

If those numbers means anything, I think its that Crystal is 
probably getting popularity much quicker than D, and 
honestly, after having tried it, I think it's really 
deserved, even if I agree that there are still many things 
that remain to be implemented before it's really ready for an 
official "production-ready" 1.0 release.


Do you by chance work as a manager? Managers like comparisons 
that involve one number, with a higher number being better. I 
don't know what can be learned about D from that comparison 
and I don't think anyone else does either.


That's your opinion.

First, most managers don't become manager by chance, but 
because of their skills.


Like being able to take the right decisions, based on facts, 
not on personal preferences.


For instance, if a good manager sees that the github project of 
a 4 years old compiler has been liked by 11206 persons, and the 
github project of a 16 years old compiler has been liked by 
1806 persons, I think he could probably think that MUCH more 
people are interested in the development of the first github 
project than in the second.


I'd hope a manager would look at actually meaningful stats like 
downloads, rather than just fluffy stats such as "likes":


http://www.somsubhra.com/github-release-stats/?username=crystal-lang=crystal
http://www.somsubhra.com/github-release-stats/?username=ldc-developers=ldc

I see around 9k total downloads of the various Crystal 0.24 and 
0.25 versions over the last 8 months, compared to 14k downloads 
of the ldc 1.9 compiler alone from two months ago. Of course, all 
these stats can be gamed, but I think it'd be hard to argue 
Crystal is more popular.


Re: DConf 2018 Livestream

2018-05-02 Thread Joakim via Digitalmars-d-announce

On Wednesday, 2 May 2018 at 07:13:21 UTC, Mike Parker wrote:
For those of you unable to join us in Munich, you can watch the 
fun online via the following link:


https://www.youtube.com/user/hlmceventsgmbh

If you have any questions for the speakers, we'll have someone 
monitoring the D IRC and Slack. I'll have more info on which 
Slack channel shortly.


Please try using https://www.live-ask.com/ for questions, after 
announcing it's being used for questions at the conference, as it 
is a vibe.d app. :)


Re: Release D 2.080.0

2018-05-01 Thread Joakim via Digitalmars-d-announce

On Wednesday, 2 May 2018 at 00:00:46 UTC, Martin Nowak wrote:

Glad to announce D 2.080.0.

This release comes with CTFE support for log, exp and a couple 
of more math functions. There is also a new isReturnOnStack 
trait, an apply function for Nullable, and static method 
support for Objective-C classes.


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


-Martin


Nice work, getting this out on time before DConf. :)


Re: LDC 1.9.0 beta

2018-04-26 Thread Joakim via Digitalmars-d-announce

On Thursday, 26 April 2018 at 05:34:51 UTC, meppl wrote:

On Tuesday, 24 April 2018 at 15:53:23 UTC, Joakim wrote:

On Monday, 23 April 2018 at 09:18:07 UTC, Suliman wrote:
What about Webassembly support? Latest LLVM suppport it, so 
LDC should support also.


We don't support a lot of platforms that llvm supports. It 
will require someone to work on the port, which hasn't 
happened. I've said before that I don't think it's worth it, 
because the web has been declining as a platform:


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



I stumbled over this:
http://blog.qt.io/blog/2018/04/23/beta-qt-webassembly-technology-preview/
https://sdtimes.com/webdev/mozillas-webassembly-studio-enters-beta/

I dont want to argue, just throwing that in ;)


I don't know how those links are relevant. Yes, some projects are 
supporting WebAssembly, but that doesn't mean the web hasn't been 
declining, so this port likely isn't worth the effort.


Nobody is stopping anyone from doing the port though: ldc has 
some support for even more niche platforms like linux/PowerPC, 
simply because Kai wanted to do it. I'm just warning people who 
haven't seen those linked numbers that it likely isn't worth it.


Re: DConf 2018 Munich Registration is Open!

2018-05-01 Thread Joakim via Digitalmars-d-announce

On Sunday, 29 April 2018 at 15:34:49 UTC, Bastiaan Veelo wrote:

On Monday, 19 March 2018 at 13:34:36 UTC, Mike Parker wrote:

...

Visit dconf.org to see the programme[1] and register[2], then 
head over to the D Blog[3] for the latest post on DConf.


See you in Munich May 2-5!


[1] http://dconf.org/2018/schedule/index.html
[2] http://dconf.org/2018/registration.html
[3] 
http://dlang.org/blog/2018/03/19/dconf-2018-programme-open-registration/


I’m looking forward to following DConf this week remotely, the 
next best thing to being there in person! I wish all presenters 
good luck and that the conference be fruitful to it’s attendees 
and dlang as a whole.


My best greetings to all that I met last year and I hope to see 
you at a future conference!


Bastiaan.


Speaking of which, any word on streaming this year? I hope we'll 
be using https://www.live-ask.com/ to collect questions from the 
audience. ;)


Re: DConf 2018 Livestream

2018-05-03 Thread Joakim via Digitalmars-d-announce

On Thursday, 3 May 2018 at 11:53:02 UTC, Juan wrote:

On Thursday, 3 May 2018 at 05:46:45 UTC, Bastiaan Veelo wrote:
As I understand it, they were not recording but relying on 
YouTube to save the stream. For whatever reason, that didn’t 
work out. They wrote that they would be trying to recover the 
stream but it might well be lost. I think you should talk to 
them and explain what an asset these recordings are to dlang, 
and that we cannot let them be jeopardised by WiFi outages.


+1.

I was expecting to watch Walter's presentation, and now I would 
say this is a big failure for them. Come on, this not a new 
event!


In this day and age with all the cameras around us, if they 
really lost any content they should stop doing this.


Sorry if I'm too harsh, but this is totally unacceptable.


Don't worry, you didn't miss much. You're better off just reading 
his blog post, as Walter keeps his keynotes light on tech:


https://dlang.org/blog/2017/08/23/d-as-a-better-c/

While the post covers slightly different material, it gives the 
idea.


On Thursday, 3 May 2018 at 12:24:16 UTC, Per Nordlöw wrote:

On Wednesday, 2 May 2018 at 07:13:21 UTC, Mike Parker wrote:
For those of you unable to join us in Munich, you can watch 
the fun online via the following link:


https://www.youtube.com/user/hlmceventsgmbh


I can't find Andrei's talk this morning. Was it lost?


I believe the lost video is only from the morning of the first 
day. Andrei's talk may simply not be accessible in the archived 
livestream anymore, as Nemenja says, but there's no indication 
that it was lost.


Re: LDC 1.7.0

2018-01-07 Thread Joakim via Digitalmars-d-announce

On Saturday, 6 January 2018 at 16:25:46 UTC, German Diago wrote:
negative points also as I use it :p. By the way, and a bit 
off-topic for the post, but, if I want to port my code to run 
on Android/iOS, what is the recommended way?


1. create a shared library and consume it? Is that possible and 
smooth enough for ARM?


Yes, that is the way native apps are invoked on Android, see the 
wiki for more info:


http://wiki.dlang.org/Build_D_for_Android

iOS support is in limbo, as a contributor got very far with it 
but hasn't had time for it lately.




Re: Project Highlight: BSDScheme

2018-01-20 Thread Joakim via Digitalmars-d-announce

On Saturday, 20 January 2018 at 11:44:39 UTC, Mike Parker wrote:
Not long ago, I stumbled upon a tweet by Phil Eaton about 
BSDScheme, his Scheme interpreter written in D. He agreed to do 
a Project Highlight and here we are!


Blog
https://dlang.org/blog/2018/01/20/project-highlight-bsdscheme/

Reddit
https://www.reddit.com/r/programming/comments/7rpxah/bsdscheme_a_scheme_interpreter_implementation_in_d/


Autocorrect?  Andrew Appel's

check out his blog -> check out his blog post about designing his 
interpreter


Nice writeup.  I saw his blog post tweeted and was disappointed 
he didn't say anything about D, good you got that for this post.


Re: LDC 1.7.0

2018-01-20 Thread Joakim via Digitalmars-d-announce

On Sunday, 21 January 2018 at 04:45:49 UTC, Nicholas Wilson wrote:
On Saturday, 20 January 2018 at 15:19:13 UTC, Johannes Loher 
wrote:

On Saturday, 6 January 2018 at 01:19:14 UTC, kinke wrote:

[...]


Hey, thanks for your great work! Would it be possible to add a 
armhf build to the release? If you can not do it yourself, 
could you please point me to some resources where I can find 
out about how to create such a release build myself? Thank you!


See https://wiki.dlang.org/Building_LDC_from_source


You can also use the armhf build of ldc 1.6, even if just to 
build 1.7 yourself:


https://github.com/ldc-developers/ldc/releases/tag/v1.6.0


Re: Article: Fuzzing D code with LDC

2018-01-14 Thread Joakim via Digitalmars-d-announce

On Saturday, 13 January 2018 at 23:59:52 UTC, Johan Engelen wrote:

It's been a work-in-progress for half a year, but finished now:

http://johanengelen.github.io/ldc/2018/01/14/Fuzzing-with-LDC.html

"A not-so-well-written article about the fuzzing capability 
recently added to LDC, using LLVM’s libFuzzer. Compiling code 
with -fsanitize=fuzzer adds control-flow instrumentation used 
to guide the fuzzing and links-in the libFuzzer library that 
drives the fuzz testing (same as Clang). -fsanitize=fuzzer is 
available from LDC 1.4.0, not on Windows. LDC 1.6.0 was used 
for the examples in this article."


Hope the article gives you enough information to start fuzz 
testing your own projects.


cheers,
  Johan

(per Ali's request, the article has a nice fuzzy font for some 
of you :P)


Nice post, enjoyed reading it.  I need to look into trying out 
the shift sanitizer sometime.


Re: dxml 0.1.0 released

2018-02-10 Thread Joakim via Digitalmars-d-announce
On Saturday, 10 February 2018 at 18:57:53 UTC, Jonathan M Davis 
wrote:
On Saturday, February 10, 2018 16:14:41 Jacob Carlborg via 
Digitalmars-d- announce wrote:

On 2018-02-09 22:15, Jonathan M Davis wrote:
> [...]
This is great news! Have you run any benchmarks to see how it 
performs?


Kind of. I did some benchmarking to see if some code changes 
would improve performance, but I haven't tried benchmarking it 
against any other XML libraries. That would take a fair bit of 
time and effort, and IMHO, that would be better spent finishing 
the library first. Also, ldc's latest release is only up to dmd 
2.077.1, and dxml needs an improvement that got added to 
byCodeUnit in 2.078.0, so any benchmarking that wants to do 
something like compare dxml with a C/C++ parsing library while 
taking the optimizer out of the equation isn't going to work 
yet unless I fork byCodeUnit for dxml until we get another 
release of ldc.


ldc master uses the latest 2.078.2 frontend and stdlib, you could 
always build it yourself:


https://github.com/ldc-developers/ldc/blob/master/CMakeLists.txt#L54
https://wiki.dlang.org/Building_LDC_from_source


Re: Beta 2.079.0

2018-02-22 Thread Joakim via Digitalmars-d-announce
On Thursday, 22 February 2018 at 10:07:40 UTC, Jonathan M Davis 
wrote:
On Thursday, February 22, 2018 09:54:17 Uknown via 
Digitalmars-d-announce wrote:

On Thursday, 22 February 2018 at 09:48:20 UTC, Jonathan M Davis

wrote:
> [...]

Which is why we should not let it pass. Why didn't this 
feature go through the usual DIP process?


All I can say for sure is what was said in the PR linked in 
another post:


https://github.com/dlang/dmd/pull/6589

Based on the comments in the PR, Walter initially opposed it 
because he didn't like how it looked, but he said nothing after 
that. However, later, Andrei comments on the PR and thought 
that it was simply a fix for the current syntax and that it 
didn't need a DIP and thus approved it. I have no idea if he 
talked to Walter about it or not, but there is nothing in the 
PR to indicate that Walter ever changed his mind.


Heh, I just looked at who voted for and against in the first 
comment, by pressing and holding each icon, and it shows Walter 
voting both for and against it! :D


Re: Beta 2.079.0

2018-02-19 Thread Joakim via Digitalmars-d-announce

On Monday, 19 February 2018 at 15:45:30 UTC, bachmeier wrote:

On Monday, 19 February 2018 at 10:49:03 UTC, Martin Nowak wrote:
Glad to announce the first beta for the 2.079.0 release, ♥ to 
the 77 contributors for this release.


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


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

- 

This is probably the most feature-laden 2 month release ever.
...


This looks good, but I'm not sure the many new features go well 
with the "2 month release" thing. I hope there are plans for a 
longer than usual testing period. Your announcement reads to me 
like it's going to be a regression bug release.


17. Allow multiple selective imports from different modules in a 
single import statement


I have a bad feeling that that one is going to be a source of a 
raft of bugs for years to come.


Re: Beta 2.079.0

2018-02-24 Thread Joakim via Digitalmars-d-announce

On Friday, 23 February 2018 at 11:57:05 UTC, Martin Nowak wrote:
Furthermore there remain various ideas that would avoid the 
original ambiguity. Whether such changes are worthwhile is up 
for discussion and would benefit from someone taking the lead.


I really like psychoRabbit's array syntax suggestion.  I see no 
reason the old syntax can't be kept around only for trailing 
symbols, while requiring the array syntax for selective import 
chains.


I still think that local imports are nice for being explicit 
and toolable but have the downside of being brittle.
Something like bash style expansion could help to hit a sweet 
spot IMHO.


import std.{algorithm : {find, findSplit}, stdio : writeln};
import 
std.experimental.allocator.building_blocks.{free_list, region};


But certainly anything in that direction requires time and 
research, which I don't have for that topic.


Sure, it will require someone willing to implement it, not you.

In hindsight the voting experiment on 
https://github.com/dlang/dmd/pull/6589 might have prevented 
useful early feedback and thinking.


Given the effort required for a language change, it's seductive 
to streamline seemingly small changes, but it certainly 
increases the risk of design mistakes, thanks for appealing 
against this one.


Reflecting further on your pull during this debate, my initial 
suggestion that it would cause a bunch of errors was probably 
overblown, readability is the main issue.  The ambiguity you 
expanded on was fine if only limited to one set of trailing 
symbols, it became too hard to parse when a bunch of selective 
imports were chained.


I hope someone steps us to implement this feature with better 
syntax, though it will require more effort than your simple 
patch, as I do see the need for it.


Re: Beta 2.079.0

2018-02-22 Thread Joakim via Digitalmars-d-announce

On Friday, 23 February 2018 at 00:05:59 UTC, Martin Nowak wrote:

- practical examples of this usage are hardly confusing

  import std.stdio : writeln, std.algorithm : find;


I agree that that's not so bad, though it's more likely to look 
like this:


import std.stdio : writeln, stdin, stderr, stdout, std.algorithm 
: find, splitter, strip, std.string: chomp, splitLines;


Do you not see that people don't want to parse that in their head?

Here's what it looks like when some joker has a bunch of modules 
all in the same top-level folder:


import game : write, call, mean, engine : render, debug, blit, 
sprite : display, hide, move;


People don't want to read and figure out imports like that.

As I've said repeatedly, I like the feature and the problem it's 
trying to solve, just please give us some better syntax to make 
it easier to read.


- we're currently proliferating selective imports which cause a 
lot of D code to become very brittle
  
(https://github.com/andralex/phobos/blob/cd3152c7bf4466e74b7fb9bd43d47e996caf5918/std/datetime/systime.d#L10076-L10083)


I don't know what's "brittle" about that, perhaps too verbose for 
your liking, but certainly clear.


And last but not least, the simpler the topic the more 
opinions, so please refrain from "I don't like it, +1" and 
leave space for actual arguments.


While you and Walter are right that it's easy to bikeshed this 
relatively simple topic, please also consider that imports are 
something that people use all the time.  Every time I have to 
write some trivial test executable, I have to write some imports 
first, which can be as long or longer than writing the simple 
executed code itself.


This means every D dev has written some imports and doesn't want 
to seem them getting less clear to parse.  Maybe this is saliency 
bias, but it is worth weighing when changing a commonly-used 
feature:


https://thedecisionlab.com/bias/salience-bias/


Re: Beta 2.079.0

2018-02-21 Thread Joakim via Digitalmars-d-announce

On Tuesday, 20 February 2018 at 08:43:50 UTC, Martin Nowak wrote:

On Monday, 19 February 2018 at 15:58:57 UTC, Joakim wrote:
17. Allow multiple selective imports from different modules in 
a single import statement


I have a bad feeling that that one is going to be a source of 
a raft of bugs for years to come.


No need to use it if you don't like it.


I don't think I will.

It's particularly useful for small examples, localized imports 
and hacking.


Eh, the problem is it won't be used just for that.

It's mainly a generalisation of the existing possibility to mix 
module imports and one selective import at the end.


Yes, I recognize the need for something like that, as I too have 
been annoyed that I had to split up import lines when adding 
selective symbols.


If you prefer java-like 50 lines import manifests, then by all 
means keep using those.


I don't, but there's a clarity to those that's not there with 
this.



How would that feature cause bugs though?


Two ways I can think of, first, local imports was supposed to be 
a small change and yet here we are fixing symbol leaks with it 
_years_ later.  Looking at your patch now, it's so small that 
maybe it won't have those problems.


The other are the ambiguity and readability issues that others 
have already mentioned, that will trip up D devs for years to 
come.


I thought about chiming in on that PR when it was open, but 
didn't because the vote was split at 5-5 and I thought it 
wouldn't get merged.  Also, I'm not against the idea in 
principle, but I do wish you'd chosen better syntax, such as not 
reusing the comma to split modules too.  I don't have a better 
separator suggestion though, `|`?


Re: D's Newfangled Name Mangling

2017-12-22 Thread Joakim via Digitalmars-d-announce

On Thursday, 21 December 2017 at 06:53:35 UTC, Mike Parker wrote:
On Wednesday, 20 December 2017 at 19:16:03 UTC, Ali Çehreli 
wrote:

On 12/20/2017 07:41 AM, David Gileadi wrote:




Typo: "This is were I stepped in..." -> "..where.."


Yeah, an excellent post. Strangely, I could find just one typo 
myself. :)


Its rather simple ->
It's rather simple



Thanks, guys!


Still making my way through this long post, but

that make this information accessible faster -> that make 
accessing this information faster


Re: D's Newfangled Name Mangling

2017-12-22 Thread Joakim via Digitalmars-d-announce
On Friday, 22 December 2017 at 14:34:56 UTC, Andrei Alexandrescu 
wrote:

On 12/20/17 8:57 AM, Mike Parker wrote:
Many thanks to Rainer for his insightful new article for the D 
Blog outlining the new name mangling algorithm. He talks about 
the old implementation and its limitations before going into 
the details of the new one. It's a topic I had never 
considered digging into before, even when the big Voldemort 
issue first popped up, but now I find it interesting.


The blog
https://dlang.org/blog/2017/12/20/ds-newfangled-name-mangling/

Reddit
https://www.reddit.com/r/programming/comments/7l1h36/ds_newfangled_name_mangling/


Hi folks, the discussion in the announce forum is most welcome 
but statistically very few people read the forum. Please direct 
discussions to the reddit group, which enjoys a broader 
audience. Sadly right now the sparse reddit discussion makes 
the reception look worse than it actually was. -- Andrei


We mostly just post corrections and technical suggestions in 
here, which are more likely to be seen.  Anyway, the post has 
already done well on proggit, made top 25 most-liked of the last 
week and top 10 dlang.org posts of the last year:


https://www.reddit.com/r/programming/top/?sort=top=week
https://www.reddit.com/domain/dlang.org/top/?sort=top=year


Re: Release D 2.078.0

2018-01-04 Thread Joakim via Digitalmars-d-announce

On Thursday, 4 January 2018 at 13:03:21 UTC, Mike Parker wrote:

On Thursday, 4 January 2018 at 02:27:13 UTC, Mike Parker wrote:



Awesome! I'll post the blog announcement and hit social media 
in ~12 hours.


Blog:
https://dlang.org/blog/2018/01/04/dmd-2-078-0-has-been-released/

Reddit:
https://www.reddit.com/r/programming/comments/7o2tcw/dmd_20780_has_been_released/


Nice post, good explanations and code samples.  Here's some 
phrases I'd change:


quality of life -> quality-of-life
stubbed out -> stubbed-out
line, or an alternative -> line or an alternate D runtime
dependent -> that depends
DMD 2.80.0 -> DMD 2.080.0


Re: How an Engineering Company Chose to Migrate to D

2018-06-21 Thread Joakim via Digitalmars-d-announce

On Wednesday, 20 June 2018 at 13:21:30 UTC, Mike Parker wrote:
If you saw Bastiaan Veelo's DConf 2017 presentation, you'll 
know that his employer was evaluating D as a candidate for 
migrating their code base away from Extended Pascal. Recently, 
the decision was made and D was the coice. In this post, 
Bastiaan tells the story of how that came to be and how they'll 
be moving forward.


The blog:
https://dlang.org/blog/2018/06/20/how-an-engineering-company-chose-to-migrate-to-d/


"that's were" -> that's where

The code example for the string80 alias has a closing HTML code 
tag leaked into the displayed example somehow.


Re: SAoC Updates

2018-07-30 Thread Joakim via Digitalmars-d-announce

On Tuesday, 31 July 2018 at 03:23:41 UTC, Mike Parker wrote:
I've updated the SAoC page to reflect the decision to accept 
applications from non-university students.


Great! I think this will open up the pool of applicants 
considerably.


Re: Dpp on run.dlang.io

2018-08-03 Thread Joakim via Digitalmars-d-announce

On Saturday, 4 August 2018 at 05:06:26 UTC, Joakim wrote:

On Saturday, 4 August 2018 at 02:39:23 UTC, Mike Franklin wrote:
On Saturday, 4 August 2018 at 01:27:49 UTC, Laeeth Isharc 
wrote:
Thanks to Seb and Atila it is now very easy to show  a D 
program just #includeing C headers.  If just works.  Modulo 
bugs.  In time I am hopeful Atila will start to have more of 
C++ headers working too.


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


Cool! Can we now deprecate and eventually jettison C/C++ 
bindings from druntime, please?


No, because dpp is new, not commonly used, and I think only 
works with DMD.


Scratch that last part, works with LDC too:

https://travis-ci.org/atilaneves/dpp


Re: Dpp on run.dlang.io

2018-08-03 Thread Joakim via Digitalmars-d-announce

On Saturday, 4 August 2018 at 02:39:23 UTC, Mike Franklin wrote:

On Saturday, 4 August 2018 at 01:27:49 UTC, Laeeth Isharc wrote:
Thanks to Seb and Atila it is now very easy to show  a D 
program just #includeing C headers.  If just works.  Modulo 
bugs.  In time I am hopeful Atila will start to have more of 
C++ headers working too.


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


Cool! Can we now deprecate and eventually jettison C/C++ 
bindings from druntime, please?


No, because dpp is new, not commonly used, and I think only works 
with DMD. It might make sense to split those bindings off into 
their own git repo, separate from the compiled parts of druntime 
though.


Re: D support for ChromeOS

2018-08-21 Thread Joakim via Digitalmars-d-announce

On Tuesday, 21 August 2018 at 20:29:34 UTC, Emil wrote:
On Saturday, 3 February 2018 at 18:11:15 UTC, Daniel Kozak 
wrote:

[...]


Tried it on an Acer Chromebook R13 running Version 69.0.3497.35 
(Official Build) dev (32-bit). I have no previous experience 
with llvm.


[...]


Looks like your Chromebook's got a MediaTek AArch64 processor, ie 
64-bit ARM, which wasn't supported by D until the just released 
LDC 1.11. I'd try building 1.11 from source, using these 
instructions:


https://wiki.dlang.org/Building_LDC_from_source

You will need a working CMake though, looks like the one you're 
trying to use isn't running.


Re: D support for ChromeOS

2018-08-21 Thread Joakim via Digitalmars-d-announce

On Wednesday, 22 August 2018 at 01:48:01 UTC, Joakim wrote:

On Tuesday, 21 August 2018 at 20:29:34 UTC, Emil wrote:
On Saturday, 3 February 2018 at 18:11:15 UTC, Daniel Kozak 
wrote:

[...]


Tried it on an Acer Chromebook R13 running Version 
69.0.3497.35 (Official Build) dev (32-bit). I have no previous 
experience with llvm.


[...]


Looks like your Chromebook's got a MediaTek AArch64 processor, 
ie 64-bit ARM, which wasn't supported by D until the just 
released LDC 1.11. I'd try building 1.11 from source, using 
these instructions:


https://wiki.dlang.org/Building_LDC_from_source

You will need a working CMake though, looks like the one you're 
trying to use isn't running.


Oh, I forgot, if you're running Android apps in your Chromebook, 
you can install the Termux app and use LDC through there:


https://play.google.com/store/apps/details?id=com.termux=en

The first AArch64 build of LDC for Termux should be up in a day 
or so, `apt install ldc`, or you can build it from source in 
Termux, if you can't wait. ;)


Re: LDC 1.11.0

2018-08-24 Thread Joakim via Digitalmars-d-announce

On Friday, 24 August 2018 at 12:21:32 UTC, Uknown wrote:

On Tuesday, 21 August 2018 at 15:31:16 UTC, Joakim wrote:

On Sunday, 19 August 2018 at 10:11:42 UTC, 鲜卑拓跋枫 wrote:

[...]
I tried looking for a RISC-V VPS or dev board recently and 
found basically nothing, just two boards from SiFive that are 
too small or too expensive.


There is the SHAKTI Program by IIT Madras : 
http://shakti.org.in/about.html


I've actually heard of it, what of it? Is someone using it in a 
production environment, or do they have a VPS or dev board? If 
not, academic projects sitting half-finished in some grad 
students' computers somewhere aren't relevant to my questions.


Re: LDC 1.11.0

2018-08-25 Thread Joakim via Digitalmars-d-announce

On Saturday, 18 August 2018 at 16:47:35 UTC, kinke wrote:

Glad to announce LDC 1.11:

* Based on D 2.081.2.
* Prebuilt packages now using LLVM 6.0.1 and including 
additional cross-compilation targets (MIPS, MSP430, RISC-V and 
WebAssembly).
* Rudimentary support for compiling & linking directly to 
WebAssembly. See the dedicated Wiki page [1] for how to get 
started.
* AArch64 (64-bit ARM) now mostly working on Linux/glibc and 
Android.
* Some support for classes without TypeInfos, for -betterC 
and/or a minimal (d)runtime.


Full release log and downloads: 
https://github.com/ldc-developers/ldc/releases/tag/v1.11.0


Thanks to all contributors!

[1] https://wiki.dlang.org/Generating_WebAssembly_with_LDC


Since this is the first ldc release with a mostly working 64-bit 
ARM, ie AArch64, port, I've put up ldc builds for linux/AArch64 
and Android. You can get the linux build at the github link 
above; the Android build is available from the Termux app in the 
Android store, by running `pkg install ldc`:


https://play.google.com/store/apps/details?id=com.termux=en

You can see what else remains to be done for the AArch64 port by 
looking at the logs from the linux/AArch64 Shippable CI linked 
from the github release and the checklist in this ldc tracking 
issue:


https://github.com/ldc-developers/ldc/issues/2153

I've added info on how to cross-compile a D runtime and standard 
library for linux/AArch64 to the wiki:


https://wiki.dlang.org/Building_LDC_runtime_libraries#Usage_for_cross-compilation

I've also started updating the wiki on how to build Android apps 
in D for 64-bit ARM devices.


Re: D support for ChromeOS

2018-08-28 Thread Joakim via Digitalmars-d-announce
On Tuesday, 28 August 2018 at 12:34:50 UTC, Martin Tschierschke 
wrote:

On Wednesday, 22 August 2018 at 10:28:32 UTC, Joakim wrote:

https://play.google.com/store/apps/details?id=com.termux=en



$ apt search ldc
Sorting... Done
Full Text Search... Done
ipcalc/stable 0.41 aarch64
  Calculates IP broadcast, network, Cisco wildcard mask, and 
host ranges


ldc/stable 1.11.0 aarch64
  D programming language compiler, built with LLVM

http://termux.net/dists/stable/main/binary-aarch64/

You should post it, as an extra topic on announce:
  D on Android with Termux LDC now 32 and 64 Bit!
  ...

Thank you - it works!


I did, though not as a new topic:

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

I'm updating the wiki on how to use it and getting rid of the 
main function requirement, then I'll write up a post for Mike on 
the D blog.


Re: D support for ChromeOS

2018-08-22 Thread Joakim via Digitalmars-d-announce

On Wednesday, 22 August 2018 at 10:06:39 UTC, Joakim wrote:
On Wednesday, 22 August 2018 at 07:14:22 UTC, Martin 
Tschierschke wrote:

On Wednesday, 22 August 2018 at 01:56:45 UTC, Joakim wrote:
unning.
[...]


Oh, I forgot, if you're running Android apps in your 
Chromebook, you can install the Termux app and use LDC 
through there:


https://play.google.com/store/apps/details?id=com.termux=en

The first AArch64 build of LDC for Termux should be up in a 
day or so, `apt install ldc`, or you can build it from source 
in Termux, if you can't wait. ;)

+1 ; Cool, not sure if I can wait, but probably I will :-)


I must say I really like looking at this version string, 
straight from the Termux app:


$ ldc2 --version
LDC - the LLVM D compiler (1.11.0):
  based on DMD v2.081.2 and LLVM 6.0.1-2

  built with LDC - the LLVM D compiler (1.11.0)
  Default target: aarch64--linux-android
  Host CPU: cortex-a73
  http://dlang.org - http://wiki.dlang.org/LDC

  Registered Targets:
aarch64- AArch64 (little endian)
aarch64_be - AArch64 (big endian)
arm- ARM
arm64  - ARM64 (little endian)
armeb  - ARM (big endian)
thumb  - Thumb
thumbeb- Thumb (big endian)
x86- 32-bit X86: Pentium-Pro and above
x86-64 - 64-bit X86: EM64T and AMD64


It's up:

$ apt search ldc
Sorting... Done
Full Text Search... Done
ipcalc/stable 0.41 aarch64
  Calculates IP broadcast, network, Cisco wildcard mask, and host 
ranges


ldc/stable 1.11.0 aarch64
  D programming language compiler, built with LLVM

http://termux.net/dists/stable/main/binary-aarch64/


Re: D support for ChromeOS

2018-08-22 Thread Joakim via Digitalmars-d-announce
On Wednesday, 22 August 2018 at 07:14:22 UTC, Martin Tschierschke 
wrote:

On Wednesday, 22 August 2018 at 01:56:45 UTC, Joakim wrote:
unning.
[...]


Oh, I forgot, if you're running Android apps in your 
Chromebook, you can install the Termux app and use LDC through 
there:


https://play.google.com/store/apps/details?id=com.termux=en

The first AArch64 build of LDC for Termux should be up in a 
day or so, `apt install ldc`, or you can build it from source 
in Termux, if you can't wait. ;)

+1 ; Cool, not sure if I can wait, but probably I will :-)


I must say I really like looking at this version string, straight 
from the Termux app:


$ ldc2 --version
LDC - the LLVM D compiler (1.11.0):
  based on DMD v2.081.2 and LLVM 6.0.1-2

  built with LDC - the LLVM D compiler (1.11.0)
  Default target: aarch64--linux-android
  Host CPU: cortex-a73
  http://dlang.org - http://wiki.dlang.org/LDC

  Registered Targets:
aarch64- AArch64 (little endian)
aarch64_be - AArch64 (big endian)
arm- ARM
arm64  - ARM64 (little endian)
armeb  - ARM (big endian)
thumb  - Thumb
thumbeb- Thumb (big endian)
x86- 32-bit X86: Pentium-Pro and above
x86-64 - 64-bit X86: EM64T and AMD64


Re: LDC 1.11.0

2018-08-23 Thread Joakim via Digitalmars-d-announce

On Thursday, 23 August 2018 at 09:51:30 UTC, Brian wrote:

On Tuesday, 21 August 2018 at 15:31:16 UTC, Joakim wrote:

On Sunday, 19 August 2018 at 10:11:42 UTC, 鲜卑拓跋枫 wrote:

Many thanks for your effort!
And hope the subsequent LDC releases with LLVM 7.0 will be 
mature enough on AArch64 and RISC-V for production 
environment.


Who is actually running AArch64 or RISC-V in a "production 
environment?" Maybe a few for AArch64, but pretty much nobody 
for RISC-V. I tried looking for a RISC-V VPS or dev board 
recently and found basically nothing, just two boards from 
SiFive that are too small or too expensive.


We need support AArch64 :)


Why?


Re: LDC 1.11.0

2018-08-21 Thread Joakim via Digitalmars-d-announce

On Sunday, 19 August 2018 at 10:11:42 UTC, 鲜卑拓跋枫 wrote:

Many thanks for your effort!
And hope the subsequent LDC releases with LLVM 7.0 will be 
mature enough on AArch64 and RISC-V for production environment.


Who is actually running AArch64 or RISC-V in a "production 
environment?" Maybe a few for AArch64, but pretty much nobody for 
RISC-V. I tried looking for a RISC-V VPS or dev board recently 
and found basically nothing, just two boards from SiFive that are 
too small or too expensive.


Re: LDC 1.11.0 beta2

2018-07-21 Thread Joakim via Digitalmars-d-announce

On Sunday, 15 July 2018 at 19:46:24 UTC, kinke wrote:

Glad to announce the second beta for LDC 1.11.

* Based on D 2.081.1+ (today's DMD stable).
* Prebuilt packages now using LLVM 6.0.1 and including 
additional cross-compilation targets (MIPS, MSP430, RISC-V and 
WebAssembly).
* Rudimentary support for compiling & linking directly to 
WebAssembly. See the dedicated Wiki page [1] for how to get 
started.
* Some support for classes without TypeInfos, for -betterC 
and/or a minimal (d)runtime.


Full release log and downloads: 
https://github.com/ldc-developers/ldc/releases/tag/v1.11.0-beta2


Thanks to all contributors!

[1] https://wiki.dlang.org/Generating_WebAssembly_with_LDC


Ldc 1.11 beta 2 is also the first ldc release with a mostly 
working Android/AArch64 port.


In order to cross-compile the stdlib for 64-bit ARM, follow these 
instructions for linux/x64, adapted from the wiki page for 
Android/ARM (https://wiki.dlang.org/Build_D_for_Android), which 
require the same build tools- CMake, the Android NDK, and either 
Make or Ninja:


export 
CC=/path/to/your/android-ndk-r17b/toolchains/llvm/prebuilt/linux-x86_64/bin/clang


/path/to/your/ldc2-1.11.0-beta2-linux-x86_64/bin/ldc-build-runtime --ninja 
--targetPreset=Android-aarch64

Leave off the --ninja flag if you're using Make instead, and 
adjust the paths in all the commands, replacing /path/to/your/ 
with the correct paths on your system. This will download the ldc 
source into a temporary directory called ldc-build-runtime.tmp 
and attempt to cross-compile the stdlib for Android/AArch64, but 
fail with the following error:


std/math.d(4320): Error: static assert:  `infL > 2.0L && 
(infL <= 4.0L)` is false


Download and apply a small workaround patch for Phobos 
(https://gist.github.com/joakim-noah/7b997a7f8c49ff8f9d93658f78ec3cbe) to get it to work:


curl -L -O 
https://gist.githubusercontent.com/joakim-noah/7b997a7f8c49ff8f9d93658f78ec3cbe/raw/a7c7a2d46a679e34236f00fa9a5dee19e3b50667/compile_phobos_aarch64


git apply compile_phobos_aarch64

/path/to/your/ldc2-1.11.0-beta2-linux-x86_64/bin/ldc-build-runtime --ninja 
--targetPreset=Android-aarch64 --reset

You can now cross-compile command-line binaries for 
Android/AArch64, similar to Android/ARM as shown on the wiki:


export NDK=/path/to/your/android-ndk-r17b

/path/to/your/ldc2-1.11.0-beta2-linux-x86_64/bin/ldc2 
-mtriple=aarch64-none-linux-android 
-L-L/path/to/your/ldc-build-runtime.tmp/lib 
-Xcc=--sysroot=$NDK/platforms/android-21/arch-arm64 
-Xcc=-fuse-ld=bfd -Xcc=-gcc-toolchain 
-Xcc=$NDK/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64 -Xcc=-target -Xcc=aarch64-none-linux-android -Xcc=-fpie -Xcc=-pie sieve.d


The Phobos patch shows the remaining pieces that need to be 
ported, support for 128-bit real floating-point at compile-time 
(as that static assert tripping is likely because the 128-bit 
`real.max` is slightly larger than the 80-bit one and overflows 
to Inf) and core.stdc.stdarg.va_arg for AArch64.


You can also build the stdlib test runners, after applying this 
druntime patch to disable a few tests that cannot be compiled 
(https://gist.github.com/joakim-noah/417ffbac4d6041242d3091001595981d):


curl -L -O 
https://gist.githubusercontent.com/joakim-noah/417ffbac4d6041242d3091001595981d/raw/555d5c85f9055fe63d7c2c6a0493425a9c21edd2/disable_druntime_tests_aarch64


git apply disable_druntime_tests_aarch64

/path/to/your/ldc2-1.11.0-beta2-linux-x86_64/bin/ldc-build-runtime --ninja 
--targetPreset=Android-aarch64 --testrunners

You can then copy the druntime-test-runner and 
phobos2-test-runner binaries from the ldc-build-runtime.tmp 
directory to the Termux app on an Android/AArch64 device to see 
what tests fail. In my experience, all the druntime tests pass 
and tests only fail for 6-7 Phobos modules, mostly related to 
CTFE not supporting 128-bit floating point:


https://github.com/ldc-developers/ldc/issues/2153#issuecomment-379847985

The debug versions of the above test binaries (which are also 
built with the above command) hang when run, tripping an assert 
in the GC on startup, though they work fine when natively 
compiled with an older ldc 0.17 on an Android/AArch64 device.


If you'd like to chip in on any of these remaining issues, here's 
a straightforward way to get started on porting D to the most 
widely-deployed CPU architecture used for personal computing on 
the planet, with almost all iOS devices and about half of Android 
devices now running on AArch64, billions of devices.


I'll get those last few druntime tests ported next.


Re: LDC 1.11.0 beta2

2018-07-17 Thread Joakim via Digitalmars-d-announce

On Wednesday, 18 July 2018 at 01:35:11 UTC, Ali wrote:

On Sunday, 15 July 2018 at 19:46:24 UTC, kinke wrote:

Glad to announce the second beta for LDC 1.11.


* Prebuilt packages now using LLVM 6.0.1 and including 
additional cross-compilation targets (MIPS, MSP430, RISC-V and 
WebAssembly).
* Rudimentary support for compiling & linking directly to 
WebAssembly. See the dedicated Wiki page [1] for how to get 
started.



[1] https://wiki.dlang.org/Generating_WebAssembly_with_LDC


The WebAssembly part discussed on hackernews 
https://news.ycombinator.com/item?id=17546063


Second link on the front page now.


Re: Symmetry Autumn of Code

2018-07-20 Thread Joakim via Digitalmars-d-announce

On Saturday, 14 July 2018 at 07:30:26 UTC, Joakim wrote:

On Saturday, 14 July 2018 at 06:02:37 UTC, Mike Parker wrote:
Thanks to the sponsorship of Symmetry Investments, the D 
Language Foundation is happy to announce the Symmetry Autumn 
of Code!


We're looking for three university students to hack on D this 
autumn, from September - January. We're also in search of 
potential mentors and ideas for student projects. Head to the 
Symmetry Autumn of Code page for the details.


Spread the word!

https://dlang.org/blog/symmetry-autumn-of-code/


"join us" for
"submit an application" -> apply (confusing otherwise)

Maybe sum up and make clear that each student can earn between 
$3000-4000, instead of capped at $1k.


This is why I suggested stating the total sum clearly:

"20 hours/week for four months for a salary of $1000 seems kind 
of crappy. Am I reading this wrong?"

https://www.reddit.com/r/programming/comments/8yram3/comment/e2gttg2

You're currently requiring people to read carefully and do the 
math to understand this: most people do neither.




Re: Symmetry Autumn of Code

2018-07-14 Thread Joakim via Digitalmars-d-announce

On Saturday, 14 July 2018 at 06:02:37 UTC, Mike Parker wrote:
Thanks to the sponsorship of Symmetry Investments, the D 
Language Foundation is happy to announce the Symmetry Autumn of 
Code!


We're looking for three university students to hack on D this 
autumn, from September - January. We're also in search of 
potential mentors and ideas for student projects. Head to the 
Symmetry Autumn of Code page for the details.


Spread the word!

https://dlang.org/blog/symmetry-autumn-of-code/


"join us" for
"submit an application" -> apply (confusing otherwise)

Maybe sum up and make clear that each student can earn between 
$3000-4000, instead of capped at $1k.


Why limit it to students? If the goal is to have a youth 
injection, just use an age limit- say 18-25- I see no reason for 
the stupid college bias.


Re: Symmetry Autumn of Code

2018-07-14 Thread Joakim via Digitalmars-d-announce

On Saturday, 14 July 2018 at 13:57:12 UTC, Laeeth Isharc wrote:

On Saturday, 14 July 2018 at 07:30:26 UTC, Joakim wrote:

On Saturday, 14 July 2018 at 06:02:37 UTC, Mike Parker wrote:
Thanks to the sponsorship of Symmetry Investments, the D 
Language Foundation is happy to announce the Symmetry Autumn 
of Code!


We're looking for three university students to hack on D this 
autumn, from September - January. We're also in search of 
potential mentors and ideas for student projects. Head to the 
Symmetry Autumn of Code page for the details.


Spread the word!

https://dlang.org/blog/symmetry-autumn-of-code/


"join us" for
"submit an application" -> apply (confusing otherwise)

Maybe sum up and make clear that each student can earn between 
$3000-4000, instead of capped at $1k.


Why limit it to students? If the goal is to have a youth 
injection, just use an age limit- say 18-25- I see no reason 
for the stupid college bias.


Hi Joakim.

Thanks for suggestions.


Sure, thanks for funding this worthwhile initiative.

I don't know what legal aspects there are relating to targeting 
age in different countries.  We are definitely targeting people 
earlier in their careers.  I agree with you that talent isn't 
only found amongst students, and I've in the past hired someone 
that didn't even finish high school and has gone on to do good 
work for the D community.  So as far as Symmetry goes we are 
very open to unusual talent.  A degree is just one piece of 
interesting information.


Yes, but the current requirements exclude, for example, recent 
college grads who may not be employed yet and might do much 
better work than a harried college student. I don't know the 
legal risks in detail, but I can't imagine the risk/reward to 
opening it up would favor the current limitation.


Re: Funding code-d

2018-07-14 Thread Joakim via Digitalmars-d-announce

On Friday, 13 July 2018 at 14:20:19 UTC, Mike Parker wrote:
As promised in my tweet of June 30 (and to the handful of 
people who emailed me), the cloud of mystery surrounding the 
use of the money raised for code-d and its supporting tools has 
now been (partially) lifted!


In this post, I lay out the details of how the first $1000 will 
be paid out to project maintainer Jan Jurzitza, a.k.a 
Webfreak001, and explain what we hope to achieve with this 
ecosystem fundraising initiative going forward.


This time around, it all came together in the background of 
prepping for DConf with little forethought beyond activating an 
Open Collective goal and then working with Jan to determine the 
details. Lessons were learned. Later this year, you'll see the 
result when we announce the next of what we hope to be an 
ongoing series of funding targets.


In the meantime:

The blog
https://dlang.org/blog/2018/07/13/funding-code-d/

Reddit
https://www.reddit.com/r/d_language/comments/8yka7b/funding_coded_the_d_blog/


Nice explication of the plan, really needed. Why github never 
rolled out such a bounty program for OSS and other public 
projects has to be one of the head-scratching moves of all time, 
no wonder they were about to run out of money before they sold.


A good way to decide on future projects would be to let 
prospective donors stake money on various proposals, to see how 
much backing they might receive, sort of like how kickstarter and 
other crowdfunding sites work.


Re: LDC 1.12.0-beta1

2018-09-04 Thread Joakim via Digitalmars-d-announce
On Tuesday, 4 September 2018 at 23:03:30 UTC, Arun Chandrasekaran 
wrote:

On Tuesday, 4 September 2018 at 22:47:39 UTC, kinke wrote:

Glad to announce the first beta for LDC 1.12:

* Based on D 2.082.0.
* LTO working for Win64 targets.
* IR-based PGO working for Windows targets.

Full release log and downloads: 
https://github.com/ldc-developers/ldc/releases/tag/v1.12.0-beta1


Thanks to all contributors!


Fantastic work! This is the first time LDC caught up with DMD 
in a single day, I guess.


No, kinke has had this down before, as the first 1.10 beta came 
out within two weeks and the 1.11 beta came out on the same day 
as its upstream dmd:


https://forum.dlang.org/thread/lyzbdiqcnohbvphzg...@forum.dlang.org
https://forum.dlang.org/thread/gpeecjveashtvfpih...@forum.dlang.org

This _is_ the first time we're releasing a native build of LDC 
for linux/AArch64 on the release date, because of the work kinke 
did to add a Linux/AArch64 CI for LDC, which also automatically 
uploads the release build. 1.11 was the first release with an 
AArch64 build, but that was added manually a week later, as can 
be seen from the datestamps here:


http://www.somsubhra.com/github-release-stats/?username=ldc-developers=ldc

I'll add native beta builds for Android in a couple days.


Re: LDC 1.12.0-beta1

2018-09-06 Thread Joakim via Digitalmars-d-announce

On Wednesday, 5 September 2018 at 05:15:45 UTC, Joakim wrote:

I'll add native beta builds for Android in a couple days.


The native Android builds are up at the above github release 
link. I think this is the last time I'll put beta builds out, too 
much of a PITA to rebuild llvm each time. I'll continue 
maintaining the ldc package in the official Termux package repo 
though.


The Termux package build script used to build these betas is 
online here:


https://github.com/joakim-noah/termux-packages/tree/beta/packages/ldc-beta


Re: LDC 1.12.0-beta1

2018-09-07 Thread Joakim via Digitalmars-d-announce
On Friday, 7 September 2018 at 07:54:37 UTC, Petar Kirov 
[ZombineDev] wrote:

On Friday, 7 September 2018 at 03:12:50 UTC, Joakim wrote:

On Wednesday, 5 September 2018 at 05:15:45 UTC, Joakim wrote:

I'll add native beta builds for Android in a couple days.


The native Android builds are up at the above github release 
link. I think this is the last time I'll put beta builds out, 
too much of a PITA to rebuild llvm each time. I'll continue 
maintaining the ldc package in the official Termux package 
repo though.


The Termux package build script used to build these betas is 
online here:


https://github.com/joakim-noah/termux-packages/tree/beta/packages/ldc-beta


Can the Android builds be done automatically on the CI, like 
those for other platforms or the process is more involved?


They could, though our tweaked llvm still has to be rebuilt for 
each Android platform. It may be worth setting up at some point.


I've been thinking of setting up an Alpine CI for ldc, so I don't 
have to manually build each release, just as kinke now does for 
linux/armhf also.


Re: Work on ARM backend for DMD started

2018-07-06 Thread Joakim via Digitalmars-d-announce

On Thursday, 20 July 2017 at 16:22:59 UTC, solidstate1991 wrote:

On Friday, 7 July 2017 at 11:09:27 UTC, Temtaime wrote:

[...]


A few things you should be aware before you trash the reference 
compiler for D:


[...]


Btw, if you're still interested in this, AArch64 would be a 
better target, as 32-bit ARM is being replaced by it.


Re: LDC 1.11.0 beta

2018-07-07 Thread Joakim via Digitalmars-d-announce

On Saturday, 7 July 2018 at 18:26:45 UTC, Johan Engelen wrote:

On Saturday, 7 July 2018 at 18:17:49 UTC, Seb wrote:


Would be great to include 
https://github.com/dlang/dmd/pull/8456 as it's a serious 
regression and the reason for the early 2.081.1 release.


Because the quality of new DMD releases is often subpar, the 
LDC release plan is to only release after a good point release 
of DMD (usually *.*.1, but if this is a hasty .1 release, we 
probably better wait until 2.081.2)


-Johan


In other words, this is only a beta: the final 1.11 release will 
be done next month, only with the final release of the DMD 2.081 
frontend, likely 2.081.2.


Re: Release D 2.081.0

2018-07-04 Thread Joakim via Digitalmars-d-announce

On Wednesday, 4 July 2018 at 14:55:56 UTC, Mike Parker wrote:

On Wednesday, 4 July 2018 at 10:03:57 UTC, Martin Nowak wrote:

Glad to announce D 2.081.0.

This release comes with...

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


- -Martin


The blog announcement:
https://dlang.org/blog/2018/07/04/dmd-2-081-0-released/


"much quiter"


Re: Another take on decimal data types

2018-01-12 Thread Joakim via Digitalmars-d-announce

On Thursday, 11 January 2018 at 22:07:42 UTC, H. S. Teoh wrote:
On Thu, Jan 11, 2018 at 04:38:57PM -0500, Steven Schveighoffer 
via Digitalmars-d-announce wrote:

On 1/11/18 4:12 PM, kdevel wrote:
> On Thursday, 11 January 2018 at 20:40:01 UTC, Dmitry 
> Olshansky wrote:

> > What did you expect?
> 
> To be honest: A compile time error. Modern C compilers can 
> check such format strings. Example: GCC 6:


But dmd isn't a C compiler, nor does it have to worry about 
the problems C has (namely, untyped varargs). To dmd, printf 
is just another function, there's nothing special about it.

[...]

Yeah, checking C-style printf formats isn't dmd's problem.

The Phobos equivalent of printf, however, *does* support 
compile-time format checking in the latest version:


writefln!"%s %d %d"("abc", 1); // "Orphan format specifier: %d"
	writefln!"%s %d"("abc", 1, 2); // "Orphan format arguments: 
args[2..3]"
	writefln!"%s %d"(1, "abc");// "Incorrect format specifier 
for range: %d"
	writefln!"%f"(1);  // "incompatible format 
character for integral argument: %f"


Best of all, this is all done via CTFE in the library code, no 
hard-coding in the compiler necessary.  You can implement your 
own compile-time checker for your own DSLs in the same way, 
without needing to hack the compiler.


Interesting, guess this was added last April with dmd 2.074?

https://dlang.org/changelog/2.074.0.html#std-format-formattedWrite

You or someone should write up a blog post about this, with both 
this example and expanding on how D enables this kind of 
functionality in general.


Re: Vision document for H1 2018

2018-03-11 Thread Joakim via Digitalmars-d-announce

On Sunday, 11 March 2018 at 01:25:07 UTC, Dylan Graham wrote:
betterc is just another way of supporting that crowd..and it's 
a very big crowd.


Yeah, 29% of the crowd.


29% of the existing D crowd who answered the survey, which means 
around 150 people, or about how many download one compiler, dmd, 
in an average hour of the day:


http://erdani.com/d/downloads.daily.png

Meanwhile, Walter wrote a blog post about his betterC efforts 
last year, and it was the third-most liked link from dlang.org on 
reddit over the last year, with 226 net likes:


https://www.reddit.com/domain/dlang.org/top/?sort=top=year

No. 2?  Another article about using D without the GC.

Now, as I've said on the forum several times, I personally don't 
care for @nogc or betterC: I don't use them.  I'm sure many 
existing D users don't either.  However, as those reddit stats 
show, there is interest from _outside_ the D community for them.


When it comes to strategic decisions like this to bring in new 
users from outside the community, you cannot depend on polling 
users within the community to figure it out.  Argue against 
betterC really bringing in new users if you want, but arguing 
that it doesn't help existing users is missing the point.


I'm not sure how successful betterC will be in pulling in those 
users, as I'm not a C/C++ programmer and don't know what they 
want, but the popularity of those links suggests the D foundation 
is on the right track.


Your problem is not betterc, but something else. So focus on 
that instead.


You're right, my problem isn't BetterC, it's the fact that 
Foundation can't get its priorities right. BetterC is a symptom.


The Foundation's priorities are not simply serving the existing 
users but growing the userbase.


Re: Vision document for H1 2018

2018-03-09 Thread Joakim via Digitalmars-d-announce
On Friday, 9 March 2018 at 21:43:53 UTC, Andrei Alexandrescu 
wrote:
Hello, the vision document of the Founation for the first six 
months of 2018 is here:


https://wiki.dlang.org/Vision/2018H1

In addition to the expected items, we have a new top-level 
priority - locking down the language definition. This is in 
recognition of the fact that we need a precise definition of 
the language going forward.



Thanks,

Andrei


Very nice, love how concrete this document has become, including 
listing the members of the core team, especially compared to the 
vague early vision statements.


One note about @nogc: I've seen complaints about the -vgc reports 
on reddit, that they're not very useful for mixed @nogc usage, 
where the GC is used for part of the codebase, not sure if 
something can be done about that.


Re: The New New DIP Process

2018-03-09 Thread Joakim via Digitalmars-d-announce

On Friday, 9 March 2018 at 12:59:07 UTC, Mike Parker wrote:
When I took on the role of DIP Manager last year, I didn't 
realize how much I had to learn. Most of the DIPs made it 
through just fine, but there were a few errors along the way. 
And there were some inefficiencies built into the system that 
weren't so obvious in the beginning. Recently, my new procedure 
document to revise the process was approved.


[...]


mistake: "for the all the details"


Re: LDC 1.8.0

2018-03-06 Thread Joakim via Digitalmars-d-announce
On Tuesday, 6 March 2018 at 15:44:14 UTC, Martin Tschierschke 
wrote:

On Sunday, 4 March 2018 at 22:37:21 UTC, kinke wrote:

Hi everyone,

on behalf of the LDC team, I'm glad to announce LDC 1.8. The 
highlights of this version in a nutshell:


* Based on D 2.078.3.
* New switch `-link-defaultlib-shared` to link against shared 
druntime/Phobos.

* Plugins support, compatible with existing Clang plugins.
* Support for LLVM IR-based PGO as alternative to existing 
(AST-based) PGO.

* Basic support for LLVM XRay instrumentation.

Full release log and downloads: 
https://github.com/ldc-developers/ldc/releases/tag/v1.8.0


Thanks to all contributors!


Cool! Thank you!

https://wiki.dlang.org/Build_D_for_Android
Says, that 64 Bit Android version is not ready yet, anything 
about this?
It is not really necessary for me, but would be cool, because 
unfortunately I have a 64 bit Android phone.


Nothing new, unfortunately, though you can follow progress here:

https://github.com/ldc-developers/ldc/issues/2153

I plan to spend some time on it, but have been putting it off.


<    1   2   3   4   >