extra/cocoa no longer depends on combinators.lib

release
Slava Pestov 2007-10-03 17:34:59 -04:00
parent fb2cd92262
commit b5621a8936
1 changed files with 7 additions and 3 deletions

View File

@ -3,8 +3,7 @@
USING: alien alien.c-types alien.compiler USING: alien alien.c-types alien.compiler
arrays assocs combinators compiler inference.transforms kernel arrays assocs combinators compiler inference.transforms kernel
math namespaces parser prettyprint prettyprint.sections math namespaces parser prettyprint prettyprint.sections
quotations sequences strings words cocoa.runtime io macros quotations sequences strings words cocoa.runtime io macros ;
combinators.lib ;
IN: cocoa.messages IN: cocoa.messages
: make-sender ( method function -- quot ) : make-sender ( method function -- quot )
@ -70,12 +69,17 @@ H{ } clone objc-methods set-global
dup objc-methods get at dup objc-methods get at
[ ] [ "No such method: " swap append throw ] ?if ; [ ] [ "No such method: " swap append throw ] ?if ;
: make-dip ( quot n -- quot' )
dup
\ >r <repetition> >quotation -rot
\ r> <repetition> >quotation 3append ;
: make-prepare-send ( selector method super? -- quot ) : make-prepare-send ( selector method super? -- quot )
[ [
[ \ <super> , ] when [ \ <super> , ] when
swap cache-selector , \ selector , swap cache-selector , \ selector ,
] [ ] make ] [ ] make
swap second length 2 - [ ndip ] 2curry ; swap second length 2 - make-dip ;
MACRO: (send) ( selector super? -- quot ) MACRO: (send) ( selector super? -- quot )
[ [