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