www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - Is there a CPAN, CheeseShop, Hackage or NPM for D?

reply Chris Dew <cmsdew gmail.com> writes:
Hi,

Apologies if this post appears twice - it hadn't appeared on the
website after 2 hours had passed, so I'm reposting it directly on
the website, rather than via email.

I've just successfully used D for tiny commercial project, and I've
really enjoyed it (I normally use Python, Java or NodeJS, but I
needed
a native executable for this project).  (I have previous experience
of
C and have dabbled in C++, Haskell and Racket.)

I switched to D after an hour because I was not enjoying using C/APR
after having used scripting languages for the last couple of years.

I've been an early adopter of NodeJS and have noted how critical NPM
was for the success of the platform.  (It handles module version
dependencies better than any other system I've seen - two required
modules of a project can depend on *different* versions of a third
library and it all just works.)

Is there a similar repository or list of recommended opensource
(non-GPL or LGPL) D libraries?

All the best,

Chris.

https://github.com/joyent/node/wiki/modules lists popular NodeJS
modules, all developed in the last year and a half.
Sep 19 2011
parent reply Jacob Carlborg <doob me.com> writes:
On 2011-09-19 13:16, Chris Dew wrote:
 Hi,

 Apologies if this post appears twice - it hadn't appeared on the
 website after 2 hours had passed, so I'm reposting it directly on
 the website, rather than via email.

 I've just successfully used D for tiny commercial project, and I've
 really enjoyed it (I normally use Python, Java or NodeJS, but I
 needed
 a native executable for this project).  (I have previous experience
 of
 C and have dabbled in C++, Haskell and Racket.)

 I switched to D after an hour because I was not enjoying using C/APR
 after having used scripting languages for the last couple of years.

 I've been an early adopter of NodeJS and have noted how critical NPM
 was for the success of the platform.  (It handles module version
 dependencies better than any other system I've seen - two required
 modules of a project can depend on *different* versions of a third
 library and it all just works.)

 Is there a similar repository or list of recommended opensource
 (non-GPL or LGPL) D libraries?

 All the best,

 Chris.

 https://github.com/joyent/node/wiki/modules lists popular NodeJS
 modules, all developed in the last year and a half.
It's in the works: https://github.com/jacob-carlborg/orbit/wiki/Orbit-Package-Manager-for-D https://github.com/jacob-carlborg/orbit -- /Jacob Carlborg
Sep 19 2011
parent reply Chris Dew <cmsdew gmail.com> writes:
Hi Jacob,

It's great to see that someone's working on this.

Will your design cope with the situation as follows:

ModA 1.0.0 requires ModB >=3D1.0.0 <2.0.0 and ModC >=3D1.0.0 <2.0.0
ModB 1.0.0 requires ModD >=3D1.0.0 <2.0.0
ModC 1.0.0 requires ModD >=3D2.0.0 <3.0.0
ModD 1.0.0 and 2.0.0 are both available with different interfaces and seman=
tics.

Could I recommend SemVer? http://semver.org/

Thanks,

Chris.

On 19 September 2011 17:41, Jacob Carlborg <doob me.com> wrote:
 On 2011-09-19 13:16, Chris Dew wrote:
 Hi,

 Apologies if this post appears twice - it hadn't appeared on the
 website after 2 hours had passed, so I'm reposting it directly on
 the website, rather than via email.

 I've just successfully used D for tiny commercial project, and I've
 really enjoyed it (I normally use Python, Java or NodeJS, but I
 needed
 a native executable for this project). =C2=A0(I have previous experience
 of
 C and have dabbled in C++, Haskell and Racket.)

 I switched to D after an hour because I was not enjoying using C/APR
 after having used scripting languages for the last couple of years.

 I've been an early adopter of NodeJS and have noted how critical NPM
 was for the success of the platform. =C2=A0(It handles module version
 dependencies better than any other system I've seen - two required
 modules of a project can depend on *different* versions of a third
 library and it all just works.)

 Is there a similar repository or list of recommended opensource
 (non-GPL or LGPL) D libraries?

 All the best,

 Chris.

 https://github.com/joyent/node/wiki/modules lists popular NodeJS
 modules, all developed in the last year and a half.
