June 19, 2017
On Mon, 2017-06-19 at 12:36 +0000, jmh530 via Digitalmars-d wrote:
> […]
> 
> I think there is scope for a D version of something like anaconda for python. The easier it is to get users up and running, the better.

I'd say the Dub repository is this, or at least should be at least the basis for it. Ceylon has Herd, JVM languages otherwise has Maven Central and JCenter, C++ now has Conan. However, I think Cargo for Rust is current the technology leader in mixing a curated central repository. Dub could usefully be split into two a curated part where stuff gets removed as well as added, with review and possible rejection before adding, and a free for all section from which is never lost and can be added to freely. Cargo and Ceylon effectively have this. The trick is not to actually have a free for all added bit (a la PyPI) but to allow for DVCS accessed packages.

-- 
Russel.
=============================================================================
Dr Russel Winder     t:+44 20 7585 2200   voip:sip:
russel.winder@ekiga.net
41 Buckmaster Road   m:+44 7770 465 077   xmpp:russel@winder.org.uk
London SW11 1EN, UK  w: www.russel.org.uk skype:russel_winder

June 19, 2017
On Sunday, 18 June 2017 at 15:47:34 UTC, Vladimir Panteleev wrote:
> On Friday, 16 June 2017 at 03:53:18 UTC, Mike B Johnson wrote:
>> Just try getting D installed on all 3 major systems for DMD, LDC, GDC, with an IDE, some utilities, possibly arm support(even though it's new and expected to have some issues), etc. The issues really start popping up when you are trying to use x86 + x64. Library issues that result in strange error messages instead of "This compiler is not compatible with the phobos v2.4324".
>
> Might be worth considering something like the Android SDK installer. It looked like this:
>
> http://cache.filehippo.com/img/ex/4515__android_sdk_1_8_5_15.png
>
+1
June 19, 2017
On Monday, 19 June 2017 at 13:36:01 UTC, Russel Winder wrote:
>
> I'd say the Dub repository is this, or at least should be at least the basis for it. Ceylon has Herd, JVM languages otherwise has Maven Central and JCenter, C++ now has Conan. However, I think Cargo for Rust is current the technology leader in mixing a curated central repository. Dub could usefully be split into two a curated part where stuff gets removed as well as added, with review and possible rejection before adding, and a free for all section from which is never lost and can be added to freely. Cargo and Ceylon effectively have this. The trick is not to actually have a free for all added bit (a la PyPI) but to allow for DVCS accessed packages.

dub is more like conda, Anaconda's package manager.

What I mean is one thing that someone can download and install one file and everything just works. For instance, one download and a (Windows) user has DMD/LDC/DUB, DlangScience/Mir/Lubeck, and some of the database and plotting libraries installed. Basically, reduce the amount of time for a Python/R/Matlab user to get up and running on D. Would help get new users.
June 20, 2017
On Mon, 2017-06-19 at 14:43 +0000, jmh530 via Digitalmars-d wrote:
> 
[…]
> dub is more like conda, Anaconda's package manager.

Good point. Also I should separate dub the executable from Dub the repository of stuff more carefully.

> What I mean is one thing that someone can download and install one file and everything just works. For instance, one download and a (Windows) user has DMD/LDC/DUB, DlangScience/Mir/Lubeck, and some of the database and plotting libraries installed. Basically, reduce the amount of time for a Python/R/Matlab user to get up and running on D. Would help get new users.

Continuum Analytics do a great job with Anaconda/Miniconda but they have an income stream against which they can post the costs of the people and equipment to keep it working and up to date. Dub, both executable and repository, seem to have a little volunteer labour, and hence maintenance is not reliable, in the sense of there is no guarantee effort can be put into it.

But yes, I'd say putting effort into something like Anaconda/Miniconda for D and it's packages would be a good idea.

I am guessing extending dub so that when it downloads and builds executables, it can also install them in a platform specific way. For the package managed platforms by building a local package and installing it?

I am guessing the next step would be packaging dmd, rdmd, ldc2, and gdc?


-- 
Russel.
=============================================================================
Dr Russel Winder     t:+44 20 7585 2200   voip:sip:
russel.winder@ekiga.net
41 Buckmaster Road   m:+44 7770 465 077   xmpp:russel@winder.org.uk
London SW11 1EN, UK  w: www.russel.org.uk skype:russel_winder

June 20, 2017
On 06/18/2017 06:21 PM, Joakim wrote:
> On Sunday, 18 June 2017 at 21:44:11 UTC, Walter Bright wrote:
>> For further questions about what constitutes professional decorum, I recommend reading "Emily Post" books on manners which are readily available.
> 
> I would never read such a thing.  I subscribe more to the Linus school that such books are written by schoolmarms who simply squeeze the negativity into other possibly more corrosive behavior:
> 
> "Because if you want me to 'act professional,' I can tell you that I'm not interested. I'm sitting in my home office wearing a bathrobe. The same way I'm not going to start wearing ties, I'm *also* not going to buy into the fake politeness, the lying, the office politics and backstabbing, the passive aggressiveness, and the buzzwords. Because THAT is what "acting professionally" results in: people resort to all kinds of really nasty things because they are forced to act out their normal urges in unnatural ways."
> https://arstechnica.com/information-technology/2013/07/linus-torvalds-defends-his-right-to-shame-linux-kernel-developers/ 
> 
> 
> That is not to say I'd go around cursing like Linus, and again we agree these two went overboard, but it's not a big deal and I don't think it merits anything more than a warning, both here and in general.
> 
> I'll stop responding after this, as I've now made my position clear, and we don't need to turn this into a big etiquette discussion. :)

Hear, hear!
June 21, 2017
On Monday, 19 June 2017 at 12:46:19 UTC, jmh530 wrote:
> I just hope that we can get some operator overloading so that I don't have to write mtimes all over the place. My ideal would be a DIP that adds the option to overload opBinary for \, .+, .-, .*, ./. Lubeck could use \ for inverse, .+ etc. for element-wise matrix operations, and * for mtimes, etc. Very Matlab-like.

I'd like to second more flexibility around unary and binary operators, perhaps we can have another keyword for instance "record" that is essentially a D struct but allows the user to specify their own operators - it could be included unofficially at first without impacting the rest of the D language with the stipulation that it is not used in D's core libraries or in anything important. This functionality would allow notation native to different fields in analysis to be used.


June 21, 2017
On Wednesday, 21 June 2017 at 18:35:33 UTC, data pulverizer wrote:
> On Monday, 19 June 2017 at 12:46:19 UTC, jmh530 wrote:
>> I just hope that we can get some operator overloading so that I don't have to write mtimes all over the place. My ideal would be a DIP that adds the option to overload opBinary for \, .+, .-, .*, ./. Lubeck could use \ for inverse, .+ etc. for element-wise matrix operations, and * for mtimes, etc. Very Matlab-like.

I double-checked and noticed that Matlab doesn't actually have .+/.-, just +/-. Since D's a[] + b[] doesn't seem all that different from Matlab's a + b, with the restriction that there needs to be destination memory, it seems like it would be a confusing to add in another way of doing things. So maybe just add \ and another operator for matrix multiplication. I don't really know.

>
> I'd like to second more flexibility around unary and binary operators, perhaps we can have another keyword for instance "record" that is essentially a D struct but allows the user to specify their own operators - it could be included unofficially at first without impacting the rest of the D language with the stipulation that it is not used in D's core libraries or in anything important. This functionality would allow notation native to different fields in analysis to be used.

An interesting idea, but I don't know if they would go to for it.

If you want more operator overloading on a class, you could put the class as a member of the "record" and alias this it?
June 22, 2017
On Sunday, 18 June 2017 at 21:47:48 UTC, Laeeth Isharc wrote:
> [snip]
> Windows has been a bit of a pain, but mostly from the native code library side.  It should be easy to install google snappy right?  On Linux it is.  On Windows, not so much...  And that's just one library.

vcpkg is making it pretty easy to get C and C++ libraries on Windows. Snappy is supported.

https://github.com/Microsoft/vcpkg

June 22, 2017
On Thursday, 22 June 2017 at 05:59:05 UTC, Brad Anderson wrote:
> On Sunday, 18 June 2017 at 21:47:48 UTC, Laeeth Isharc wrote:
>> [snip]
>> Windows has been a bit of a pain, but mostly from the native code library side.  It should be easy to install google snappy right?  On Linux it is.  On Windows, not so much...  And that's just one library.
>
> vcpkg is making it pretty easy to get C and C++ libraries on Windows. Snappy is supported.
>
> https://github.com/Microsoft/vcpkg

+1

Every library I care about is available through vcpkg. And it's much cleaner to use, IMO, than NuGet or Chocolatey.
1 2 3 4 5 6 7
Next ›   Last »