From fe2c3bb2d90c52a70c4736b95988570c1f99b7a5 Mon Sep 17 00:00:00 2001 From: Sam Anklesaria Date: Tue, 4 Aug 2009 17:16:34 -0500 Subject: [PATCH] replaced redundancies --- extra/classes/algebraic/algebraic-docs.factor | 5 ----- extra/classes/algebraic/algebraic.factor | 10 ---------- extra/classes/algebraic/authors.txt | 1 - extra/classes/algebraic/summary.txt | 1 - extra/fonts/syntax/syntax.factor | 4 ++-- extra/sequences/extras/extras.factor | 5 +---- extra/ui/gadgets/layout/layout.factor | 2 +- 7 files changed, 4 insertions(+), 24 deletions(-) delete mode 100644 extra/classes/algebraic/algebraic-docs.factor delete mode 100644 extra/classes/algebraic/algebraic.factor delete mode 100644 extra/classes/algebraic/authors.txt delete mode 100644 extra/classes/algebraic/summary.txt diff --git a/extra/classes/algebraic/algebraic-docs.factor b/extra/classes/algebraic/algebraic-docs.factor deleted file mode 100644 index 4d641a80e6..0000000000 --- a/extra/classes/algebraic/algebraic-docs.factor +++ /dev/null @@ -1,5 +0,0 @@ -USING: help.markup help.syntax ; -IN: classes.algebraic -HELP: DATA: -{ $syntax "DATA: class constructor | constructor arg ... | ... ;" } -{ $description "Creates a haskell style algebraic data type. For each constructor, a seperate tuple is created, and the resulting tuples are added to a union class." } ; \ No newline at end of file diff --git a/extra/classes/algebraic/algebraic.factor b/extra/classes/algebraic/algebraic.factor deleted file mode 100644 index 09ff137797..0000000000 --- a/extra/classes/algebraic/algebraic.factor +++ /dev/null @@ -1,10 +0,0 @@ -USING: classes.parser classes.tuple classes.union kernel peg -peg-lexer sequences ; -IN: classes.algebraic - -ON-BNF: DATA: -tokenizer = -delimit = "|" => [[ drop ignore ]] -tuple = (!("|"|";").)+ => [[ unclip create-class-in [ tuple rot define-tuple-class ] keep ]] -expr = . tuple (delimit tuple)* ";" => [[ first3 swap prefix [ create-class-in ] dip define-union-class ignore ]] -;ON-BNF \ No newline at end of file diff --git a/extra/classes/algebraic/authors.txt b/extra/classes/algebraic/authors.txt deleted file mode 100644 index ce0899f16e..0000000000 --- a/extra/classes/algebraic/authors.txt +++ /dev/null @@ -1 +0,0 @@ -Sam Anklesaria \ No newline at end of file diff --git a/extra/classes/algebraic/summary.txt b/extra/classes/algebraic/summary.txt deleted file mode 100644 index 082638e8d5..0000000000 --- a/extra/classes/algebraic/summary.txt +++ /dev/null @@ -1 +0,0 @@ -Haskell-like algebraic data types \ No newline at end of file diff --git a/extra/fonts/syntax/syntax.factor b/extra/fonts/syntax/syntax.factor index 1cda01da4d..c296dfb3df 100644 --- a/extra/fonts/syntax/syntax.factor +++ b/extra/fonts/syntax/syntax.factor @@ -1,8 +1,8 @@ -USING: accessors arrays classes.algebraic combinators io.styles +USING: accessors arrays variants combinators io.styles kernel math parser sequences fry ; IN: fonts.syntax -DATA: fontname serif | monospace ; +VARIANT: fontname serif monospace ; : install ( object quot -- quot/? ) over [ curry ] [ 2drop [ ] ] if ; diff --git a/extra/sequences/extras/extras.factor b/extra/sequences/extras/extras.factor index 37d1d9487a..d8e5e45d3b 100644 --- a/extra/sequences/extras/extras.factor +++ b/extra/sequences/extras/extras.factor @@ -15,8 +15,5 @@ IN: sequences.extras [ unclip id swap quot call( prev elt -- next ) quot reduce* ] if-empty ; inline recursive :: combos ( list1 list2 -- result ) list2 [ [ 2array ] curry list1 swap map ] map concat ; -: (head-slice) ( seq n -- seq' ) over length over < [ drop ] [ head-slice ] if ; : find-all ( seq quot -- elts ) [ [ length iota ] keep ] dip - [ dupd call( a -- ? ) [ 2array ] [ 2drop f ] if ] curry 2map [ ] filter ; inline - -: empty ( seq -- ) 0 swap shorten ; \ No newline at end of file + [ dupd call( a -- ? ) [ 2array ] [ 2drop f ] if ] curry 2map [ ] filter ; inline \ No newline at end of file diff --git a/extra/ui/gadgets/layout/layout.factor b/extra/ui/gadgets/layout/layout.factor index f155b292e1..309c86c5f6 100644 --- a/extra/ui/gadgets/layout/layout.factor +++ b/extra/ui/gadgets/layout/layout.factor @@ -14,7 +14,7 @@ TUPLE: placeholder < gadget members ; : (remove-members) ( placeholder members -- ) [ [ model? ] filter swap parent>> model>> [ remove-connection ] curry each ] [ nip [ gadget? ] filter [ unparent ] each ] 2bi ; -: remove-members ( placeholder -- ) dup members>> [ drop ] [ [ (remove-members) ] keep empty ] if-empty ; +: remove-members ( placeholder -- ) dup members>> [ drop ] [ [ (remove-members) ] keep delete-all ] if-empty ; : add-member ( obj placeholder -- ) over layout? [ [ gadget>> ] dip ] when members>> push ; : , ( item -- ) make:, ;