This is interesting, and a good starting point for refactoring our large Base library. Any fun statistics, e.g. build time and system image size for the minimal version?
On Fri, Jan 29, 2016 at 3:00 PM, Scott Jones <[email protected]> wrote: > I've updated the branch again (after a tracking down and working around an > issue introduced with #13412), > had to get that great jb/function PR in! > All unit tests pass. > > On Thursday, January 21, 2016 at 9:02:50 PM UTC-5, Scott Jones wrote: >> >> This is still a WIP, and can definitely use some more work in 1) testing >> on other platforms 2) better disentangling of documentation 3) advice on how >> better to accomplish it's goals. 4) testing with different subsets of >> functionality turned on (I've tested just with BUILD_FULL disabled ("lite" >> version), or enabled (same as master) so far. >> >> This branch (spj/lite in ScottPJones repository, >> https://github.com/ScottPJones/julia/tree/spj/lite) by default will build a >> "lite" version of Julia, and by putting >> override BUILD_xxx = 1 >> lines in Make.user, different functionality can be built back in (such as >> BigInt, BigFloat, LinAlg, Float16, Mmap, Threads, ...). See Make.inc for >> the full list. >> >> I've also made it so that all unit tests pass (that don't use disabled >> functionality). >> (the hard part there was that testing can be spread all over the place, >> esp. for BigInt, BigFloat, Complex, and Rational types). >> >> It will also not build libraries such as arpack, lapack, openblas, fftw, >> suitesparse, mpfr, gmp, depending on what BUILD_* options have been set. >> >> This is only a first step, the real goal is to be able to have a minimal >> useful core, that can have the other parts easily added, in such a way that >> they still appear to have >> been defined completely in Base. >> One place where I think this can be very useful is for building minimal >> versions of Julia to run on things like the Raspberry Pi. >> >> -Scott >> >> >
