1 ! Copyright (C) 2004, 2009 Slava Pestov.
2 ! See http://factorcode.org/license.txt for BSD license.
3 USING: arrays assocs continuations debugger generic hashtables
4 init io io.files kernel kernel.private make math memory
5 namespaces parser prettyprint sequences splitting system
6 vectors vocabs vocabs.loader words destructors ;
7 QUALIFIED: bootstrap.image.private
10 "Bootstrap stage 1..." print flush
12 "vocab:bootstrap/primitives.factor" run-file
15 { "resource:core" } vocab-roots set
17 ! Create a boot quotation for the target
20 ! Rehash hashtables, since bootstrap.image creates them
21 ! using the host image's hashing algorithms. We don't
22 ! use each-object here since the catch stack isn't yet
26 [ hashtable? ] pusher [ (each-object) ] dip
32 "math.integers" require
36 "io.streams.c" require
37 "vocabs.loader" require
40 "bootstrap.layouts" require
43 "resource:basis/bootstrap/stage2.factor"
45 [ run-file ] with-destructors
47 "Cannot find " write write "." print
48 "Please move " write image write " to the same directory as the Factor sources," print
49 "and try again." print
54 bootstrap.image.private:bootstrap-boot-quot set