June 23, 2017
On Friday, 23 June 2017 at 16:49:54 UTC, Kagamin wrote:
> On Friday, 23 June 2017 at 06:41:26 UTC, Bienlein wrote:
>>> Java, Kotlin, C# are still Jit compiled languages, with the memory footprint to prove it :)
>>
>> The memory footprint doesn't matter. Those times are OVER :-).
>
> Do you want D to compete in enterprise domain? Of 16 programs running on my machine 13 are native.

Not only that, but the majority of use of Java and soon Kotlin is on Android, where efficiency and memory footprint matters a lot, hence Java moving to AoT-compilation when Android 5.0 released three years ago and adding a concurrent GC:

https://arstechnica.com/gadgets/2014/11/android-5-0-lollipop-thoroughly-reviewed/3/#h2

C# lost out internally at Microsoft precisely because of how bloated it made everything, with signs that native is ascendant again in recent years:

https://hackernoon.com/what-really-happened-with-vista-4ca7ffb5a1a

Bienlein may be right that there are niches where memory footprint doesn't matter and there were years where it wasn't a big deal, but it's back now.  RAM is really cheap today, but latency and power efficiency are the big issues.  You could put 8 GBs of RAM in every smartphone right now, and there are some models which do (http://www.gsmarena.com/oneplus_5-8647.php), but the only reason most don't is because it'd suck a lot more power.
June 23, 2017
On Friday, 23 June 2017 at 20:13:15 UTC, Paulo Pinto wrote:
> ExcelsiorJET is quite easy to figure out, you can download their open source version.

So in other words, you do not have used these products and only read their websites, got it.

> Some products go the static linking way, others map .jars into shared libraries.

And how does the tool know which .jars to compile to shared libraries without running the code first? It can't. Which is why Excelsior ships with a JIT:

From https://www.excelsiorjet.com/

"First, the AOT compiler turns your jar and class files into a conventional binary executable. That executable is fully interoperable with our JVM, which includes a JIT compiler to handle any classes that were not precompiled."


> Nice how you overlook the fact that .NET Native requires static linking, hence why there are such issues.
> AOT compiling to native code with either NGEN or Windows 8 MDIL compiler doesn't have such issues, because dynamic linking is used instead.

Again, how can you compile ahead-of-time when you don't know the dependencies before running the program? You can't which is why every such tool is at a fight with how these languages work.

> In any case, even if native compilation toolchains for Java and C# aren't perfect, they make it less appealing to try out D if you don't come up with a solid history to go against them, that make people actually curious to try out D.

That's just "I looked at the websites, never used these tools in practice but found them convincing" phrased differently to pretend you have an argument.

The success of Go strongly indicates people generally don't connect Java/C# to "native code" or "slim binaries without dependencies", whom are you kidding here.
June 23, 2017
On Friday, 23 June 2017 at 20:25:10 UTC, Joakim wrote:
> On Friday, 23 June 2017 at 16:49:54 UTC, Kagamin wrote:
>> On Friday, 23 June 2017 at 06:41:26 UTC, Bienlein wrote:
>>>> Java, Kotlin, C# are still Jit compiled languages, with the memory footprint to prove it :)
>>>
>>> The memory footprint doesn't matter. Those times are OVER :-).
>>
>> Do you want D to compete in enterprise domain? Of 16 programs running on my machine 13 are native.
>
> Not only that, but the majority of use of Java and soon Kotlin is on Android, where efficiency and memory footprint matters a lot, hence Java moving to AoT-compilation when Android 5.0 released three years ago and adding a concurrent GC:
>
> https://arstechnica.com/gadgets/2014/11/android-5-0-lollipop-thoroughly-reviewed/3/#h2
>
> C# lost out internally at Microsoft precisely because of how bloated it made everything, with signs that native is ascendant again in recent years:
>
> https://hackernoon.com/what-really-happened-with-vista-4ca7ffb5a1a
>
> Bienlein may be right that there are niches where memory footprint doesn't matter and there were years where it wasn't a big deal, but it's back now.  RAM is really cheap today, but latency and power efficiency are the big issues.  You could put 8 GBs of RAM in every smartphone right now, and there are some models which do (http://www.gsmarena.com/oneplus_5-8647.php), but the only reason most don't is because it'd suck a lot more power.

