digitalmars.D - import from Internet
- Katayama Hirofumi MZ (3/3) Jul 12 2014 Could you support "importing from Internet" feature? I think
- Dicebot (3/6) Jul 12 2014 dub : code.dlang.org
- Katayama Hirofumi MZ (1/2) Jul 12 2014 OK, I'll move to there.
- Katayama Hirofumi MZ (1/1) Jul 12 2014 https://github.com/D-Programming-Language/dub/issues/373
- Dicebot (6/7) Jul 12 2014 What I have meant is that "importing from internet" functionality
- Russel Winder via Digitalmars-d (14/22) Jul 12 2014 It's an idea Go has picked up. The URL must refer to a Git, Bazaar,
- Paulo Pinto (10/22) Jul 12 2014 Except when:
- Dicebot (3/3) Jul 12 2014 I agree. Go approach my seem tempting in its simplicity but it
- Russel Winder via Digitalmars-d (19/22) Jul 12 2014 The decision wasn't made by the Go authors, it was proposed and
- Dicebot (13/25) Jul 12 2014 Sorry but I am tired of endless appeal to history / usage - by
- Russel Winder via Digitalmars-d (17/21) Jul 12 2014 Sad if true, I want the capability to be on the bleeding edge. If the
- =?UTF-8?B?U8O2bmtlIEx1ZHdpZw==?= (9/20) Jul 12 2014 There are still a number of ways to stay on the bleeding edge, just
- ponce (6/14) Jul 14 2014 I was "forced" into such a transition (from ~master to tags) and
- Russel Winder via Digitalmars-d (48/59) Jul 12 2014 Why are you tired of this? History is extremely useful for learning and
- Dicebot (22/41) Jul 12 2014 Because history is never as simple as those referring to it want
- Andrei Alexandrescu (5/18) Jul 12 2014 I agree. Adoption of programming languages is a complex phenomenon and
- Kagamin (3/5) Jul 14 2014 New projects?
- Russel Winder via Digitalmars-d (38/46) Jul 12 2014 Clearly just using DVCS repositories is a versioning problem, though the
- Andrei Alexandrescu (3/15) Jul 12 2014 My understanding is there's significant controversy about the feature.
- w0rp (6/6) Jul 12 2014 This is a really bad idea. Being able to decide how a dependency
Could you support "importing from Internet" feature? I think that'll be very convenient. import "http://example.com/MyLibrary.d";
Jul 12 2014
On Saturday, 12 July 2014 at 12:24:19 UTC, Katayama Hirofumi MZ wrote:Could you support "importing from Internet" feature? I think that'll be very convenient. import "http://example.com/MyLibrary.d";dub : code.dlang.org
Jul 12 2014
dub : code.dlang.orgOK, I'll move to there.
Jul 12 2014
On Saturday, 12 July 2014 at 13:10:09 UTC, Katayama Hirofumi MZ wrote:https://github.com/D-Programming-Language/dub/issues/373What I have meant is that "importing from internet" functionality is currently provided by dub packages and does not belong to compiler. URL imports in your proposed form are absolutely horrible.
Jul 12 2014
On Sat, 2014-07-12 at 13:13 +0000, Dicebot via Digitalmars-d wrote:On Saturday, 12 July 2014 at 13:10:09 UTC, Katayama Hirofumi MZ=20 wrote:It's an idea Go has picked up. The URL must refer to a Git, Bazaar, Mercurial repository. The repository is clone locally so that the actual build is local. To be honest it works quite well. --=20 Russel. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.winder ekiga.n= et 41 Buckmaster Road m: +44 7770 465 077 xmpp: russel winder.org.uk London SW11 1EN, UK w: www.russel.org.uk skype: russel_winderhttps://github.com/D-Programming-Language/dub/issues/373=20 What I have meant is that "importing from internet" functionality=20 is currently provided by dub packages and does not belong to=20 compiler. URL imports in your proposed form are absolutely=20 horrible.
Jul 12 2014
Am 12.07.2014 15:47, schrieb Russel Winder via Digitalmars-d:On Sat, 2014-07-12 at 13:13 +0000, Dicebot via Digitalmars-d wrote:Except when: - one needs proper versions - binary only dependencies. - not everyone uses git, mercurial I still don't see Go moving into the enterprise until these issues are sorted out. The approach taken by Dub is much better. -- PauloOn Saturday, 12 July 2014 at 13:10:09 UTC, Katayama Hirofumi MZ wrote:It's an idea Go has picked up. The URL must refer to a Git, Bazaar, Mercurial repository. The repository is clone locally so that the actual build is local. To be honest it works quite well.https://github.com/D-Programming-Language/dub/issues/373What I have meant is that "importing from internet" functionality is currently provided by dub packages and does not belong to compiler. URL imports in your proposed form are absolutely horrible.
Jul 12 2014
I agree. Go approach my seem tempting in its simplicity but it scales terribly. It is one of less wise decisions made by Go authors.
Jul 12 2014
On Sat, 2014-07-12 at 14:07 +0000, Dicebot via Digitalmars-d wrote:I agree. Go approach my seem tempting in its simplicity but it=20 scales terribly. It is one of less wise decisions made by Go=20 authors.The decision wasn't made by the Go authors, it was proposed and initially implemented by users, then incorporated into Go by the official high priests. As to whether it is wise, that is must be left to opinion and history. Personally I like it. Good use of DVCS. It only works though because they gave up using Make for using the go command as a build manager associated with having a very strong source code filestore hierarchy requirement. --=20 Russel. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.winder ekiga.n= et 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
Jul 12 2014
On Saturday, 12 July 2014 at 14:43:13 UTC, Russel Winder via Digitalmars-d wrote:The decision wasn't made by the Go authors, it was proposed and initially implemented by users, then incorporated into Go by the official high priests. As to whether it is wise, that is must be left to opinion and history. Personally I like it. Good use of DVCS. It only works though because they gave up using Make for using the go command as a build manager associated with having a very strong source code filestore hierarchy requirement.Sorry but I am tired of endless appeal to history / usage - by this logic Java and PHP are very good languages full of wisdom. And if someone thinks so we will have a hard time agreeing about anything. Inertia will keep everyone using this feature with no complaints but problems remain : coupling compiler with rather complicated fetching/caching infrastructure, lack of centralized registry to verify contributions, version control. Regarding latter I find it quite telling that dub has recently banned usage of ~master as dependency version and only allows explicit tags/releases - good hygienic decision for growing ecosystem.
Jul 12 2014
On Sat, 2014-07-12 at 15:41 +0000, Dicebot via Digitalmars-d wrote: [=E2=80=A6]verify contributions, version control. Regarding latter I find it=20 quite telling that dub has recently banned usage of ~master as=20 dependency version and only allows explicit tags/releases - good=20 hygienic decision for growing ecosystem.Sad if true, I want the capability to be on the bleeding edge. If the possibility of specifying version exists then people who want hygiene are covered. Removing the facility of ~master stops those of use who like things to break using Dub at all. Oh well back to SCons and manual working.=20 --=20 Russel. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.winder ekiga.n= et 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
Jul 12 2014
Am 12.07.2014 18:20, schrieb Russel Winder via Digitalmars-d:On Sat, 2014-07-12 at 15:41 +0000, Dicebot via Digitalmars-d wrote: […]There are still a number of ways to stay on the bleeding edge, just direct ~master/branch dependencies in dub.json are discouraged/deprecated, because they have a destructive effect on the package ecosystem. I'll write up a detailed rationale before the next release, including suggestions how to handle situations where you want to stay on a branch. Related thread: http://forum.rejectedsoftware.com/groups/rejectedsoftware.dub/thread/1020/verify contributions, version control. Regarding latter I find it quite telling that dub has recently banned usage of ~master as dependency version and only allows explicit tags/releases - good hygienic decision for growing ecosystem.Sad if true, I want the capability to be on the bleeding edge. If the possibility of specifying version exists then people who want hygiene are covered. Removing the facility of ~master stops those of use who like things to break using Dub at all. Oh well back to SCons and manual working.
Jul 12 2014
On Saturday, 12 July 2014 at 16:20:16 UTC, Russel Winder via Digitalmars-d wrote:Sad if true, I want the capability to be on the bleeding edge. If the possibility of specifying version exists then people who want hygiene are covered. Removing the facility of ~master stops those of use who like things to break using Dub at all. Oh well back to SCons and manual working.I was "forced" into such a transition (from ~master to tags) and it turns out it allows to make more breaking changes, library users can choose between stable and bleeding edge with version selectors.
Jul 14 2014
On Sat, 2014-07-12 at 15:41 +0000, Dicebot via Digitalmars-d wrote: [=E2=80=A6]Sorry but I am tired of endless appeal to history / usage - by=20 this logic Java and PHP are very good languages full of wisdom.=20 And if someone thinks so we will have a hard time agreeing about=20 anything.Why are you tired of this? History is extremely useful for learning and moving forward. Maybe PHP is an aberration designed to allow broken websites, but many still like it and use it successfully. That PHP and all sites using it should be replaced is seemingly agreed, but conservative management and some developers are unprepared to take risks by replacing that which works. Java may have its faults and it may have gained traction due to massive over-hyping (*), but it does have good stuff in it (**). Java evolves and improves in order to stay relevant. Of course conservative management and a lot of developers refuse to consider a move away from Java as they have systems that work and are unprepared to consider reimplementation. Backward compatibility then becomes an obsession to the detriment of programming language evolution at the bleeding edge. Java suffers this very badly. Kotlin, Ceylon and Scala are trying to achieve forward movement but are not getting the mindshare they deserve. Groovy can be seen as a set of hacks to make creating systems which are Java based nice to write and maintain.Inertia will keep everyone using this feature with no complaints=20 but problems remain : coupling compiler with rather complicated=20 fetching/caching infrastructure, lack of centralized registry to=20 verify contributions, version control. Regarding latter I find it=20 quite telling that dub has recently banned usage of ~master as=20 dependency version and only allows explicit tags/releases - good=20 hygienic decision for growing ecosystem.I suggest that finding ways of dealing with the issues rather than running away from them is what should happen. As an emergent property Maven Central has become the central repository for all JVM artefacts. Maven though failed to really do the job of being a project build and management system. Gradle is doing a lot better job. Similarly JUnit3 =E2= =86=92 TestNG =E2=86=92 Spock also ScalaTest, Cucumber, etc. has shown that inerti= a can be overcome by providing something that is compatible and yet provably better.=20 So what is the inertia breaker to get Fortran, C and C++ folk to use D? I have no idea, but unless there are active user local groups evangelizing D nothing will change. This email list is important as a central exchange mechanism, but it is useless for marketing and evangelizing.=20 (*) Trust me on this there was massive over-hyping of Java in the 1994 to 2001 period, I was an indirect part of it. (**) Though there is a lot of crap, such as claiming to be object-oriented when clearly it isn't; object-based maybe, but definitely no object-oriented.=20 --=20 Russel. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.winder ekiga.n= et 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
Jul 12 2014
On Saturday, 12 July 2014 at 16:38:35 UTC, Russel Winder via Digitalmars-d wrote:On Sat, 2014-07-12 at 15:41 +0000, Dicebot via Digitalmars-d wrote: […]Because history is never as simple as those referring to it want it to be. Connecting some facts and assuming tight relation between those is annoyingly common fallacy.Sorry but I am tired of endless appeal to history / usage - by this logic Java and PHP are very good languages full of wisdom. And if someone thinks so we will have a hard time agreeing about anything.Why are you tired of this? History is extremely useful for learning and moving forward.Maybe PHP is an aberration designed to allow broken websites, but many still like it and use it successfully.This is exactly what I have meant - there is no point to refer to historical language success when discussing technological issues. Saying that some feature is fine simply because language that has it is widely used is an approach that does not cope well with the existence of PHP. Everyone will be happy with this decision until it becomes a real pain but it doesn't make it any better. Don't mix marketing and language design.So what is the inertia breaker to get Fortran, C and C++ folk to use D? I have no idea, but unless there are active user local groups evangelizing D nothing will change. This email list is important as a central exchange mechanism, but it is useless for marketing and evangelizing.Evangelizing is a playing an alien game with starting disadvantage. No way you can over-hype Google. I believe D should stick to its strengths - being versatile, pragmatical and not opinionated. Targeting not "folks" but senior developers who chose languages for next big application and have already learned their hard lessons of trusting the hype. Whatever marketing strategy is considered, though, does not really matter here. What I am asking here is to stop attacking technological decisions from marketing standpoint. I hate it.
Jul 12 2014
On 7/12/14, 12:54 PM, Dicebot wrote:On Saturday, 12 July 2014 at 16:38:35 UTC, Russel Winder via Digitalmars-d wrote:I agree. Adoption of programming languages is a complex phenomenon and reducing its analysis to "D must do this one thing to be successful" is rather simplistic. AndreiOn Sat, 2014-07-12 at 15:41 +0000, Dicebot via Digitalmars-d wrote: […]Because history is never as simple as those referring to it want it to be. Connecting some facts and assuming tight relation between those is annoyingly common fallacy.Sorry but I am tired of endless appeal to history / usage - by this logic Java and PHP are very good languages full of wisdom. And if someone thinks so we will have a hard time agreeing about anything.Why are you tired of this? History is extremely useful for learning and moving forward.
Jul 12 2014
On Saturday, 12 July 2014 at 16:38:35 UTC, Russel Winder via Digitalmars-d wrote:So what is the inertia breaker to get Fortran, C and C++ folk to use D?New projects?
Jul 14 2014
On Sat, 2014-07-12 at 15:52 +0200, Paulo Pinto via Digitalmars-d wrote: [=E2=80=A6]Except when: =20 - one needs proper versionsClearly just using DVCS repositories is a versioning problem, though the Go system does not automatically update clones so you are in total control of updating. Recognizing the problem of API versions versus repository versions, Gustavo Niemeyer created the repository gopkg.in with a full version naming system allowing people to version by API number. Seems to work very well.- binary only dependencies.Go is a source code oriented culture like Python.- not everyone uses git, mercurialThere is always Bazaar or Subversion. I think there might even be a nascent Perforce capability.I still don't see Go moving into the enterprise until these issues are==20sorted out.That boat has already sailed, Go is firmly established in many major networking and Web organizations even without a formal versioning system. They didn't bother waiting for perfection, they got on, did, and coped. I believe from anecdotal evidence just in and around London, Go is now firmly established, shouldering out C completely, being used in areas where otherwise a combination of C, C++ and Python might have been used. Yet Python use has not really been affected.The approach taken by Dub is much better.I think Dub is very analogous to Gustavo Niemeyer's gopkg.in. I suggest that Dub needs to be able to build Fortran, C and C++ systems (replacing or integrating the wonderful SCons) as well as D, with or without bits of Fortran, C and C++, allowing C and C++ folk to slowly introduce bits of D into their systems. I would use this, especially if it could be used in Emacs, Eclipse and IntelliJ IDEA. But maybe it already has these facilities, I haven't been able to do any C++ or D work for three or four months now. --=20 Russel. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.winder ekiga.n= et 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
Jul 12 2014
On 7/12/14, 6:47 AM, Russel Winder via Digitalmars-d wrote:On Sat, 2014-07-12 at 13:13 +0000, Dicebot via Digitalmars-d wrote:My understanding is there's significant controversy about the feature. -- AndreiOn Saturday, 12 July 2014 at 13:10:09 UTC, Katayama Hirofumi MZ wrote:It's an idea Go has picked up. The URL must refer to a Git, Bazaar, Mercurial repository. The repository is clone locally so that the actual build is local. To be honest it works quite well.https://github.com/D-Programming-Language/dub/issues/373What I have meant is that "importing from internet" functionality is currently provided by dub packages and does not belong to compiler. URL imports in your proposed form are absolutely horrible.
Jul 12 2014
This is a really bad idea. Being able to decide how a dependency gets pulled in for a library you depend on is a blessing, especially when you have to lock versions down. This only works for something like loading JavaScript files, where you can assume only roughly 6 concurrent connections per server are allowed, so you use CDNs more.
Jul 12 2014