diff --git a/core/generic/generic.factor b/core/generic/generic.factor index 7cdaba7da5..35cc471033 100755 --- a/core/generic/generic.factor +++ b/core/generic/generic.factor @@ -116,7 +116,7 @@ M: method-spec definition : forget-method ( class generic -- ) check-method [ delete-at* ] with-methods - [ method-word forget ] [ drop ] if ; + [ method-word forget-word ] [ drop ] if ; M: method-spec forget* first2 forget-method ; diff --git a/core/sequences/sequences.factor b/core/sequences/sequences.factor index ee38d30750..7208e05af0 100755 --- a/core/sequences/sequences.factor +++ b/core/sequences/sequences.factor @@ -310,13 +310,11 @@ M: immutable-sequence clone-like like ; r dup length swap r> ; inline - : (each) ( seq quot -- n quot' ) - iterate-seq [ >r nth-unsafe r> call ] 2curry ; inline + >r dup length swap [ nth-unsafe ] curry r> compose ; inline : (collect) ( quot into -- quot' ) - [ >r over slip r> set-nth-unsafe ] 2curry ; inline + [ >r keep r> set-nth-unsafe ] 2curry ; inline : collect ( n quot into -- ) (collect) each-integer ; inline @@ -415,7 +413,7 @@ PRIVATE> >r dup length 1- swap r> (monotonic) all? ; inline : interleave ( seq between quot -- ) - [ (interleave) ] 2curry iterate-seq 2each ; inline + [ (interleave) ] 2curry >r dup length swap r> 2each ; inline : unfold ( pred quot tail -- seq ) V{ } clone [ @@ -695,9 +693,9 @@ PRIVATE> : sequence-hashcode-step ( oldhash newpart -- newhash ) swap [ - dup -2 fixnum-shift >fixnum swap 5 fixnum-shift >fixnum + dup -2 fixnum-shift-fast swap 5 fixnum-shift-fast fixnum+fast fixnum+fast - ] keep bitxor ; inline + ] keep fixnum-bitxor ; inline : sequence-hashcode ( n seq -- x ) 0 -rot [ diff --git a/extra/benchmark/sockets/sockets.factor b/extra/benchmark/sockets/sockets.factor index 36529facaa..6b1908afb1 100755 --- a/extra/benchmark/sockets/sockets.factor +++ b/extra/benchmark/sockets/sockets.factor @@ -34,10 +34,10 @@ IN: benchmark.sockets : socket-benchmarks 10 clients 20 clients - 40 clients - 80 clients - 160 clients - 320 clients - 640 clients ; + 40 clients ; + ! 80 clients + ! 160 clients + ! 320 clients + ! 640 clients ; MAIN: socket-benchmarks diff --git a/extra/sequences/next/next.factor b/extra/sequences/next/next.factor old mode 100644 new mode 100755 index 5483cdff4b..5919fb0701 --- a/extra/sequences/next/next.factor +++ b/extra/sequences/next/next.factor @@ -3,6 +3,8 @@ IN: sequences.next r dup length swap r> ; inline + : (map-next) ( i seq quot -- ) ! this uses O(n) more bounds checks than is really necessary >r [ >r 1+ r> ?nth ] 2keep nth-unsafe r> call ; inline diff --git a/extra/smtp/server/server.factor b/extra/smtp/server/server.factor index eb628156f2..c28ec7745a 100755 --- a/extra/smtp/server/server.factor +++ b/extra/smtp/server/server.factor @@ -28,7 +28,7 @@ ! Connection closed by foreign host. USING: combinators kernel prettyprint io io.timeouts io.server -sequences namespaces io.sockets continuations ; +sequences namespaces io.sockets continuations calendar ; IN: smtp.server SYMBOL: data-mode diff --git a/extra/tools/crossref/crossref-tests.factor b/extra/tools/crossref/crossref-tests.factor index afad3a2a49..b616766597 100755 --- a/extra/tools/crossref/crossref-tests.factor +++ b/extra/tools/crossref/crossref-tests.factor @@ -1,5 +1,5 @@ USING: math kernel sequences io.files tools.crossref tools.test -parser namespaces source-files ; +parser namespaces source-files generic definitions ; IN: temporary GENERIC: foo