▁be ▁used ▁to ▁simplify ▁implementation ▁of ▁certain ▁design ▁patterns , ▁such ▁as ▁the ▁observer ▁pattern ▁or ▁the ▁proxy ▁pattern . ▁ ▁The ▁Object ive - C ▁runtime ▁spec ifies ▁a ▁pair ▁of ▁methods ▁in ▁▁ ▁forward ing ▁methods :- ▁( ret val _ t ) forward :( SE L ) sel ▁args :( arg list _ t ) args ; ▁// ▁with ▁G CC ▁- ▁( id ) forward :( SE L ) sel ▁args :( m arg _ list ) args ; ▁// ▁with ▁Ne XT / App le ▁systems ▁ ▁action ▁methods :- ▁( ret val _ t ) perform v :( SE L ) sel ▁args :( arg list _ t ) args ; ▁// ▁with ▁G CC ▁- ▁( id ) perform v :( SE L ) sel ▁args :( m arg _ list ) args ; ▁// ▁with ▁Ne XT / App le ▁systems ▁ ▁An ▁object ▁wish ing ▁to ▁implement ▁forward ing ▁needs ▁only ▁to ▁override ▁the ▁forward ing ▁method ▁with ▁a ▁new ▁method ▁to ▁define ▁the ▁forward ing ▁behavior . ▁The ▁action ▁method ▁ ▁need ▁not ▁be ▁overrid den , ▁as ▁this ▁method ▁merely ▁performs ▁an ▁action ▁based ▁on ▁the ▁selector ▁and ▁arguments . ▁Notice ▁the ▁SE L ▁type , ▁which ▁is ▁the ▁type ▁of ▁messages ▁in ▁Object ive - C . ▁ ▁Note : ▁in ▁Open Step , ▁C ocoa , ▁and ▁GNU step , ▁the ▁commonly ▁used ▁frameworks ▁of ▁Object ive - C , ▁one ▁does ▁not ▁use ▁the ▁ ▁class . ▁The ▁