]> gitweb.factorcode.org Git - factor.git/commitdiff
cocoa.messages: cleanup
authorSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Tue, 24 Mar 2009 00:25:17 +0000 (19:25 -0500)
committerSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Tue, 24 Mar 2009 00:25:17 +0000 (19:25 -0500)
basis/cocoa/messages/messages.factor

index f71b9f3f56a7f6987f36421caead7c646010699e..65bb2c02ef19fd372b1f9d56f01ea4c7498837cb 100644 (file)
@@ -22,15 +22,13 @@ SYMBOL: super-message-senders
 message-senders [ H{ } clone ] initialize
 super-message-senders [ H{ } clone ] initialize
 
-: cache-stub ( method function hash -- )
-    [
-        over get [ 2drop ] [ over [ sender-stub ] dip set ] if
-    ] bind ;
+: cache-stub ( method assoc function -- )
+    '[ _ sender-stub ] cache drop ;
 
 : cache-stubs ( method -- )
-    dup
-    "objc_msgSendSuper" super-message-senders get cache-stub
-    "objc_msgSend" message-senders get cache-stub ;
+    [ super-message-senders get "objc_msgSendSuper" cache-stub ]
+    [ message-senders get "objc_msgSend" cache-stub ]
+    bi ;
 
 : <super> ( receiver -- super )
     "objc-super" <c-object> [