C# lost the Longhorn/Vista battle, but won the Windows 10 UWP one.

Try to find the C++ talks.

https://channel9.msdn.com/Events/Build/2017
June 23, 2017
On Friday, 23 June 2017 at 21:31:00 UTC, Araq wrote:
> ...
>
> That's just "I looked at the websites, never used these tools in practice but found them convincing" phrased differently to pretend you have an argument.
>
> The success of Go strongly indicates people generally don't connect Java/C# to "native code" or "slim binaries without dependencies", whom are you kidding here.

You are right, it was a mistake to come back to these forums, after the GDC announcement.

Looking forward to see blazing fast D applications on the Windows store.


June 23, 2017
On Friday, 23 June 2017 at 22:35:04 UTC, Paulo Pinto wrote:
> On Friday, 23 June 2017 at 20:25:10 UTC, Joakim wrote:
>> C# lost out internally at Microsoft precisely because of how bloated it made everything, with signs that native is ascendant again in recent years:
>>
>> https://hackernoon.com/what-really-happened-with-vista-4ca7ffb5a1a
>
> C# lost the Longhorn/Vista battle, but won the Windows 10 UWP one.

I wouldn't say C# won, UWP is implemented in C++ and supports C++.  Of course, UWP is so unpopular that they eventually allowed Win32 apps into their store:

https://arstechnica.com/information-technology/2016/09/desktop-apps-make-their-way-into-the-windows-store/

Now they are so desparate for people to use it that they just released a version of Windows that will only install UWP apps, Windows 10 S:

https://arstechnica.com/information-technology/2017/05/microsoft-takes-on-chrome-os-with-new-windows-10-s/

> Try to find the C++ talks.
>
> https://channel9.msdn.com/Events/Build/2017

You seem to have missed the bit where I said C# lost _internally_.  Their plan, as detailed in the Vista link, was to move all their own apps to C#, which has yet to happen.  I hear C# has been very successful for corporate LoB apps, which are developed quickly and not used widely enough to spend much time on optimizing for performance.

On Friday, 23 June 2017 at 22:38:29 UTC, Paulo Pinto wrote:
> Looking forward to see blazing fast D applications on the Windows store.

Why?  The Windows Store is a ghost town, with google not even bothering to package Chrome on there, despite their browser being the most installed and used app on Windows.
June 24, 2017
On Friday, 23 June 2017 at 22:38:29 UTC, Paulo Pinto wrote:
> On Friday, 23 June 2017 at 21:31:00 UTC, Araq wrote:
>> ...
>>
>> That's just "I looked at the websites, never used these tools in practice but found them convincing" phrased differently to pretend you have an argument.
>>
>> The success of Go strongly indicates people generally don't connect Java/C# to "native code" or "slim binaries without dependencies", whom are you kidding here.
>
> You are right, it was a mistake to come back to these forums, after the GDC announcement.
>
> Looking forward to see blazing fast D applications on the Windows store.

Just FYI, Araq is the author of Nim (https://nim-lang.org/), so
I'm sure he didn't have any intention in making D look good ;)

On the other hand, I think he made good technical arguments, (leaving
aside his Ad Hominem way of expressing, which I think was out of
place) which I think you should actually consider.
June 24, 2017
On Friday, 23 June 2017 at 14:45:12 UTC, Bienlein wrote:
> I'm assuming that D is for general purpose programming as well.

That seems to be where it is heading.  I don't think D stands a chance in that domain, but we'll see.
June 24, 2017
>> I'm assuming that D is for general purpose programming as well.
>
> That seems to be where it is heading.  I don't think D stands a chance in that domain, but we'll see.

With all due respect, on the contrary I think that promoting D as a general purpose programming language could be its only chance to really improve its popularity, and thus significantly grow its current user base.

I'm sorry to repeat myself once again on this forum, but it's obvious to me that D's strongest feature at the moment is that it has the best syntax on the market.

Reference types, strings, maps, slices, arrays, UFCS, etc, everything is made so that the most obvious and readable code will work both safely and efficiently.

There is absolutely zero syntactic noise, the code is crystal clear.

So instead of losing many potential users by focusing on a niche market (unhappy C++ programmers), D should focus on its major strengths, which already now make it stand high above its competition.

For instance, all these programmer-friendly features make D even more convenient for scripting than scripting languages themselves.

Just add the instant compilation, and you actually have the perfect language for scripters and learning/inexperienced programmers who currently choose JavaScript, Python, Ruby because they don't know that the perfect language for their needs is actually D.

I strongly believe that D has the potential to be the killer "general purpose" language if :
1/ it is also promoted with this target in mind
2/ a few additional pre-installed libraries (web + ui) would make it as easy to develop cross-platform connected applications.

IMHO, trying to compete directly with C++, C# and Java, with the current state of the language and of its ecosystem, is simply choosing the hardest path to success...
June 24, 2017
On Saturday, 24 June 2017 at 09:35:56 UTC, Ecstatic Coder wrote:
> With all due respect, on the contrary I think that promoting D as a general purpose programming language could be its only chance to really improve its popularity, and thus significantly grow its current user base.
>
> I'm sorry to repeat myself once again on this forum, but it's obvious to me that D's strongest feature at the moment is that it has the best syntax on the market.

I personally will not go that far. Syntax is more about preference. Rust looks dog ugly to me and yet some people find it beautiful.

Personally i find Swift / Kotlin a nicer looking syntax then D.

> Reference types, strings, maps, slices, arrays, UFCS, etc, everything is made so that the most obvious and readable code will work both safely and efficiently.
>
> There is absolutely zero syntactic noise, the code is crystal clear.
>
> So instead of losing many potential users by focusing on a niche market (unhappy C++ programmers), D should focus on its major strengths, which already now make it stand high above its competition.

Agrees with that. The problem with a language trying to scope away a specific group of developers, from a existing ecosystem is that your fighting the entire ecosystem, not just the language. That is a mistake that many new languages make.

Why switch over from C++ to D?

Language => Sure.
Tooling => No.
Libraries => No.
Editors => No.
...

That has been the dilemma that not only D has faced. Until you get critical mass where people start writing a massive amount of your ecosystem, its hard to get people to switch over.

> For instance, all these programmer-friendly features make D even more convenient for scripting than scripting languages themselves.

True but the same can be said about Go. And Go is even more friendly and has the ecosystem now. You want to write something more exotic. There is big change that somebody wrote a module/package in Go. That is not going on with D. Sure, you can take a existing c library and transform it into D but it still takes work and is not always 100% idiomatic D.

That is the main difference between D and lets say Kotlin. Kotlin build on top of Java and you can native imports all the libraries. There is less effort involved.

Maybe this was mentioned before but a lot of programmers prefer to lazy program. They want to write there code, move forward with there project and not spend time on trying to get "things" to import/convert/work. D has more people who have no issue doing things the "hard" way. I applaud that resolve, i really do. But at the same time its a barrier, a attitude that makes it hard to accept those lazy people like me :)

> IMHO, trying to compete directly with C++, C# and Java, with the current state of the language and of its ecosystem, is simply choosing the hardest path to success...

See above. Some people prefer the hard way. The masochists *haha*. I know the angle where your coming from Ecstatic but its hard to convince people. Especially when there is a manpower shortage.

Frankly, i think the best way to go about moving D to popularity, is simply money. More fully time programmers but that requires money.

I do not understand why D does not have a BountySource account ( salt.bountysource.com ).

Look at nim ( $1,896 last month ) /crystal ( $2,345 this month ):

They publish there fund raising. They motivate people by pointing out the backers. Their income is a extra full time developer ( who wants to work for cheap :) ). The whole D foundation is nice and well but to me it feels like cloak and daggers. It something hiding in the background, something obscure. Maybe i am not expressing myself good again but D its fund raising seems to be largely corporate focused but they seem to lose a big market potential. Corporate funding is harder to get then a lot of small donations.

Its just my two cents but if D wants to grow, it needs full time developers. Not just volunteer work. People who can do the grunt work that volunteers do not want to do ( because its just not sexy ).
June 24, 2017
On 24/06/2017 11:17 AM, Wulfklaue wrote:

snip

> Frankly, i think the best way to go about moving D to popularity, is simply money. More fully time programmers but that requires money.
> 
> I do not understand why D does not have a BountySource account ( salt.bountysource.com ).

What on earth are you talking about[0]?

[0] https://www.bountysource.com/teams/d