March 13, 2015
On 3/13/15 1:17 AM, weaselcat wrote:
> Getting prominent D projects more recognition should be a really high
> priority.

Yah, my friend for example hadn't heard about vibe.d until I mentioned it. After looking over it he was like, "yeah, I could've used that". -- Andrei
March 13, 2015
On 3/13/15 1:53 AM, JN wrote:
> On Friday, 13 March 2015 at 06:58:59 UTC, Russel Winder wrote:
>> On Thu, 2015-03-12 at 17:20 -0700, Andrei Alexandrescu via Digitalmars-d
>> wrote:
>> […]
>>> - no good IDE
>>
>> Not entirely true, there are Emacs, VIM, LiteIDE, and others for Go
>> development.
>
> Never heard of LiteIDE, but Emacs and VIM aren't really IDEs,
> they are just glorified text editors. When people say IDE, they
> not only mean the text editing part, but the management of the
> build process and visual debugging, including watches,
> breakpoints, step-by-step debugging etc.

I've tried a couple of IDEs with D in Ubuntu. Geany crashed whenever I started a debug session, but that happens with C++ as well and is a bug in Geany (http://sourceforge.net/p/geany-plugins/bugs/119/).

Then I tried Code::Blocks and the debug experience has been almost shockingly good. I had no idea! Then I found indeed a wiki page describing the features: http://wiki.dlang.org/CodeBlocks. It is easy to find via google by searching e.g. for ``ides for dlang''. But there is no obvious way to get there from dlang.org. I think we should feature the IDEs page more prominently.


Andrei

March 13, 2015
On 3/13/15 2:41 AM, Paulo Pinto wrote:
> A kind of D killer project is also needed.

That's why I am pushing for making vibe more visible. -- Andrei

March 13, 2015
On 3/13/15 3:34 AM, bearophile wrote:
> Ola Fosheim Grøstad:
>
>> Yes, but what is a "strict mode". I agree with most of what is said
>> about D and Go in the top post, but is there a market for yet another
>> high level language that isn't high level enough?
>
> "Strict mode" is a D2 with immutable+@safe+pure by default, something
> like a "var" keyword to denote mutable values, no comma operator, static
> full tracking of memory ownership, less implicit casts (because now we
> have the safe int(x) sytnax), and few other small changes that make the
> language less bug prone and more strict.
>
> And I'd still like built-in tuple syntax in D.

That's a rather random collection - "strict" seems to be "D without the stuff bearophile dislikes". -- Andrei

March 13, 2015
On Friday, 13 March 2015 at 14:34:23 UTC, Russel Winder wrote:
> On Fri, 2015-03-13 at 14:20 +0000, Chris via Digitalmars-d wrote:
> […]
>
>> reluctant to learn something new. Crowd 2. we can win over, yet we have failed to communicate with them, to reach out to them. Most people I know have a look at D's homepage and say "Uh! Hm. Ah, I'll use Python." No, they are not hardcore programmers, they are engineers and scientists. But they are _users_, people who need to write software to analyze data, to create something. We should not ignore them, even if they are not (initially) interested in templates and metaprogramming. Neither was I, when I first learned D.
>
> It is not Python or R or Julia the language that people choose, it is
> the superstructure built on top. So for Python, it is Pandas,
> Matplotlib, SciPy, NumPy. And the ability to use ready made C, C++ and
> Fortran libraries.

Exactly, that's part of it. People don't understand that they can use all the C libraries with D as well. And if they do, "extern (C)" is too "complicated", at least more complicated than "import numbergrind". I'm really at loss here, I don't know how to communicate these things to people. Colleagues and text books that talk about R and Python weigh so much more than "D can actually interface to C without any effort".[1]

Also, sometimes I have the impression that people use any excuse not to use D.

[1] The problem is that all these nice Python and R implementations are practically useless for real world applications. Too slow, too cumbersome, too many dependencies. It has to be rewritten anyway. (I'd be happy, if they used at least C.)
March 13, 2015
On 3/13/15 6:18 AM, Dicebot wrote:
> On Friday, 13 March 2015 at 00:20:40 UTC, Andrei Alexandrescu wrote:
>> A friend of mine needed to complete a small project and thought of
>> using a language he didn't know for it. He already knew I work on D so
>> he considered it alongside Go. He ended up choosing the latter, and
>> documented his decision making process in a few notes that he
>> subsequently shared with me. I'll paste below a sort of transcript of
>> his handwritten notes.
>
> In my opinion it is better to focus on tempting users with D strong bits
> than oversell it by trying it compete in topics it has inherent
> disadvantage. There is not point in try to compete with Go on topic of
> simplicity - they have crippled the language tremendeously to get that
> simplicity. Simple D has no value - I would simply prefer Go instead of
> it as it has head start advantage in toolchain.

Yah, simplicity is hard to add later :o).

> Instead it is better to focus on explaining users that they don't want
> what they think they want, akin to that Bjarne quote. And don't be
> afraid to admit to certain users that D is not a best choice for them.
> It doesn't mean that such valuable feedback should be ignore - there is
> indeed a lot that can be improved in the learning curve. But trying to
> fight for user who makes choice with "trendy" and "simplicity" in mind
> is a battle lost from the very beginning.

Simplicity yes, but trends do change.


Andrei
March 13, 2015
On 3/13/15 6:45 AM, Russel Winder via Digitalmars-d wrote:
> The removal of shared memory multi-threading in favour of using
> processes and channels should never be underestimated as a Really Good
> Thing™ that other native code languages (*) have failed to do anything
> about. Thus Go wins, others lose.

That's a marketing success as well. Go didn't "remove" shared memory multi-threading, it just unrecommends it. That's quite unremarkable from a programming language design standpoint, but as discussed that's not always crucial for success. -- Andrei

March 13, 2015
On 3/13/15 7:34 AM, Russel Winder via Digitalmars-d wrote:
> On Fri, 2015-03-13 at 14:20 +0000, Chris via Digitalmars-d wrote:
> […]
>
>> reluctant to learn something new. Crowd 2. we can win over, yet
>> we have failed to communicate with them, to reach out to them.
>> Most people I know have a look at D's homepage and say "Uh! Hm.
>> Ah, I'll use Python." No, they are not hardcore programmers, they
>> are engineers and scientists. But they are _users_, people who
>> need to write software to analyze data, to create something. We
>> should not ignore them, even if they are not (initially)
>> interested in templates and metaprogramming. Neither was I, when
>> I first learned D.
>
> It is not Python or R or Julia the language that people choose, it is
> the superstructure built on top. So for Python, it is Pandas,
> Matplotlib, SciPy, NumPy. And the ability to use ready made C, C++ and
> Fortran libraries.

That's right. Offer solid value, and make learning the language just aftermath. Again, that's why I'm pushing for vibe. -- Andrei


March 13, 2015
On 3/12/15 8:20 PM, Andrei Alexandrescu wrote:

> ## new house in unpopulated neighborhood; there's an "Enter, it's open"
> sign but sits emtpy; by comparison Go -> condo in hip, trendy area

I like wide opens spaces and hate crowded trendy hip things.

Must be why I like D so much ;)

-Steve
March 13, 2015
Andrei Alexandrescu:

> That's a rather random collection - "strict" seems to be "D without the stuff bearophile dislikes". -- Andrei

I am OK with that definition. Is that your best critique to those suggestions? :-)

Bye,
bearophile