Merge branch 'master' of git://factorcode.org/git/factor
commit
726bcb6a0b
|
@ -1,5 +1,5 @@
|
||||||
|
|
||||||
USING: kernel namespaces
|
USING: combinators.short-circuit kernel namespaces
|
||||||
math
|
math
|
||||||
math.constants
|
math.constants
|
||||||
math.functions
|
math.functions
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
|
|
||||||
USING: kernel namespaces
|
USING: combinators.short-circuit kernel namespaces
|
||||||
math
|
math
|
||||||
math.functions
|
math.functions
|
||||||
math.vectors
|
math.vectors
|
||||||
|
|
|
@ -23,35 +23,6 @@ IN: combinators.lib.tests
|
||||||
{ "oof" "bar" } { [ reverse ] [ "x" swap "x" 3append ] } parallel-call
|
{ "oof" "bar" } { [ reverse ] [ "x" swap "x" 3append ] } parallel-call
|
||||||
] unit-test
|
] unit-test
|
||||||
|
|
||||||
! &&
|
|
||||||
|
|
||||||
[ t ] [
|
|
||||||
3 {
|
|
||||||
[ dup number? ] [ dup odd? ] [ dup 0 > ]
|
|
||||||
} 0&& nip
|
|
||||||
] unit-test
|
|
||||||
|
|
||||||
[ f ] [
|
|
||||||
3 {
|
|
||||||
[ dup number? ] [ dup even? ] [ dup 0 > ]
|
|
||||||
} 0&& nip
|
|
||||||
] unit-test
|
|
||||||
|
|
||||||
! ||
|
|
||||||
|
|
||||||
[ t ] [
|
|
||||||
4 {
|
|
||||||
[ dup array? ] [ dup number? ] [ 3 throw ]
|
|
||||||
} 0|| nip
|
|
||||||
] unit-test
|
|
||||||
|
|
||||||
[ f ] [
|
|
||||||
4 {
|
|
||||||
[ dup array? ] [ dup vector? ] [ dup float? ]
|
|
||||||
} 0|| nip
|
|
||||||
] unit-test
|
|
||||||
|
|
||||||
|
|
||||||
{ 1 1 } [
|
{ 1 1 } [
|
||||||
[ even? ] [ drop 1 ] [ drop 2 ] ifte
|
[ even? ] [ drop 1 ] [ drop 2 ] ifte
|
||||||
] must-infer-as
|
] must-infer-as
|
||||||
|
|
|
@ -63,42 +63,42 @@ MACRO: napply ( n -- )
|
||||||
! short circuiting words
|
! short circuiting words
|
||||||
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||||
|
|
||||||
: short-circuit ( quots quot default -- quot )
|
! : short-circuit ( quots quot default -- quot )
|
||||||
1quotation -rot { } map>assoc <reversed> alist>quot ;
|
! 1quotation -rot { } map>assoc <reversed> alist>quot ;
|
||||||
|
|
||||||
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||||
|
|
||||||
MACRO: 0&& ( quots -- quot )
|
! MACRO: 0&& ( quots -- quot )
|
||||||
[ '[ drop @ dup not ] [ drop f ] 2array ] map
|
! [ '[ drop @ dup not ] [ drop f ] 2array ] map
|
||||||
{ [ t ] [ ] } suffix
|
! { [ t ] [ ] } suffix
|
||||||
'[ f , cond ] ;
|
! '[ f , cond ] ;
|
||||||
|
|
||||||
MACRO: 1&& ( quots -- quot )
|
! MACRO: 1&& ( quots -- quot )
|
||||||
[ '[ drop dup @ dup not ] [ drop drop f ] 2array ] map
|
! [ '[ drop dup @ dup not ] [ drop drop f ] 2array ] map
|
||||||
{ [ t ] [ nip ] } suffix
|
! { [ t ] [ nip ] } suffix
|
||||||
'[ f , cond ] ;
|
! '[ f , cond ] ;
|
||||||
|
|
||||||
MACRO: 2&& ( quots -- quot )
|
! MACRO: 2&& ( quots -- quot )
|
||||||
[ '[ drop 2dup @ dup not ] [ drop 2drop f ] 2array ] map
|
! [ '[ drop 2dup @ dup not ] [ drop 2drop f ] 2array ] map
|
||||||
{ [ t ] [ 2nip ] } suffix
|
! { [ t ] [ 2nip ] } suffix
|
||||||
'[ f , cond ] ;
|
! '[ f , cond ] ;
|
||||||
|
|
||||||
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||||
|
|
||||||
MACRO: 0|| ( quots -- quot )
|
! MACRO: 0|| ( quots -- quot )
|
||||||
[ '[ drop @ dup ] [ ] 2array ] map
|
! [ '[ drop @ dup ] [ ] 2array ] map
|
||||||
{ [ drop t ] [ f ] } suffix
|
! { [ drop t ] [ f ] } suffix
|
||||||
'[ f , cond ] ;
|
! '[ f , cond ] ;
|
||||||
|
|
||||||
MACRO: 1|| ( quots -- quot )
|
! MACRO: 1|| ( quots -- quot )
|
||||||
[ '[ drop dup @ dup ] [ nip ] 2array ] map
|
! [ '[ drop dup @ dup ] [ nip ] 2array ] map
|
||||||
{ [ drop drop t ] [ f ] } suffix
|
! { [ drop drop t ] [ f ] } suffix
|
||||||
'[ f , cond ] ;
|
! '[ f , cond ] ;
|
||||||
|
|
||||||
MACRO: 2|| ( quots -- quot )
|
! MACRO: 2|| ( quots -- quot )
|
||||||
[ '[ drop 2dup @ dup ] [ 2nip ] 2array ] map
|
! [ '[ drop 2dup @ dup ] [ 2nip ] 2array ] map
|
||||||
{ [ drop 2drop t ] [ f ] } suffix
|
! { [ drop 2drop t ] [ f ] } suffix
|
||||||
'[ f , cond ] ;
|
! '[ f , cond ] ;
|
||||||
|
|
||||||
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||||
! ifte
|
! ifte
|
||||||
|
|
|
@ -0,0 +1,32 @@
|
||||||
|
|
||||||
|
USING: kernel math tools.test combinators.short-circuit ;
|
||||||
|
|
||||||
|
IN: combinators.short-circuit.tests
|
||||||
|
|
||||||
|
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||||
|
|
||||||
|
: must-be-t ( in -- ) [ t ] swap unit-test ;
|
||||||
|
: must-be-f ( in -- ) [ f ] swap unit-test ;
|
||||||
|
|
||||||
|
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||||
|
|
||||||
|
[ { [ 1 ] [ 2 ] [ 3 ] } 0&& 3 = ] must-be-t
|
||||||
|
[ 3 { [ 0 > ] [ odd? ] [ 2 + ] } 1&& 5 = ] must-be-t
|
||||||
|
[ 10 20 { [ + 0 > ] [ - even? ] [ + ] } 2&& 30 = ] must-be-t
|
||||||
|
|
||||||
|
[ { [ 1 ] [ f ] [ 3 ] } 0&& 3 = ] must-be-f
|
||||||
|
[ 3 { [ 0 > ] [ even? ] [ 2 + ] } 1&& ] must-be-f
|
||||||
|
[ 10 20 { [ + 0 > ] [ - odd? ] [ + ] } 2&& 30 = ] must-be-f
|
||||||
|
|
||||||
|
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||||
|
|
||||||
|
[ { [ 10 0 < ] [ f ] [ "factor" ] } 0|| "factor" = ] must-be-t
|
||||||
|
|
||||||
|
[ 10 { [ odd? ] [ 100 > ] [ 1 + ] } 1|| 11 = ] must-be-t
|
||||||
|
|
||||||
|
[ 10 20 { [ + odd? ] [ + 100 > ] [ + ] } 2|| 30 = ] must-be-t
|
||||||
|
|
||||||
|
[ { [ 10 0 < ] [ f ] [ 0 1 = ] } 0|| ] must-be-f
|
||||||
|
|
||||||
|
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||||
|
|
|
@ -0,0 +1,38 @@
|
||||||
|
|
||||||
|
USING: kernel combinators quotations arrays sequences assocs
|
||||||
|
locals shuffle macros fry newfx ;
|
||||||
|
|
||||||
|
IN: combinators.short-circuit
|
||||||
|
|
||||||
|
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||||
|
|
||||||
|
: short-circuit ( quots quot default -- quot )
|
||||||
|
1quotation -rot { } map>assoc <reversed> alist>quot ;
|
||||||
|
|
||||||
|
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||||
|
|
||||||
|
:: n&&-rewrite ( quots N -- quot )
|
||||||
|
quots
|
||||||
|
[ '[ drop N ndup @ dup not ] [ drop N ndrop f ] 2array ]
|
||||||
|
map
|
||||||
|
[ t ] [ N nnip ] 2array suffix
|
||||||
|
'[ f , cond ] ;
|
||||||
|
|
||||||
|
MACRO: 0&& ( quots -- quot ) 0 n&&-rewrite ;
|
||||||
|
MACRO: 1&& ( quots -- quot ) 1 n&&-rewrite ;
|
||||||
|
MACRO: 2&& ( quots -- quot ) 2 n&&-rewrite ;
|
||||||
|
|
||||||
|
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||||
|
|
||||||
|
:: n||-rewrite ( quots N -- quot )
|
||||||
|
quots
|
||||||
|
[ '[ drop N ndup @ dup ] [ N nnip ] 2array ]
|
||||||
|
map
|
||||||
|
[ drop N ndrop t ] [ f ] 2array suffix
|
||||||
|
'[ f , cond ] ;
|
||||||
|
|
||||||
|
MACRO: 0|| ( quots -- quot ) 0 n||-rewrite ;
|
||||||
|
MACRO: 1|| ( quots -- quot ) 1 n||-rewrite ;
|
||||||
|
MACRO: 2|| ( quots -- quot ) 2 n||-rewrite ;
|
||||||
|
|
||||||
|
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
@ -0,0 +1,32 @@
|
||||||
|
|
||||||
|
USING: kernel math tools.test combinators.short-circuit.smart ;
|
||||||
|
|
||||||
|
IN: combinators.short-circuit.smart.tests
|
||||||
|
|
||||||
|
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||||
|
|
||||||
|
: must-be-t ( in -- ) [ t ] swap unit-test ;
|
||||||
|
: must-be-f ( in -- ) [ f ] swap unit-test ;
|
||||||
|
|
||||||
|
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||||
|
|
||||||
|
[ { [ 1 ] [ 2 ] [ 3 ] } && 3 = ] must-be-t
|
||||||
|
[ 3 { [ 0 > ] [ odd? ] [ 2 + ] } && 5 = ] must-be-t
|
||||||
|
[ 10 20 { [ + 0 > ] [ - even? ] [ + ] } && 30 = ] must-be-t
|
||||||
|
|
||||||
|
[ { [ 1 ] [ f ] [ 3 ] } && 3 = ] must-be-f
|
||||||
|
[ 3 { [ 0 > ] [ even? ] [ 2 + ] } && ] must-be-f
|
||||||
|
[ 10 20 { [ + 0 > ] [ - odd? ] [ + ] } && 30 = ] must-be-f
|
||||||
|
|
||||||
|
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||||
|
|
||||||
|
[ { [ 10 0 < ] [ f ] [ "factor" ] } || "factor" = ] must-be-t
|
||||||
|
|
||||||
|
[ 10 { [ odd? ] [ 100 > ] [ 1 + ] } || 11 = ] must-be-t
|
||||||
|
|
||||||
|
[ 10 20 { [ + odd? ] [ + 100 > ] [ + ] } || 30 = ] must-be-t
|
||||||
|
|
||||||
|
[ { [ 10 0 < ] [ f ] [ 0 1 = ] } || ] must-be-f
|
||||||
|
|
||||||
|
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||||
|
|
|
@ -0,0 +1,11 @@
|
||||||
|
|
||||||
|
USING: kernel sequences math inference accessors macros
|
||||||
|
combinators.short-circuit ;
|
||||||
|
|
||||||
|
IN: combinators.short-circuit.smart
|
||||||
|
|
||||||
|
MACRO: && ( quots -- quot )
|
||||||
|
dup first infer [ in>> ] [ out>> ] bi - 1+ n&&-rewrite ;
|
||||||
|
|
||||||
|
MACRO: || ( quots -- quot )
|
||||||
|
dup first infer [ in>> ] [ out>> ] bi - 1+ n||-rewrite ;
|
|
@ -1,5 +1,5 @@
|
||||||
|
|
||||||
USING: kernel
|
USING: combinators.short-circuit kernel
|
||||||
combinators
|
combinators
|
||||||
vectors
|
vectors
|
||||||
sequences
|
sequences
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
|
|
||||||
USING: kernel combinators sequences sets math threads namespaces continuations
|
USING: kernel combinators sequences sets math threads namespaces continuations
|
||||||
debugger io io.sockets unicode.case accessors destructors
|
debugger io io.sockets unicode.case accessors destructors
|
||||||
combinators.cleave combinators.lib
|
combinators.cleave combinators.lib combinators.short-circuit
|
||||||
newfx fry
|
newfx fry
|
||||||
dns dns.util dns.misc ;
|
dns dns.util dns.misc ;
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
! Copyright (C) 2008 Doug Coleman.
|
! Copyright (C) 2008 Doug Coleman.
|
||||||
! See http://factorcode.org/license.txt for BSD license.
|
! See http://factorcode.org/license.txt for BSD license.
|
||||||
USING: accessors combinators io io.encodings.8-bit
|
USING: combinators.short-circuit accessors combinators io io.encodings.8-bit
|
||||||
io.encodings io.encodings.binary io.encodings.utf8 io.files
|
io.encodings io.encodings.binary io.encodings.utf8 io.files
|
||||||
io.sockets kernel math.parser namespaces sequences
|
io.sockets kernel math.parser namespaces sequences
|
||||||
ftp io.unix.launcher.parser unicode.case splitting assocs
|
ftp io.unix.launcher.parser unicode.case splitting assocs
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
USING: accessors namespaces combinators.lib kernel
|
USING: accessors namespaces combinators.lib kernel
|
||||||
db.tuples db.types
|
db.tuples db.types
|
||||||
furnace.auth furnace.sessions furnace.cache ;
|
furnace.auth furnace.sessions furnace.cache
|
||||||
|
combinators.short-circuit ;
|
||||||
|
|
||||||
IN: furnace.auth.login.permits
|
IN: furnace.auth.login.permits
|
||||||
|
|
||||||
TUPLE: permit < server-state session uid ;
|
TUPLE: permit < server-state session uid ;
|
||||||
|
|
|
@ -7,7 +7,7 @@ html.templates.chloe
|
||||||
locals
|
locals
|
||||||
http.server
|
http.server
|
||||||
http.server.filters
|
http.server.filters
|
||||||
furnace ;
|
furnace combinators.short-circuit ;
|
||||||
IN: furnace.boilerplate
|
IN: furnace.boilerplate
|
||||||
|
|
||||||
TUPLE: boilerplate < filter-responder template init ;
|
TUPLE: boilerplate < filter-responder template init ;
|
||||||
|
|
|
@ -7,7 +7,7 @@ io.servers.connection
|
||||||
db db.tuples db.types
|
db db.tuples db.types
|
||||||
http http.server http.server.dispatchers http.server.filters
|
http http.server http.server.dispatchers http.server.filters
|
||||||
html.elements
|
html.elements
|
||||||
furnace furnace.cache ;
|
furnace furnace.cache combinators.short-circuit ;
|
||||||
IN: furnace.sessions
|
IN: furnace.sessions
|
||||||
|
|
||||||
TUPLE: session < server-state namespace user-agent client changed? ;
|
TUPLE: session < server-state namespace user-agent client changed? ;
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
USING: math math.order math.parser kernel combinators.lib
|
USING: combinators.short-circuit math math.order math.parser kernel combinators.lib
|
||||||
sequences sequences.deep peg peg.parsers assocs arrays
|
sequences sequences.deep peg peg.parsers assocs arrays
|
||||||
hashtables strings unicode.case namespaces ascii ;
|
hashtables strings unicode.case namespaces ascii ;
|
||||||
IN: http.parsers
|
IN: http.parsers
|
||||||
|
|
|
@ -2,7 +2,7 @@ USING: kernel words inspector slots quotations sequences assocs
|
||||||
math arrays inference effects shuffle continuations debugger
|
math arrays inference effects shuffle continuations debugger
|
||||||
classes.tuple namespaces vectors bit-arrays byte-arrays strings
|
classes.tuple namespaces vectors bit-arrays byte-arrays strings
|
||||||
sbufs math.functions macros sequences.private combinators
|
sbufs math.functions macros sequences.private combinators
|
||||||
mirrors combinators.lib ;
|
mirrors combinators.lib combinators.short-circuit ;
|
||||||
IN: inverse
|
IN: inverse
|
||||||
|
|
||||||
TUPLE: fail ;
|
TUPLE: fail ;
|
||||||
|
|
|
@ -6,7 +6,7 @@ quotations combinators combinators.lib logging calendar assocs
|
||||||
fry accessors arrays io io.sockets io.encodings.ascii
|
fry accessors arrays io io.sockets io.encodings.ascii
|
||||||
io.sockets.secure io.files io.streams.duplex io.timeouts
|
io.sockets.secure io.files io.streams.duplex io.timeouts
|
||||||
io.encodings threads concurrency.combinators
|
io.encodings threads concurrency.combinators
|
||||||
concurrency.semaphores ;
|
concurrency.semaphores combinators.short-circuit ;
|
||||||
IN: io.servers.connection
|
IN: io.servers.connection
|
||||||
|
|
||||||
TUPLE: threaded-server
|
TUPLE: threaded-server
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
USING: sequences kernel math locals math.order math.ranges
|
USING: sequences kernel math locals math.order math.ranges
|
||||||
accessors combinators.lib arrays namespaces combinators ;
|
accessors combinators.lib arrays namespaces combinators
|
||||||
|
combinators.short-circuit ;
|
||||||
IN: lcs
|
IN: lcs
|
||||||
|
|
||||||
<PRIVATE
|
<PRIVATE
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
USING: kernel peg sequences arrays strings combinators.lib
|
USING: kernel peg sequences arrays strings combinators.lib
|
||||||
namespaces combinators math locals locals.private locals.backend accessors
|
namespaces combinators math locals locals.private locals.backend accessors
|
||||||
vectors syntax lisp.parser assocs parser sequences.lib words
|
vectors syntax lisp.parser assocs parser sequences.lib words
|
||||||
quotations fry lists inspector ;
|
quotations fry lists inspector combinators.short-circuit ;
|
||||||
IN: lisp
|
IN: lisp
|
||||||
|
|
||||||
DEFER: convert-form
|
DEFER: convert-form
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
! Copyright (C) 2008 James Cash
|
! Copyright (C) 2008 James Cash
|
||||||
! See http://factorcode.org/license.txt for BSD license.
|
! See http://factorcode.org/license.txt for BSD license.
|
||||||
USING: kernel peg peg.ebnf peg.expr math.parser sequences arrays strings
|
USING: kernel peg peg.ebnf peg.expr math.parser sequences arrays strings
|
||||||
combinators.lib math fry accessors lists ;
|
combinators.lib math fry accessors lists combinators.short-circuit ;
|
||||||
|
|
||||||
IN: lisp.parser
|
IN: lisp.parser
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
|
|
||||||
USING: kernel sequences quotations assocs math math.parser
|
USING: kernel sequences quotations assocs math math.parser
|
||||||
combinators.lib vars lsys.strings ;
|
combinators.lib vars lsys.strings combinators.short-circuit ;
|
||||||
|
|
||||||
IN: lsys.strings.interpret
|
IN: lsys.strings.interpret
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
|
|
||||||
USING: kernel sbufs strings sequences assocs math
|
USING: kernel sbufs strings sequences assocs math
|
||||||
combinators.lib vars lsys.strings ;
|
combinators.lib vars lsys.strings combinators.short-circuit ;
|
||||||
|
|
||||||
IN: lsys.strings.rewrite
|
IN: lsys.strings.rewrite
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
|
|
||||||
USING: kernel sequences math combinators.lib ;
|
USING: kernel sequences math combinators.lib combinators.short-circuit ;
|
||||||
|
|
||||||
IN: lsys.strings
|
IN: lsys.strings
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
USING: kernel math vectors sequences opengl.gl math.vectors math.order
|
USING: kernel math vectors sequences opengl.gl math.vectors math.order
|
||||||
math.matrices vars opengl self pos ori turtle lsys.tortoise
|
math.matrices vars opengl self pos ori turtle lsys.tortoise
|
||||||
|
|
||||||
lsys.strings.interpret ;
|
lsys.strings.interpret combinators.short-circuit ;
|
||||||
|
|
||||||
! lsys.strings
|
! lsys.strings
|
||||||
|
|
||||||
|
|
|
@ -16,7 +16,8 @@ USING: kernel namespaces threads math math.order math.vectors
|
||||||
vars rewrite-closures
|
vars rewrite-closures
|
||||||
self pos ori turtle opengl.camera
|
self pos ori turtle opengl.camera
|
||||||
lsys.tortoise lsys.tortoise.graphics
|
lsys.tortoise lsys.tortoise.graphics
|
||||||
lsys.strings.rewrite lsys.strings.interpret ;
|
lsys.strings.rewrite lsys.strings.interpret
|
||||||
|
combinators.short-circuit ;
|
||||||
|
|
||||||
! lsys.strings
|
! lsys.strings
|
||||||
! lsys.strings.rewrite
|
! lsys.strings.rewrite
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
! Copyright (c) 2007 Aaron Schaefer.
|
! Copyright (c) 2007 Aaron Schaefer.
|
||||||
! See http://factorcode.org/license.txt for BSD license.
|
! See http://factorcode.org/license.txt for BSD license.
|
||||||
USING: combinators.lib kernel math math.functions math.parser namespaces
|
USING: combinators.lib kernel math math.functions math.parser namespaces
|
||||||
sequences splitting grouping sequences.lib ;
|
sequences splitting grouping sequences.lib
|
||||||
|
combinators.short-circuit ;
|
||||||
IN: math.text.english
|
IN: math.text.english
|
||||||
|
|
||||||
<PRIVATE
|
<PRIVATE
|
||||||
|
|
|
@ -3,7 +3,8 @@
|
||||||
USING: kernel compiler.units parser words arrays strings math.parser sequences
|
USING: kernel compiler.units parser words arrays strings math.parser sequences
|
||||||
quotations vectors namespaces math assocs continuations peg
|
quotations vectors namespaces math assocs continuations peg
|
||||||
peg.parsers unicode.categories multiline combinators.lib
|
peg.parsers unicode.categories multiline combinators.lib
|
||||||
splitting accessors effects sequences.deep peg.search ;
|
splitting accessors effects sequences.deep peg.search
|
||||||
|
combinators.short-circuit ;
|
||||||
IN: peg.ebnf
|
IN: peg.ebnf
|
||||||
|
|
||||||
TUPLE: ebnf-non-terminal symbol ;
|
TUPLE: ebnf-non-terminal symbol ;
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
! Copyright (c) 2007 Aaron Schaefer.
|
! Copyright (c) 2007 Aaron Schaefer.
|
||||||
! See http://factorcode.org/license.txt for BSD license.
|
! See http://factorcode.org/license.txt for BSD license.
|
||||||
USING: arrays combinators.lib kernel math math.ranges namespaces sequences
|
USING: arrays combinators.lib kernel math math.ranges namespaces sequences
|
||||||
sorting ;
|
sorting combinators.short-circuit ;
|
||||||
IN: project-euler.014
|
IN: project-euler.014
|
||||||
|
|
||||||
! http://projecteuler.net/index.php?section=problems&id=14
|
! http://projecteuler.net/index.php?section=problems&id=14
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
! Copyright (c) 2007 Aaron Schaefer.
|
! Copyright (c) 2007 Aaron Schaefer.
|
||||||
! See http://factorcode.org/license.txt for BSD license.
|
! See http://factorcode.org/license.txt for BSD license.
|
||||||
USING: kernel math.ranges math.text.english sequences sequences.lib strings
|
USING: kernel math.ranges math.text.english sequences sequences.lib strings
|
||||||
ascii ;
|
ascii combinators.short-circuit ;
|
||||||
IN: project-euler.017
|
IN: project-euler.017
|
||||||
|
|
||||||
! http://projecteuler.net/index.php?section=problems&id=17
|
! http://projecteuler.net/index.php?section=problems&id=17
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
! Copyright (c) 2007 Aaron Schaefer.
|
! Copyright (c) 2007 Aaron Schaefer.
|
||||||
! See http://factorcode.org/license.txt for BSD license.
|
! See http://factorcode.org/license.txt for BSD license.
|
||||||
USING: combinators.lib kernel math math.functions math.ranges namespaces
|
USING: combinators.lib kernel math math.functions math.ranges namespaces
|
||||||
project-euler.common sequences sequences.lib ;
|
project-euler.common sequences sequences.lib
|
||||||
|
combinators.short-circuit ;
|
||||||
IN: project-euler.021
|
IN: project-euler.021
|
||||||
|
|
||||||
! http://projecteuler.net/index.php?section=problems&id=21
|
! http://projecteuler.net/index.php?section=problems&id=21
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
! Copyright (c) 2008 Aaron Schaefer.
|
! Copyright (c) 2008 Aaron Schaefer.
|
||||||
! See http://factorcode.org/license.txt for BSD license.
|
! See http://factorcode.org/license.txt for BSD license.
|
||||||
USING: combinators.lib kernel math.parser math.ranges project-euler.common
|
USING: combinators.lib kernel math.parser math.ranges project-euler.common
|
||||||
sequences ;
|
sequences combinators.short-circuit ;
|
||||||
IN: project-euler.036
|
IN: project-euler.036
|
||||||
|
|
||||||
! http://projecteuler.net/index.php?section=problems&id=36
|
! http://projecteuler.net/index.php?section=problems&id=36
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
! Copyright (c) 2008 Aaron Schaefer.
|
! Copyright (c) 2008 Aaron Schaefer.
|
||||||
! See http://factorcode.org/license.txt for BSD license.
|
! See http://factorcode.org/license.txt for BSD license.
|
||||||
USING: combinators.lib hashtables kernel math math.combinatorics math.parser
|
USING: combinators.lib hashtables kernel math math.combinatorics math.parser
|
||||||
math.ranges project-euler.common sequences sequences.lib sorting sets ;
|
math.ranges project-euler.common sequences sequences.lib sorting
|
||||||
|
sets combinators.short-circuit ;
|
||||||
IN: project-euler.043
|
IN: project-euler.043
|
||||||
|
|
||||||
! http://projecteuler.net/index.php?section=problems&id=43
|
! http://projecteuler.net/index.php?section=problems&id=43
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
! Copyright (c) 2008 Aaron Schaefer.
|
! Copyright (c) 2008 Aaron Schaefer.
|
||||||
! See http://factorcode.org/license.txt for BSD license.
|
! See http://factorcode.org/license.txt for BSD license.
|
||||||
USING: combinators.lib kernel math project-euler.common sequences sorting ;
|
USING: combinators.lib kernel math project-euler.common sequences
|
||||||
|
sorting combinators.short-circuit ;
|
||||||
IN: project-euler.052
|
IN: project-euler.052
|
||||||
|
|
||||||
! http://projecteuler.net/index.php?section=problems&id=52
|
! http://projecteuler.net/index.php?section=problems&id=52
|
||||||
|
|
|
@ -17,7 +17,7 @@ USING: definitions io io.files kernel math math.parser project-euler.ave-time
|
||||||
project-euler.052 project-euler.053 project-euler.056 project-euler.059
|
project-euler.052 project-euler.053 project-euler.056 project-euler.059
|
||||||
project-euler.067 project-euler.075 project-euler.079 project-euler.092
|
project-euler.067 project-euler.075 project-euler.079 project-euler.092
|
||||||
project-euler.097 project-euler.134 project-euler.169 project-euler.173
|
project-euler.097 project-euler.134 project-euler.169 project-euler.173
|
||||||
project-euler.175 ;
|
project-euler.175 combinators.short-circuit ;
|
||||||
IN: project-euler
|
IN: project-euler
|
||||||
|
|
||||||
<PRIVATE
|
<PRIVATE
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
USING: arrays combinators kernel lists math math.parser
|
USING: arrays combinators kernel lists math math.parser
|
||||||
namespaces parser lexer parser-combinators parser-combinators.simple
|
namespaces parser lexer parser-combinators parser-combinators.simple
|
||||||
promises quotations sequences combinators.lib strings math.order
|
promises quotations sequences combinators.lib strings math.order
|
||||||
assocs prettyprint.backend memoize unicode.case unicode.categories ;
|
assocs prettyprint.backend memoize unicode.case unicode.categories
|
||||||
|
combinators.short-circuit ;
|
||||||
USE: io
|
USE: io
|
||||||
IN: regexp
|
IN: regexp
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,8 @@
|
||||||
USING: kernel parser words continuations namespaces debugger
|
USING: kernel parser words continuations namespaces debugger
|
||||||
sequences combinators splitting prettyprint
|
sequences combinators splitting prettyprint
|
||||||
system io io.files io.launcher io.encodings.utf8 io.pipes sequences.deep
|
system io io.files io.launcher io.encodings.utf8 io.pipes sequences.deep
|
||||||
accessors multi-methods newfx shell.parser ;
|
accessors multi-methods newfx shell.parser
|
||||||
|
combinators.short-circuit ;
|
||||||
|
|
||||||
IN: shell
|
IN: shell
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
USING: unicode.categories kernel math combinators splitting
|
USING: combinators.short-circuit unicode.categories kernel math combinators splitting
|
||||||
sequences math.parser io.files io assocs arrays namespaces
|
sequences math.parser io.files io assocs arrays namespaces
|
||||||
math.ranges unicode.normalize values io.encodings.ascii
|
math.ranges unicode.normalize values io.encodings.ascii
|
||||||
unicode.syntax unicode.data compiler.units alien.syntax sets
|
unicode.syntax unicode.data compiler.units alien.syntax sets
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
USING: sequences io.files io.encodings.ascii kernel values
|
USING: combinators.short-circuit sequences io.files io.encodings.ascii kernel values
|
||||||
splitting accessors math.parser ascii io assocs strings math
|
splitting accessors math.parser ascii io assocs strings math
|
||||||
namespaces sorting combinators math.order arrays
|
namespaces sorting combinators math.order arrays
|
||||||
unicode.normalize unicode.data combinators.lib locals
|
unicode.normalize unicode.data combinators.lib locals
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
USING: assocs math kernel sequences io.files hashtables
|
USING: combinators.short-circuit assocs math kernel sequences io.files hashtables
|
||||||
quotations splitting grouping arrays math.parser hash2 math.order
|
quotations splitting grouping arrays math.parser hash2 math.order
|
||||||
byte-arrays words namespaces words compiler.units parser
|
byte-arrays words namespaces words compiler.units parser
|
||||||
io.encodings.ascii values interval-maps ascii sets
|
io.encodings.ascii values interval-maps ascii sets
|
||||||
|
|
|
@ -2,7 +2,8 @@ IN: xmode.marker
|
||||||
USING: kernel namespaces xmode.rules xmode.tokens
|
USING: kernel namespaces xmode.rules xmode.tokens
|
||||||
xmode.marker.state xmode.marker.context xmode.utilities
|
xmode.marker.state xmode.marker.context xmode.utilities
|
||||||
xmode.catalog sequences math assocs combinators combinators.lib
|
xmode.catalog sequences math assocs combinators combinators.lib
|
||||||
strings regexp splitting parser-combinators ascii unicode.case ;
|
strings regexp splitting parser-combinators ascii unicode.case
|
||||||
|
combinators.short-circuit ;
|
||||||
|
|
||||||
! Based on org.gjt.sp.jedit.syntax.TokenMarker
|
! Based on org.gjt.sp.jedit.syntax.TokenMarker
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue