! Copyright (C) 2004, 2010 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: accessors alien alien.accessors arrays classes combinators
-compiler.units cpu.architecture delegate fry kernel layouts macros
-math math.order math.parser quotations sequences summary system words
-words.symbol ;
+USING: accessors alien alien.accessors arrays classes
+combinators compiler.units cpu.architecture delegate kernel
+layouts math math.order math.parser quotations sequences summary
+system words words.symbol ;
IN: alien.c-types
SYMBOLS:
! Copyright (C) 2005, 2010 Slava Pestov, Alex Chapman.
! See http://factorcode.org/license.txt for BSD license.
USING: alien alien.c-types alien.enums alien.libraries
-alien.parser fry kernel lexer namespaces parser sequences
+alien.parser kernel lexer namespaces parser sequences
strings.parser vocabs words ;
<< "alien.arrays" require >> ! needed for bootstrap
IN: alien.syntax
classes.builtin classes.private classes.tuple
classes.tuple.private combinators combinators.short-circuit
combinators.smart command-line compiler.codegen.relocation
-compiler.units fry generic generic.single.private grouping
+compiler.units generic generic.single.private grouping
hashtables hashtables.private io io.binary io.encodings.binary
-io.files io.pathnames kernel kernel.private layouts locals make
-math math.order namespaces namespaces.private parser
-parser.notes prettyprint quotations sequences sequences.private
-source-files strings system vectors vocabs words ;
+io.files io.pathnames kernel kernel.private layouts make math
+math.order namespaces namespaces.private parser parser.notes
+prettyprint quotations sequences sequences.private source-files
+strings system vectors vocabs words ;
IN: bootstrap.image
: arch-name ( os cpu -- arch )
! Copyright (C) 2008 Doug Coleman.
! Copyright (C) 2009 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: colors fonts cairo.ffi alien alien.c-types kernel accessors
-sequences namespaces fry continuations destructors math images
-images.memory math.rectangles ;
+USING: accessors alien alien.c-types cairo.ffi colors images
+images.memory kernel math math.rectangles sequences ;
IN: cairo
ERROR: cairo-error n message ;
! Copyright (C) 2005, 2006 Alex Chapman, Daniel Ehrenberg
! See http://factorcode.org/license.txt for BSD license
-USING: accessors arrays fry kernel math sequences strings ;
+USING: accessors arrays kernel math sequences strings ;
IN: circular
TUPLE: circular { seq read-only } { start integer } ;
! Copyright (C) 2009 Daniel Ehrenberg
! See http://factorcode.org/license.txt for BSD license.
-USING: alien.accessors fry kernel locals math math.bitwise
-math.order sequences ;
+USING: alien.accessors kernel math math.bitwise math.order ;
IN: classes.struct.bit-accessors
! Bitfield accessors are little-endian on all platforms
arrays byte-arrays classes classes.parser classes.private
classes.struct.bit-accessors classes.tuple classes.tuple.parser
combinators combinators.smart cpu.architecture definitions
-delegate.private fry functors.backend generalizations generic
-generic.parser io kernel kernel.private lexer libc locals macros
-math math.order parser quotations sequences slots slots.private
+delegate.private functors.backend generalizations generic
+generic.parser io kernel kernel.private lexer libc math
+math.order parser quotations sequences slots slots.private
specialized-arrays stack-checker.dependencies summary vectors
vocabs.loader vocabs.parser words ;
IN: classes.struct
! Copyright (C) 2008 Joe Groff.
! See http://factorcode.org/license.txt for BSD license.
USING: accessors alien.data assocs classes.struct cocoa
-cocoa.runtime cocoa.types destructors fry hashtables kernel libc
-locals sequences specialized-arrays vectors ;
+cocoa.runtime cocoa.types destructors hashtables kernel libc
+sequences specialized-arrays vectors ;
+IN: cocoa.enumeration
SPECIALIZED-ARRAY: id
IN: cocoa.enumeration
! See http://factorcode.org/license.txt for BSD license.
USING: accessors alien alien.c-types alien.data alien.strings
arrays assocs classes.struct cocoa.runtime cocoa.types
-combinators core-graphics.types fry generalizations
-io.encodings.utf8 kernel layouts libc locals macros make math
-memoize namespaces quotations sequences sets specialized-arrays
-splitting stack-checker strings words ;
+combinators core-graphics.types generalizations
+io.encodings.utf8 kernel layouts libc make math namespaces
+sequences sets specialized-arrays splitting stack-checker
+strings words ;
QUALIFIED-WITH: alien.c-types c
IN: cocoa.messages
-USING: kernel sequences math stack-checker effects accessors
-macros fry combinators.short-circuit ;
+USING: accessors combinators.short-circuit effects kernel math
+sequences stack-checker ;
IN: combinators.short-circuit.smart
<PRIVATE
USING: accessors arrays assocs combinators.short-circuit
compiler.cfg.comparisons compiler.cfg.instructions
compiler.cfg.representations.preferred compiler.cfg.rpo
-compiler.cfg.utilities cpu.architecture fry kernel locals math
-namespaces sequences sets ;
+compiler.cfg.utilities cpu.architecture kernel math namespaces
+sequences sets ;
IN: compiler.cfg.alias-analysis
! Local copy propagation
USING: accessors arrays combinators combinators.short-circuit
compiler.cfg compiler.cfg.instructions compiler.cfg.predecessors
compiler.cfg.renaming compiler.cfg.rpo compiler.cfg.utilities
-deques dlists fry kernel locals math namespaces sequences sets
-vectors ;
+deques dlists kernel math namespaces sequences sets vectors ;
IN: compiler.cfg.branch-splitting
: clone-instructions ( insns -- insns' )
! Copyright (C) 2004, 2010 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
USING: accessors arrays assocs combinators compiler.cfg
-compiler.cfg.builder.blocks compiler.cfg.comparisons compiler.cfg.hats
-compiler.cfg.instructions compiler.cfg.intrinsics compiler.cfg.registers
-compiler.cfg.stacks compiler.cfg.stacks.local compiler.tree
-compiler.cfg.utilities cpu.architecture fry kernel locals make math
-namespaces sequences words ;
+compiler.cfg.builder.blocks compiler.cfg.comparisons
+compiler.cfg.hats compiler.cfg.instructions
+compiler.cfg.registers compiler.cfg.stacks
+compiler.cfg.stacks.local compiler.cfg.utilities compiler.tree
+cpu.architecture kernel make math namespaces sequences words ;
IN: compiler.cfg.builder
+SLOT: return
SYMBOL: procedures
SYMBOL: loops
! Copyright (C) 2008, 2010 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: accessors assocs compiler.cfg.def-use
+USING: accessors assocs compiler.cfg compiler.cfg.def-use
compiler.cfg.instructions compiler.cfg.predecessors
compiler.cfg.renaming compiler.cfg.rpo compiler.cfg.utilities
-fry grouping kernel namespaces sequences ;
+grouping kernel namespaces sequences ;
IN: compiler.cfg.copy-prop
<PRIVATE
! Copyright (C) 2009 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: accessors assocs combinators.short-circuit compiler.cfg.predecessors
-compiler.cfg.rpo compiler.cfg.utilities deques dlists functors kernel lexer
-locals namespaces sequences ;
+USING: accessors assocs combinators.short-circuit
+compiler.cfg.predecessors compiler.cfg.rpo
+compiler.cfg.utilities deques dlists functors kernel lexer
+namespaces sequences ;
IN: compiler.cfg.dataflow-analysis
GENERIC: join-sets ( sets bb dfa -- set )
! See http://factorcode.org/license.txt for BSD license.
USING: accessors arrays assocs combinators compiler.cfg
compiler.cfg.instructions compiler.cfg.instructions.syntax
-compiler.cfg.rpo compiler.units fry generic kernel namespaces
+compiler.cfg.rpo compiler.units generic kernel namespaces
quotations sequences sequences.generalizations sets slots words ;
IN: compiler.cfg.def-use
USING: accessors assocs compiler.cfg compiler.cfg.comparisons
compiler.cfg.instructions compiler.cfg.predecessors
compiler.cfg.registers compiler.cfg.rpo compiler.cfg.utilities
-cpu.architecture grouping kernel layouts locals make math
-namespaces sequences ;
+cpu.architecture grouping kernel layouts make math namespaces
+sequences ;
IN: compiler.cfg.gc-checks
<PRIVATE
! Copyright (C) 2008, 2010 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
USING: accessors alien classes.algebra combinators
-combinators.short-circuit compiler.cfg compiler.cfg.builder.blocks
+combinators.short-circuit compiler.cfg.builder.blocks
compiler.cfg.hats compiler.cfg.instructions compiler.cfg.stacks
-compiler.tree.propagation.info cpu.architecture fry kernel locals math
-namespaces sequences ;
+compiler.tree.propagation.info cpu.architecture kernel math
+sequences ;
IN: compiler.cfg.intrinsics.alien
: emit-<displaced-alien>? ( node -- ? )
! Copyright (C) 2008, 2010 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: accessors arrays byte-arrays compiler.cfg
-compiler.cfg.builder.blocks compiler.cfg.hats
-compiler.cfg.instructions compiler.cfg.registers compiler.cfg.stacks
-compiler.constants compiler.tree.propagation.info cpu.architecture fry
-kernel layouts locals math math.order namespaces sequences ;
+USING: accessors arrays byte-arrays compiler.cfg.builder.blocks
+compiler.cfg.hats compiler.cfg.instructions
+compiler.cfg.registers compiler.cfg.stacks compiler.constants
+compiler.tree.propagation.info cpu.architecture kernel layouts
+math math.order sequences ;
IN: compiler.cfg.intrinsics.allot
: ##set-slots, ( regs obj class -- )
! Copyright (C) 2008, 2010 Slava Pestov, Doug Coleman.
! See http://factorcode.org/license.txt for BSD license.
USING: accessors arrays combinators compiler.cfg.builder.blocks
-compiler.cfg.comparisons compiler.cfg.hats compiler.cfg.instructions
-compiler.cfg.registers compiler.cfg.stacks compiler.cfg.stacks.local
-compiler.tree.propagation.info cpu.architecture fry kernel layouts
-locals math math.intervals namespaces sequences ;
+compiler.cfg.comparisons compiler.cfg.hats
+compiler.cfg.instructions compiler.cfg.registers
+compiler.cfg.stacks compiler.cfg.stacks.local
+compiler.tree.propagation.info cpu.architecture kernel layouts
+math math.intervals namespaces sequences ;
IN: compiler.cfg.intrinsics.fixnum
: emit-both-fixnums? ( -- )
! Copyright (C) 2008, 2010 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: compiler.cfg.hats compiler.cfg.stacks fry ;
+USING: compiler.cfg.hats compiler.cfg.stacks ;
IN: compiler.cfg.intrinsics.float
: emit-float-ordered-comparison ( cc -- )
! Copyright (C) 2008, 2010 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
USING: accessors classes.algebra classes.struct
-compiler.cfg.builder.blocks compiler.cfg.comparisons compiler.cfg.hats
-compiler.cfg.instructions compiler.cfg.stacks compiler.constants
-compiler.tree.propagation.info cpu.architecture kernel layouts math
-namespaces sequences vm ;
+compiler.cfg.builder.blocks compiler.cfg.comparisons
+compiler.cfg.hats compiler.cfg.instructions compiler.cfg.stacks
+compiler.constants compiler.tree.propagation.info
+cpu.architecture kernel layouts math namespaces sequences vm ;
IN: compiler.cfg.intrinsics.misc
: emit-tag ( -- )
USING: accessors arrays classes combinators
compiler.cfg.instructions compiler.cfg.registers
compiler.cfg.stacks compiler.cfg.stacks.local
-compiler.tree.propagation.info cpu.architecture fry
-generalizations kernel locals macros make math quotations
-sequences sequences.generalizations ;
+compiler.tree.propagation.info cpu.architecture generalizations
+kernel make math quotations sequences sequences.generalizations ;
IN: compiler.cfg.intrinsics.simd.backend
! Selection of implementation based on available CPU instructions
! Copyright (C) 2009 Slava Pestov, Joe Groff.
! See http://factorcode.org/license.txt for BSD license.
-USING: accessors alien.c-types arrays assocs byte-arrays combinators
-combinators.short-circuit compiler.cfg.comparisons
+USING: accessors alien.c-types arrays assocs byte-arrays
+combinators combinators.short-circuit compiler.cfg.comparisons
compiler.cfg.hats compiler.cfg.instructions
compiler.cfg.intrinsics compiler.cfg.intrinsics.alien
compiler.cfg.intrinsics.simd.backend compiler.cfg.stacks
-cpu.architecture fry kernel layouts locals math math.vectors
+cpu.architecture kernel layouts math math.vectors
math.vectors.simd.intrinsics sequences specialized-arrays ;
FROM: alien.c-types => heap-size char short int longlong float double ;
SPECIALIZED-ARRAYS: char uchar short ushort int uint longlong ulonglong float double ;
! Copyright (C) 2008, 2010 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
USING: accessors classes.algebra classes.builtin
-combinators.short-circuit compiler.cfg compiler.cfg.builder.blocks
-compiler.cfg.hats compiler.cfg.instructions compiler.cfg.registers
-compiler.cfg.stacks compiler.tree.propagation.info cpu.architecture
-kernel layouts locals math namespaces sequences ;
+combinators.short-circuit compiler.cfg.builder.blocks
+compiler.cfg.hats compiler.cfg.instructions
+compiler.cfg.registers compiler.cfg.stacks
+compiler.tree.propagation.info cpu.architecture kernel layouts
+math namespaces sequences ;
IN: compiler.cfg.intrinsics.slots
: class-tag ( class -- tag/f )
! Copyright (C) 2008, 2010 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: accessors arrays assocs combinators combinators.short-circuit
-compiler.cfg.linear-scan.allocation.spilling
+USING: accessors arrays assocs combinators
+combinators.short-circuit compiler.cfg.linear-scan.allocation.spilling
compiler.cfg.linear-scan.allocation.state
-compiler.cfg.linear-scan.live-intervals compiler.cfg.linear-scan.ranges
-compiler.utilities fry heaps kernel locals math namespaces sequences ;
+compiler.cfg.linear-scan.live-intervals compiler.utilities heaps
+kernel namespaces sequences ;
IN: compiler.cfg.linear-scan.allocation
: active-positions ( new assoc -- )
compiler.cfg.linear-scan.allocation.splitting
compiler.cfg.linear-scan.allocation.state
compiler.cfg.linear-scan.live-intervals
-compiler.cfg.linear-scan.ranges compiler.utilities fry kernel
-linked-assocs locals math namespaces sequences ;
+compiler.cfg.linear-scan.ranges compiler.utilities kernel
+linked-assocs math namespaces sequences ;
IN: compiler.cfg.linear-scan.allocation.spilling
: trim-before-ranges ( live-interval -- )
! Copyright (C) 2009, 2010 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: accessors binary-search combinators
-compiler.cfg.linear-scan.allocation.state
+USING: accessors compiler.cfg.linear-scan.allocation.state
compiler.cfg.linear-scan.live-intervals
-compiler.cfg.linear-scan.ranges fry hints kernel locals math math.order
-namespaces sequences ;
+compiler.cfg.linear-scan.ranges hints kernel math namespaces
+sequences ;
IN: compiler.cfg.linear-scan.allocation.splitting
: split-uses ( uses n -- before after )
! See http://factorcode.org/license.txt for BSD license.
USING: accessors arrays assocs combinators compiler.cfg
compiler.cfg.instructions compiler.cfg.linear-scan.live-intervals
-compiler.cfg.linear-scan.ranges compiler.cfg.registers cpu.architecture fry
-heaps kernel math math.order namespaces sequences ;
+compiler.cfg.linear-scan.ranges compiler.cfg.registers
+cpu.architecture heaps kernel math math.order namespaces
+sequences ;
IN: compiler.cfg.linear-scan.allocation.state
SYMBOL: progress
! See http://factorcode.org/license.txt for BSD license.
USING: accessors arrays assocs combinators compiler.cfg
compiler.cfg.instructions compiler.cfg.linear-scan.allocation.state
-compiler.cfg.linear-scan.live-intervals compiler.cfg.linearization
-compiler.cfg.liveness compiler.cfg.registers
-compiler.cfg.renaming.functor compiler.cfg.ssa.destruction.leaders
-compiler.cfg.utilities fry heaps kernel make math namespaces sequences
-;
+compiler.cfg.linear-scan.live-intervals
+compiler.cfg.linearization compiler.cfg.liveness
+compiler.cfg.registers compiler.cfg.renaming.functor
+compiler.cfg.ssa.destruction.leaders compiler.cfg.utilities
+heaps kernel make math namespaces sequences ;
IN: compiler.cfg.linear-scan.assignment
QUALIFIED: sets
! Copyright (C) 2008, 2010 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: accessors assocs binary-search combinators compiler.cfg.def-use
-compiler.cfg.instructions compiler.cfg.linear-scan.ranges
-compiler.cfg.linearization compiler.cfg.liveness
-compiler.cfg.registers compiler.cfg.ssa.destruction.leaders
-cpu.architecture fry kernel locals math math.order namespaces
-sequences vectors ;
+USING: accessors assocs binary-search combinators
+compiler.cfg.def-use compiler.cfg.instructions
+compiler.cfg.linear-scan.ranges compiler.cfg.linearization
+compiler.cfg.liveness compiler.cfg.registers
+compiler.cfg.ssa.destruction.leaders cpu.architecture kernel
+math math.order namespaces sequences vectors ;
IN: compiler.cfg.linear-scan.live-intervals
TUPLE: vreg-use n def-rep use-rep spill-slot? ;
-USING: accessors arrays fry grouping kernel math math.order sequences ;
+USING: arrays grouping kernel math math.order sequences ;
IN: compiler.cfg.linear-scan.ranges
! Range utilities
compiler.cfg.linear-scan.allocation.state
compiler.cfg.linear-scan.assignment compiler.cfg.parallel-copy
compiler.cfg.predecessors compiler.cfg.registers
-compiler.cfg.rpo compiler.cfg.utilities cpu.architecture fry
-kernel locals make namespaces sequences ;
+compiler.cfg.rpo compiler.cfg.utilities cpu.architecture kernel
+make namespaces sequences ;
IN: compiler.cfg.linear-scan.resolve
TUPLE: location
! Copyright (C) 2009, 2010 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: accessors assocs combinators combinators.short-circuit
+USING: accessors combinators combinators.short-circuit
compiler.cfg.loop-detection compiler.cfg.predecessors
-compiler.cfg.rpo compiler.cfg.utilities deques dlists fry kernel
+compiler.cfg.rpo compiler.cfg.utilities deques dlists kernel
make math namespaces sequences sets sorting ;
IN: compiler.cfg.linearization
compiler.cfg.predecessors compiler.cfg.registers
compiler.cfg.rpo compiler.cfg.ssa.destruction.leaders
compiler.cfg.utilities compiler.utilities cpu.architecture
-deques dlists fry kernel locals namespaces sequences sets ;
+deques dlists kernel namespaces sequences sets ;
IN: compiler.cfg.liveness
SYMBOL: live-ins
! Copyright (C) 2009 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
USING: accessors assocs combinators.short-circuit compiler.cfg
-compiler.cfg.predecessors compiler.cfg.utilities deques dlists fry kernel
-namespaces sequences sets ;
+compiler.cfg.predecessors compiler.cfg.utilities deques dlists
+kernel namespaces sequences sets ;
IN: compiler.cfg.loop-detection
TUPLE: natural-loop header index ends blocks ;
! See http://factorcode.org/license.txt for BSD license.
USING: assocs compiler.cfg.instructions compiler.cfg.registers
compiler.cfg.ssa.destruction.leaders compiler.utilities
-cpu.architecture deques dlists fry kernel locals make namespaces
-sequences ;
+cpu.architecture deques dlists kernel make namespaces sequences ;
IN: compiler.cfg.parallel-copy
<PRIVATE
! Copyright (C) 2008, 2009 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
USING: accessors assocs compiler.cfg.rpo compiler.cfg.utilities
-fry kernel sequences ;
+kernel sequences ;
IN: compiler.cfg.predecessors
<PRIVATE
! Copyright (C) 2010 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
USING: accessors assocs compiler.cfg.def-use
-compiler.cfg.instructions compiler.cfg.rpo disjoint-sets fry
-kernel namespaces sequences ;
+compiler.cfg.instructions compiler.cfg.rpo disjoint-sets kernel
+namespaces sequences ;
IN: compiler.cfg.representations.coalescing
! Find all strongly connected components in the graph where the
! See http://factorcode.org/license.txt for BSD license.
USING: arrays byte-arrays combinators compiler.cfg.instructions
compiler.cfg.registers compiler.constants cpu.architecture
-kernel layouts locals math namespaces ;
+kernel layouts math namespaces ;
IN: compiler.cfg.representations.conversion
ERROR: bad-conversion dst src dst-rep src-rep ;
combinators.short-circuit compiler.cfg.instructions
compiler.cfg.registers compiler.cfg.representations.rewrite
compiler.cfg.representations.selection cpu.architecture kernel
-layouts locals make math namespaces sequences ;
+layouts make math namespaces sequences ;
IN: compiler.cfg.representations.peephole
GENERIC: optimize-insn ( insn -- )
! Copyright (C) 2009, 2010 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
USING: accessors arrays combinators compiler.cfg.def-use
-compiler.cfg.instructions compiler.units cpu.architecture fry
+compiler.cfg.instructions compiler.units cpu.architecture
generic kernel namespaces sequences sequences.generalizations
sets words ;
FROM: compiler.cfg.instructions.syntax => insn-def-slots
compiler.cfg.registers compiler.cfg.renaming.functor
compiler.cfg.representations.conversion
compiler.cfg.representations.preferred compiler.cfg.rpo kernel
-locals make namespaces sequences ;
+make namespaces sequences ;
IN: compiler.cfg.representations.rewrite
! Insert conversions. This introduces new temporaries, so we need
! Copyright (C) 2008, 2009 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: accessors compiler.cfg fry kernel make namespaces
-sequences sets ;
+USING: accessors compiler.cfg kernel make namespaces sequences
+sets ;
IN: compiler.cfg.rpo
: post-order-traversal ( visited bb -- visited )
! Copyright (C) 2009, 2010 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: compiler.cfg.instructions compiler.cfg.registers compiler.cfg.rpo
-cpu.architecture kernel sequences ;
+USING: compiler.cfg.instructions compiler.cfg.registers
+compiler.cfg.rpo cpu.architecture kernel sequences ;
IN: compiler.cfg.save-contexts
UNION: context-modifier ##phi ##inc ##callback-inputs ;
USING: accessors assocs combinators.short-circuit
-compiler.cfg.instructions compiler.cfg.registers compiler.cfg.rpo
-compiler.cfg.stacks compiler.cfg.stacks.padding kernel sequences ;
+compiler.cfg.instructions compiler.cfg.registers
+compiler.cfg.rpo compiler.cfg.stacks compiler.cfg.stacks.padding
+kernel sequences ;
IN: compiler.cfg.stacks.clearing
: state>clears ( state -- clears )
! Copyright (C) 2009 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
USING: accessors compiler.cfg compiler.cfg.instructions
-compiler.cfg.registers compiler.cfg.rpo compiler.cfg.stacks.global
-compiler.cfg.stacks.local compiler.cfg.utilities fry kernel locals
-make math sequences sets ;
+compiler.cfg.rpo compiler.cfg.stacks.global
+compiler.cfg.stacks.local compiler.cfg.utilities kernel make
+math sequences sets ;
IN: compiler.cfg.stacks.finalize
:: inserting-peeks ( from to -- set )
! Copyright (C) 2009 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: accessors compiler.cfg.dataflow-analysis kernel sequences sets ;
+USING: accessors compiler.cfg.dataflow-analysis kernel sets ;
IN: compiler.cfg.stacks.global
: transfer-peeked-locs ( set bb -- set' )
! Copyright (C) 2009 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: accessors arrays assocs combinators compiler.cfg.instructions
-compiler.cfg.parallel-copy compiler.cfg.registers fry hash-sets kernel
-make math math.order namespaces sequences sets ;
+USING: accessors arrays assocs combinators
+compiler.cfg.instructions compiler.cfg.parallel-copy
+compiler.cfg.registers hash-sets kernel make math math.order
+namespaces sequences sets ;
IN: compiler.cfg.stacks.local
TUPLE: height-state ds-begin rs-begin ds-inc rs-inc ;
! See http://factorcode.org/license.txt for BSD license.
USING: accessors arrays assocs compiler.cfg.dataflow-analysis
compiler.cfg.instructions compiler.cfg.linearization
-compiler.cfg.stacks.local fry kernel math math.order namespaces
+compiler.cfg.stacks.local kernel math math.order namespaces
sequences ;
QUALIFIED: sets
IN: compiler.cfg.stacks.padding
! See http://factorcode.org/license.txt for BSD license.
USING: accessors combinators combinators.short-circuit
compiler.cfg compiler.cfg.instructions compiler.cfg.rpo
-compiler.cfg.utilities compiler.utilities fry kernel math
-namespaces sequences ;
+compiler.cfg.utilities compiler.utilities kernel math namespaces
+sequences ;
IN: compiler.cfg.tco
! Tail call optimization.
! Copyright (C) 2008, 2010 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: accessors arrays assocs combinators.short-circuit
-compiler.cfg compiler.cfg.instructions compiler.cfg.rpo
-cpu.architecture deques fry hashtables heaps kernel locals
-macros math sequences sets ;
+USING: accessors arrays combinators.short-circuit compiler.cfg
+compiler.cfg.instructions compiler.cfg.rpo cpu.architecture
+deques heaps kernel math sequences sets ;
IN: compiler.cfg.utilities
: block>cfg ( bb -- cfg )
compiler.cfg.hats compiler.cfg.instructions
compiler.cfg.utilities compiler.cfg.value-numbering.graph
compiler.cfg.value-numbering.math
-compiler.cfg.value-numbering.rewrite cpu.architecture fry kernel
+compiler.cfg.value-numbering.rewrite cpu.architecture kernel
make math sequences ;
IN: compiler.cfg.value-numbering.alien
! Copyright (C) 2008, 2011 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: accessors arrays assocs byte-arrays combinators compiler.cfg
-compiler.cfg.comparisons compiler.cfg.instructions
+USING: accessors arrays assocs byte-arrays combinators
+compiler.cfg compiler.cfg.comparisons compiler.cfg.instructions
compiler.cfg.linearization compiler.codegen.gc-maps
-compiler.codegen.labels compiler.codegen.relocation compiler.constants
-cpu.architecture fry generic.parser kernel layouts locals make math
-namespaces parser quotations sequences sequences.generalizations slots
-words ;
+compiler.codegen.labels compiler.codegen.relocation
+compiler.constants cpu.architecture generic.parser kernel
+layouts make math namespaces parser quotations sequences
+sequences.generalizations slots words ;
IN: compiler.codegen
GENERIC: generate-insn ( insn -- )
! Copyright (C) 2011 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
USING: accessors arrays assocs bit-arrays classes.tuple
-compiler.codegen.relocation cpu.architecture fry kernel layouts make math
-math.order namespaces sequences ;
+compiler.codegen.relocation cpu.architecture kernel layouts make
+math namespaces sequences ;
IN: compiler.codegen.gc-maps
SYMBOLS: return-addresses gc-maps ;
! Copyright (C) 2011 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
USING: accessors alien.accessors alien.strings
-compiler.constants kernel make math math.bitwise memoize
-namespaces sequences ;
+compiler.constants kernel make math math.bitwise namespaces
+sequences ;
IN: compiler.codegen.relocation
SYMBOL: extra-offset ! Only used by non-optimizing compiler
! Copyright (C) 2009, 2010 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: assocs combinators compiler.units fry grouping kernel
+USING: assocs combinators compiler.units grouping kernel
namespaces sequences sets stack-checker.dependencies words ;
IN: compiler.crossref
! Copyright (C) 2008 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
USING: arrays assocs combinators concurrency.count-downs
-concurrency.futures fry generalizations kernel macros sequences
+concurrency.futures generalizations kernel sequences
sequences.private sequences.product ;
IN: concurrency.combinators
! Copyright (C) 2008, 2010 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: deques threads kernel arrays sequences timers fry ;
+USING: deques kernel threads timers ;
IN: concurrency.conditions
: notify-1 ( deque -- )
! Copyright (C) 2008 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: dlists kernel math concurrency.promises
-concurrency.mailboxes accessors fry ;
+USING: accessors concurrency.mailboxes concurrency.promises
+kernel math ;
IN: concurrency.count-downs
! http://java.sun.com/j2se/1.5.0/docs/api/java/util/concurrent/CountDownLatch.html
! Copyright (C) 2005 Chris Double. All Rights Reserved.
! Copyright (C) 2018 Alexander Ilin.
! See http://factorcode.org/license.txt for BSD license.
-USING: accessors arrays assocs concurrency.messaging
-continuations destructors fry init io io.encodings.binary
-io.servers io.sockets io.streams.duplex kernel namespaces
-sequences serialize threads ;
+USING: accessors arrays assocs continuations destructors init io
+io.encodings.binary io.servers io.sockets io.streams.duplex
+kernel namespaces sequences serialize threads ;
FROM: concurrency.messaging => send ;
IN: concurrency.distributed
! Copyright (C) 2008, 2010 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: kernel threads boxes accessors fry ;
+USING: accessors boxes kernel threads ;
IN: concurrency.exchangers
! Motivated by
! Copyright (C) 2008 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: dlists kernel threads concurrency.conditions accessors ;
+USING: accessors concurrency.conditions dlists kernel ;
IN: concurrency.flags
TUPLE: flag value threads ;
! Copyright (C) 2005, 2008 Chris Double, Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: concurrency.promises concurrency.mailboxes kernel arrays
-continuations accessors fry ;
+USING: accessors concurrency.mailboxes concurrency.promises
+kernel ;
IN: concurrency.futures
: future ( quot -- future )
! Copyright (C) 2008 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: deques dlists kernel threads continuations math
-concurrency.conditions combinators.short-circuit accessors
-locals ;
+USING: accessors combinators.short-circuit
+concurrency.conditions continuations deques dlists kernel math
+threads ;
IN: concurrency.locks
! Simple critical sections
! Copyright (C) 2010 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: debugger accessors debugger.threads kernel
-concurrency.mailboxes ;
+USING: accessors concurrency.mailboxes debugger debugger.threads
+kernel ;
IN: concurrency.mailboxes.debugger
M: linked-error error.
! Copyright (C) 2005, 2010 Chris Double, Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
USING: accessors concurrency.conditions continuations deques
-destructors dlists fry kernel locals sequences threads
-vocabs.loader ;
+destructors dlists kernel sequences threads vocabs.loader ;
IN: concurrency.mailboxes
TUPLE: mailbox { threads dlist } { data dlist } ;
! Copyright (C) 2005, 2010 Chris Double, Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: kernel kernel.private threads concurrency.mailboxes
-continuations namespaces assocs accessors summary fry ;
+USING: accessors concurrency.mailboxes kernel kernel.private
+namespaces summary threads ;
IN: concurrency.messaging
GENERIC: send ( message thread -- )
! Copyright (C) 2005, 2008 Chris Double, Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: accessors concurrency.mailboxes kernel continuations ;
+USING: accessors concurrency.mailboxes kernel ;
IN: concurrency.promises
TUPLE: promise mailbox ;
! Copyright (C) 2008 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: dlists kernel threads math concurrency.conditions
-continuations accessors summary locals fry ;
+USING: accessors concurrency.conditions continuations dlists
+kernel math summary ;
IN: concurrency.semaphores
TUPLE: semaphore count threads ;
! Copyright (C) 2008 Eric Mertens.
! See http://factorcode.org/license.txt for BSD license.
-USING: accessors assocs fry hashtables kernel locals math
-sequences ;
+USING: accessors assocs hashtables kernel math sequences ;
IN: disjoint-sets
TUPLE: disjoint-set
! Copyright (C) 2007, 2009 Mackenzie Straight, Doug Coleman,
! Slava Pestov, John Benediktsson.
! See http://factorcode.org/license.txt for BSD license.
-USING: accessors combinators combinators.short-circuit deques fry
-hashtables kernel kernel.private math math.order parser search-deques
-sequences vocabs.loader ;
+USING: accessors combinators combinators.short-circuit deques
+hashtables kernel kernel.private math math.order parser
+search-deques sequences vocabs.loader ;
IN: dlists
TUPLE: dlist-link
! Copyright (C) 2006, 2009 Slava Pestov
! See http://factorcode.org/license.txt for BSD license.
-USING: accessors arrays fry kernel locals math math.order
-math.ranges models sequences splitting ;
+USING: accessors arrays kernel math math.order math.ranges
+models sequences splitting ;
IN: documents
: +col ( loc n -- newloc ) [ first2 ] dip + 2array ;
! Copyright (C) 2006, 2009 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: arrays combinators documents fry kernel math sequences
-accessors unicode combinators.short-circuit ;
+USING: accessors arrays combinators documents kernel math
+sequences unicode ;
IN: documents.elements
GENERIC: prev-elt ( loc document elt -- newloc )
! Copyright (C) 2009 Doug Coleman.
! See http://factorcode.org/license.txt for BSD license.
-USING: alien.c-types alien.data namespaces io.binary fry
-kernel math grouping sequences math.bitwise ;
+USING: alien.c-types alien.data grouping io.binary kernel
+math.bitwise namespaces sequences ;
IN: endian
SINGLETONS: big-endian little-endian ;
! Copyright (C) 2015, 2018 John Benediktsson
! See http://factorcode.org/license.txt for BSD license
USING: accessors arrays assocs combinators help.markup kernel
-literals locals math math.order math.parser sequences splitting
-unicode words ;
+literals math math.order math.parser sequences splitting unicode
+words ;
IN: english
<PRIVATE
! Copyright (C) 2008, 2009 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: splitting parser parser.notes compiler.units kernel
-namespaces debugger io.streams.string fry combinators
-effects.parser continuations ;
+USING: combinators compiler.units continuations debugger
+effects.parser io.streams.string kernel namespaces parser
+parser.notes splitting ;
IN: eval
: parse-string ( str -- quot )
! Copyright (C) 2008 John Benediktsson
! See http://factorcode.org/license.txt for BSD license
-USING: accessors arrays assocs calendar calendar.english combinators
-combinators.smart fry generalizations io io.streams.string
-kernel macros math math.functions math.parser namespaces
+USING: accessors arrays assocs calendar calendar.english
+combinators combinators.smart generalizations io
+io.streams.string kernel math math.functions
+math.functions.integer-logs math.parser multiline namespaces
peg.ebnf present prettyprint quotations sequences
-sequences.generalizations strings unicode vectors
-math.functions.integer-logs splitting multiline ;
+sequences.generalizations splitting strings unicode ;
FROM: math.parser.private => format-float ;
IN: formatting
-USING: arrays accessors continuations kernel math system
-sequences namespaces init vocabs combinators ;
+USING: accessors combinators continuations init kernel math
+namespaces sequences system vocabs ;
IN: game.input
SYMBOLS: game-input-backend game-input-opened ;
! Copyright (C) 2010 Anton Gorenko.
! See http://factorcode.org/license.txt for BSD license.
USING: accessors alien.c-types alien.parser arrays ascii
-classes.parser classes.struct combinators combinators.short-circuit
-gobject-introspection.repository gobject-introspection.types kernel
-locals make math.parser namespaces parser sequences
-splitting.monotonic vocabs.parser words words.constant ;
+classes.parser classes.struct combinators
+combinators.short-circuit gobject-introspection.repository
+gobject-introspection.types kernel make math.parser namespaces
+sequences splitting.monotonic vocabs.parser words words.constant ;
IN: gobject-introspection.ffi
: def-c-type ( c-type-name base-c-type -- )
! Copyright (C) 2005, 2010 Slava Pestov, Joe Groff.
! See http://factorcode.org/license.txt for BSD license.
-USING: accessors combinators fry kernel math math.order
-sequences sequences.private ;
+USING: accessors kernel math math.order sequences
+sequences.private ;
IN: grouping
ERROR: groups-error seq n ;
! Copyright (C) 2008 Doug Coleman.
! See http://factorcode.org/license.txt for BSD license.
-USING: accessors alien.c-types alien.data arrays calendar
-calendar.unix classes.struct combinators
-combinators.short-circuit io.backend io.files.info
-io.files.types kernel libc literals math math.bitwise
+USING: accessors alien.data arrays calendar calendar.unix
+classes.struct combinators combinators.short-circuit io.backend
+io.files.info io.files.types kernel libc math math.bitwise
sequences specialized-arrays strings system unix unix.ffi
unix.groups unix.stat unix.time unix.users vocabs ;
IN: io.files.info.unix
'[ 1array stack>message _ _ log-message ]
( message -- ) define-declared ;
-USE: vocabs
-
"logging.parser" require
"logging.analysis" require
! Copyright (C) 2005 Mackenzie Straight.
! See http://factorcode.org/license.txt for BSD license.
USING: accessors alien.private arrays assocs boxes combinators
-continuations continuations.private deques dlists fry hashtables
+continuations continuations.private deques dlists hashtables
heaps init kernel kernel.private math math.order namespaces
quotations sequences strings system ;
IN: threads
! Copyright (C) 2008 Doug Coleman.
! See http://factorcode.org/license.txt for BSD license.
-USING: accessors combinators kernel system unicode io.files
-io.files.info io.files.info.unix generalizations
-strings arrays sequences math.parser unix.groups unix.users
-tools.files.private unix.stat math fry macros combinators.smart
-io tools.files math.order prettyprint ;
+USING: accessors arrays combinators combinators.smart
+io.files.info.unix kernel math math.order math.parser sequences
+strings system tools.files tools.files.private unicode
+unix.groups unix.stat unix.users ;
IN: tools.files.unix
<PRIVATE
! Copyright (C) 2008 Doug Coleman.
! See http://factorcode.org/license.txt for BSD license.
USING: accessors alien.c-types alien.data assocs byte-arrays
-classes.struct combinators continuations fry grouping
+classes.struct combinators continuations grouping
io.encodings.utf8 kernel math math.parser namespaces sequences
strings unix unix.ffi unix.users unix.utilities ;
IN: unix.groups
! Copyright (C) 2008 Doug Coleman.
! See http://factorcode.org/license.txt for BSD license.
-USING: accessors alien alien.c-types alien.strings assocs
-byte-arrays classes.struct combinators combinators.short-circuit
-continuations fry grouping io.encodings.utf8 kernel math
-math.parser namespaces sequences splitting strings system unix
-unix.ffi vocabs ;
+USING: accessors assocs combinators continuations kernel math
+math.parser namespaces sequences strings system unix unix.ffi
+vocabs ;
QUALIFIED: unix.ffi
IN: unix.users
! Copyright (C) 2009 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: assocs fry kernel namespaces memoize init sequences vocabs
+USING: assocs init kernel memoize namespaces sequences vocabs
vocabs.hierarchy vocabs.loader vocabs.metadata vocabs.refresh
words ;
IN: vocabs.cache
! Copyright (C) 2010 Joe Groff.
! See http://factorcode.org/license.txt for BSD license.
-USING: fry globs io.directories io.directories.hierarchy io.files.info
-io.pathnames kernel regexp sequences sets vocabs.loader
-vocabs.metadata ;
+USING: globs io.directories io.directories.hierarchy
+io.files.info io.pathnames kernel regexp sequences sets
+vocabs.loader vocabs.metadata ;
IN: vocabs.metadata.resources
<PRIVATE
! Copyright (C) 2006, 2010 Slava Pestov, Daniel Ehrenberg.
! See http://factorcode.org/license.txt for BSD license.
-USING: accessors arrays assocs kernel kernel.private make math
+USING: accessors arrays assocs kernel kernel.private math
math.order math.private quotations sequences sequences.private
sets sorting words ;
IN: combinators
! Copyright (C) 2010 Daniel Ehrenberg
! Copyright (C) 2005, 2011 John Benediktsson, Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: accessors arrays combinators growable.private hash-sets
-hashtables.private kernel kernel.private math math.private
-sequences sequences.private sets sets.private slots.private
-vectors ;
+USING: accessors arrays growable.private hashtables.private
+kernel kernel.private math math.private sequences
+sequences.private sets sets.private slots.private vectors ;
IN: hash-sets
TUPLE: hash-set