00:00:00 --- log: started retro/10.05.08 00:26:21 --- quit: docl (Ping timeout: 246 seconds) 00:40:28 --- quit: virl (Remote host closed the connection) 01:18:17 --- join: ^^jason (~dcjkasdja@camb-pppoe-66-225-168-154.vianet.ca) joined #retro 01:18:24 --- part: ^^jason left #retro 03:50:08 --- quit: yiyus (Ping timeout: 265 seconds) 03:53:37 --- join: yiyus (1242712427@je.je.je) joined #retro 05:49:03 --- quit: SimonRC (Ping timeout: 246 seconds) 05:56:11 --- join: SimonRC (~sc@fof.durge.org) joined #retro 07:54:47 --- quit: crc (Ping timeout: 264 seconds) 07:56:30 --- join: crc (~charlesch@184.77.185.20) joined #retro 08:01:10 --- join: docl (~luke@216-161-87-126.ptld.qwest.net) joined #retro 08:01:30 hi docl 08:01:45 good morning crc 08:17:50 --- join: ncv (~neceve@unaffiliated/neceve) joined #retro 11:56:19 --- join: virl (~virl__@chello062178085149.1.12.vie.surfer.at) joined #retro 14:52:11 howdy 15:49:44 --- join: crc_ (~charlesch@184.77.185.20) joined #retro 15:54:25 --- quit: crc (*.net *.split) 15:57:36 --- quit: docl (Ping timeout: 245 seconds) 19:22:38 --- join: docl (~luke@216-161-87-126.ptld.qwest.net) joined #retro 22:36:10 : new: 32 accept tib find if d->xt @ 8 !over 1+ here !swap ` ] ;then drop char: ? emit ; 22:37:53 or rather 22:37:54 : new: 32 accept tib find if d->xt @ here swap :is ` ] ;then drop char: ? emit ; 22:41:21 takes an existing word or stub and gives it a new function 22:45:35 wait a minute, I think I've done this before minus the error checking. 22:45:38 : new: here is ` ] ; 22:46:49 never mind then :) 22:47:30 interesting how vectors can be used for looping or recursion 22:47:48 stub foo 22:48:01 : bar 10 . foo ; 22:48:38 here is foo ] 1- 0; bar ; 22:56:02 another cool trick is changing a vector to a call 22:56:46 this has the effect of making the new def return to be finished by the old one, instead of simply exiting 22:57:11 : foo .s ; 22:57:11 : bar 10 20 30 ; 22:57:11 ' bar is foo 22:57:11 ' foo 0 swap ! 22:58:16 alternately, you could just store bar to one of the first two spaces of foo 22:58:24 ' bar ' foo ! 22:59:55 or ' bar ' foo 1+ ! (if you want to make it easy to toggle between jumping and calling, for some reason) 23:00:43 in that case, store 8 to the first value of foo. 23:00:57 8 ' foo ! 23:01:12 ' foo 8 !swap 23:02:14 of course you can use any ngaro opcode... 23:03:04 to have it place bar's xt on the stack as a literal number (perhaps for use by foo), store 7 at the first value 23:04:29 no wait, that's 1 23:04:40 oh, you can use !' 23:05:02 1 !' foo 23:05:32 7 is explicit call 23:59:59 --- log: ended retro/10.05.08