On Sat, 2013-02-16 at 20:15 +0100, Jacob Carlborg wrote: […] > I'm thinking that there should be a build tool that drives everything. > The build script contains package dependencies. The build tool will ask > the package manager to get linker/import paths and libraries for the > dependencies. […]
First a plug for people to think of SCons and Waf, not to mention Gradle, when starting to rattle of build tools. The SBT folks are using Scala in quite interesting ways to enable Scala to define project specifications with all the non-inferable dependencies. The Gradle folks have already done almost everything the SBT folks are doing, but using Groovy rather than Scala. The Go folk have done something interesting in that they have merged the whole concept of configuration and build by doing everything over DVCS. You put your sources in Git, Mercurial, Bazaar (they really should include Fossil as well but…) and these can be Got and the modules created within the standard structure local hierarchy. The have a single command that performs all activity. D has rdmd but compared to Go's go command it cannot do a lot. I would suggest now is the time to think outside the box, analogous to the ways the Gradle and SBT folk have on the JVM and the way the Go folk have for native builds of statically linked code. Instead of thinking in terms of compile, link, modules, dependencies, what is the workflow that makes D the compelling language for building Fortran/C/C++/D systems. This is suggesting that the milieu to attack is the one currently being won by Python in the computationally intensive areas of bioinformatics and scientific computing. Can D be the project specification language using convention over configuration. Project directories are in a standard form (with exceptions describable) with dependencies either inferred by scanning the project sources or specified in a trivial way in the project specification file. Thus I suggest that it is not that the build tool is embedded in the package manager but that package and dependency management is part of the build system. -- Russel. ============================================================================= Dr Russel Winder t: +44 20 7585 2200 voip: sip:[email protected] 41 Buckmaster Road m: +44 7770 465 077 xmpp: [email protected] London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder
signature.asc
Description: This is a digitally signed message part
