diff --git a/extra/rosetta-code/ordered-words/ordered-words.factor b/extra/rosetta-code/ordered-words/ordered-words.factor index 95b6d3f42c..e0ca3cd140 100644 --- a/extra/rosetta-code/ordered-words/ordered-words.factor +++ b/extra/rosetta-code/ordered-words/ordered-words.factor @@ -26,12 +26,8 @@ MEMO: word-list ( -- seq ) : ordered-word? ( word -- ? ) >lower 2 [ first2 <= ] all? ; -: filter-longest-words ( seq -- seq' ) - dup [ length ] [ max ] map-reduce - '[ length _ = ] filter ; - : ordered-words-main ( -- ) word-list [ ordered-word? ] filter - filter-longest-words [ print ] each ; + all-longest [ print ] each ; MAIN: ordered-words-main diff --git a/extra/sequences/modified/modified.factor b/extra/sequences/modified/modified.factor index 9205b91c4a..aa4cb57bb5 100644 --- a/extra/sequences/modified/modified.factor +++ b/extra/sequences/modified/modified.factor @@ -51,7 +51,7 @@ M:: offset modified-set-nth ( elt n seq -- ) TUPLE: summed < modified seqs ; C: summed -M: summed length seqs>> [ length ] [ max ] map-reduce ; +M: summed length seqs>> longest length ;