It's in the works: https://github.com/jacob-carlborg/orbit/wiki/Orbit-Package-Manager-for-D https://github.com/jacob-carlborg/orbit -- /Jacob Carlborg
Sep 20 2011
next sibling parent reply Jacob Carlborg <doob me.com> writes:
On 2011-09-20 13:37, Chris Dew wrote:
 Hi Jacob,

 It's great to see that someone's working on this.

 Will your design cope with the situation as follows:

 ModA 1.0.0 requires ModB>=1.0.0<2.0.0 and ModC>=1.0.0<2.0.0
 ModB 1.0.0 requires ModD>=1.0.0<2.0.0
 ModC 1.0.0 requires ModD>=2.0.0<3.0.0
 ModD 1.0.0 and 2.0.0 are both available with different interfaces and
semantics.
I guess it would be possible as long as there are no conflicting symbols. I would guess it mostly depends on environment, i.e. what the compiler and the linker allow.
 Could I recommend SemVer? http://semver.org/
I will have a look at that.
 Thanks,

 Chris.

 On 19 September 2011 17:41, Jacob Carlborg<doob me.com>  wrote:
 On 2011-09-19 13:16, Chris Dew wrote:
 Hi,

 Apologies if this post appears twice - it hadn't appeared on the
 website after 2 hours had passed, so I'm reposting it directly on
 the website, rather than via email.

 I've just successfully used D for tiny commercial project, and I've
 really enjoyed it (I normally use Python, Java or NodeJS, but I
 needed
 a native executable for this project).  (I have previous experience
 of
 C and have dabbled in C++, Haskell and Racket.)

 I switched to D after an hour because I was not enjoying using C/APR
 after having used scripting languages for the last couple of years.

 I've been an early adopter of NodeJS and have noted how critical NPM
 was for the success of the platform.  (It handles module version
 dependencies better than any other system I've seen - two required
 modules of a project can depend on *different* versions of a third
 library and it all just works.)

 Is there a similar repository or list of recommended opensource
 (non-GPL or LGPL) D libraries?

 All the best,

 Chris.

 https://github.com/joyent/node/wiki/modules lists popular NodeJS
 modules, all developed in the last year and a half.
It's in the works: https://github.com/jacob-carlborg/orbit/wiki/Orbit-Package-Manager-for-D https://github.com/jacob-carlborg/orbit -- /Jacob Carlborg
-- /Jacob Carlborg
Sep 20 2011
parent reply J Arrizza <cppgent0 gmail.com> writes:
Please don't forget dependency on dmd1 vs dmd2...

On Tue, Sep 20, 2011 at 9:54 AM, Jacob Carlborg <doob me.com> wrote:

 On 2011-09-20 13:37, Chris Dew wrote:

 Hi Jacob,

 It's great to see that someone's working on this.

 Will your design cope with the situation as follows:

 ModA 1.0.0 requires ModB>=1.0.0<2.0.0 and ModC>=1.0.0<2.0.0
 ModB 1.0.0 requires ModD>=1.0.0<2.0.0
 ModC 1.0.0 requires ModD>=2.0.0<3.0.0
 ModD 1.0.0 and 2.0.0 are both available with different interfaces and
 semantics.
I guess it would be possible as long as there are no conflicting symbols. I would guess it mostly depends on environment, i.e. what the compiler and the linker allow. Could I recommend SemVer? http://semver.org/

 I will have a look at that.

  Thanks,
 Chris.

 On 19 September 2011 17:41, Jacob Carlborg<doob me.com>  wrote:

 On 2011-09-19 13:16, Chris Dew wrote:


 Hi,

 Apologies if this post appears twice - it hadn't appeared on the
 website after 2 hours had passed, so I'm reposting it directly on
 the website, rather than via email.

 I've just successfully used D for tiny commercial project, and I've
 really enjoyed it (I normally use Python, Java or NodeJS, but I
 needed
 a native executable for this project).  (I have previous experience
 of
 C and have dabbled in C++, Haskell and Racket.)

 I switched to D after an hour because I was not enjoying using C/APR
 after having used scripting languages for the last couple of years.

 I've been an early adopter of NodeJS and have noted how critical NPM
 was for the success of the platform.  (It handles module version
 dependencies better than any other system I've seen - two required
 modules of a project can depend on *different* versions of a third
 library and it all just works.)

 Is there a similar repository or list of recommended opensource
 (non-GPL or LGPL) D libraries?

 All the best,

 Chris.

 https://github.com/joyent/**node/wiki/modules<https://github.com/joyent/nod
/wiki/modules>lists popular NodeJS
 modules, all developed in the last year and a half.
It's in the works: https://github.com/jacob-**carlborg/orbit/wiki/Orbit-** Package-Manager-for-D<https://github.com/jacob-carlborg/orbit/wiki/Orbit-Package-Manager-for-D> https://github.com/jacob-**carlborg/orbit<https://github.com/jacob-carlborg/orbit> -- /Jacob Carlborg
-- /Jacob Carlborg
-- John blog: http://arrizza.blogspot.com/ web: http://www.arrizza.com/
Sep 20 2011
parent Jacob Carlborg <doob me.com> writes:
On 2011-09-21 06:09, J Arrizza wrote:
 Please don't forget dependency on dmd1 vs dmd2...
I have not forgotten that: https://github.com/jacob-carlborg/orbit/wiki/orbspec%20specification it's the "dvm" field.
 On Tue, Sep 20, 2011 at 9:54 AM, Jacob Carlborg <doob me.com
 <mailto:doob me.com>> wrote:

     On 2011-09-20 13:37, Chris Dew wrote:

         Hi Jacob,

         It's great to see that someone's working on this.

         Will your design cope with the situation as follows:

         ModA 1.0.0 requires ModB>=1.0.0<2.0.0 and ModC>=1.0.0<2.0.0
         ModB 1.0.0 requires ModD>=1.0.0<2.0.0
         ModC 1.0.0 requires ModD>=2.0.0<3.0.0
         ModD 1.0.0 and 2.0.0 are both available with different
         interfaces and semantics.


     I guess it would be possible as long as there are no conflicting
     symbols. I would guess it mostly depends on environment, i.e. what
     the compiler and the linker allow.


         Could I recommend SemVer? http://semver.org/


     I will have a look at that.

         Thanks,

         Chris.

         On 19 September 2011 17:41, Jacob Carlborg<doob me.com
         <mailto:doob me.com>>  wrote:

             On 2011-09-19 13:16, Chris Dew wrote:


                 Hi,

                 Apologies if this post appears twice - it hadn't
                 appeared on the
                 website after 2 hours had passed, so I'm reposting it
                 directly on
                 the website, rather than via email.

                 I've just successfully used D for tiny commercial
                 project, and I've
                 really enjoyed it (I normally use Python, Java or
                 NodeJS, but I
                 needed
                 a native executable for this project).  (I have previous
                 experience
                 of
                 C and have dabbled in C++, Haskell and Racket.)

                 I switched to D after an hour because I was not enjoying
                 using C/APR
                 after having used scripting languages for the last
                 couple of years.

                 I've been an early adopter of NodeJS and have noted how
                 critical NPM
                 was for the success of the platform.  (It handles module
                 version
                 dependencies better than any other system I've seen -
                 two required
                 modules of a project can depend on *different* versions
                 of a third
                 library and it all just works.)

                 Is there a similar repository or list of recommended
                 opensource
                 (non-GPL or LGPL) D libraries?

                 All the best,

                 Chris.

                 https://github.com/joyent/__node/wiki/modules
                 <https://github.com/joyent/node/wiki/modules> lists
                 popular NodeJS
                 modules, all developed in the last year and a half.


             It's in the works:
             https://github.com/jacob-__carlborg/orbit/wiki/Orbit-__Package-Manager-for-D
             <https://github.com/jacob-carlborg/orbit/wiki/Orbit-Package-Manager-for-D>

             https://github.com/jacob-__carlborg/orbit
             <https://github.com/jacob-carlborg/orbit>

             --
             /Jacob Carlborg



     --
     /Jacob Carlborg




 --
 John
 blog: http://arrizza.blogspot.com/
 web: http://www.arrizza.com/
-- /Jacob Carlborg
Sep 20 2011
prev sibling parent Jacob Carlborg <doob me.com> writes:
On 2011-09-20 13:37, Chris Dew wrote:
 Hi Jacob,

 It's great to see that someone's working on this.

 Will your design cope with the situation as follows:

 ModA 1.0.0 requires ModB>=1.0.0<2.0.0 and ModC>=1.0.0<2.0.0
 ModB 1.0.0 requires ModD>=1.0.0<2.0.0
 ModC 1.0.0 requires ModD>=2.0.0<3.0.0
 ModD 1.0.0 and 2.0.0 are both available with different interfaces and
semantics.

 Could I recommend SemVer? http://semver.org/

 Thanks,

 Chris.
I'm already using that (or something very similar): https://github.com/jacob-carlborg/orbit/wiki/orb%20package#wiki-versions -- /Jacob Carlborg
Sep 21 2011