00:00:00 --- log: started retro/06.11.27 04:14:09 --- quit: erider (Read error: 110 (Connection timed out)) 04:14:54 --- join: erider (n=erider@unaffiliated/erider) joined #retro 05:51:04 --- quit: Cheery (Read error: 104 (Connection reset by peer)) 06:06:09 --- join: Cheery (n=Cheery@a81-197-54-146.elisa-laajakaista.fi) joined #retro 06:28:06 --- nick: Raystm2- -> nanstm 06:32:11 --- join: Ray_work (n=Raystm2@199.227.227.26) joined #retro 06:33:50 Good morning! 08:20:56 good morning 08:41:06 --- join: virl (n=virl@chello062178085149.1.12.vie.surfer.at) joined #retro 08:56:37 --- quit: erider (Read error: 54 (Connection reset by peer)) 08:58:06 hi lukeparrish :) 09:07:57 --- join: erider (n=erider@unaffiliated/erider) joined #retro 09:30:54 erider: I look forwards to your work on the netclient stuff continuing. I bet the same code will be useful for a mud server. 10:04:38 or a mud client :) 11:00:22 --- join: Snoopy42_ (i=snoopy_1@dslb-084-058-098-051.pools.arcor-ip.net) joined #retro 11:05:03 how is crc newest creation going on? 11:07:38 --- quit: Snoopy42 (Read error: 145 (Connection timed out)) 11:07:53 --- nick: Snoopy42_ -> Snoopy42 11:23:14 --- join: swalters (n=swalters@169.139.217.100) joined #retro 11:31:06 virl: it's coming very well. I'm certainly impressed :) 11:37:24 referring to toka here 11:39:42 it's primitives are written in c, very readably, and new words are made with pairs of [ ] brackets. this looks a little like lisp, particularly when they are nested. 11:40:06 after making a word with [ ] you give it a name with "is" 11:40:19 [ bar baz ] is foo 11:41:01 if you don't need to keep it, you can easily leave the word anonymous. 11:41:12 10 [ i . ] iterate 11:42:16 if you type gc it cleans up anonymous defines, which are initially made in a clearable temporary storage space. 11:49:36 well I haven't read much about toka, I only noticed that it looks familiar to retro 11:50:38 ah.. fine, it has an useable gc? that's great. 11:51:08 yeah, it's really cool 11:52:06 --- join: rabbitwhite (n=Miranda@136.160.196.114) joined #retro 11:52:41 I hated it that gc languages normally don't have a direct access to the GC. 11:55:57 I think this indirect GCs which are used today in most languages are more interesting when they are put into a system which can't be turned off. but into computer programs the directly memory control is something which I find more interesting. 12:28:33 --- quit: swalters ("User disconnected") 12:34:45 capsaicin, hmm a nice substance, anybody eating chillis for breakfast? 12:35:11 * lukeparrish had oatmeal 12:36:22 * lukeparrish was just telling Ray_work about stevia in #keow 12:36:42 it's a very sweet powder, handy for diabetics 12:36:48 the cereals? 12:36:59 OH I LOVE STEVIA 12:37:02 :) 12:37:03 i use it everyday! 12:37:10 works great, doesn't it? 12:37:26 yeah . but you have to learn what things it tastes better in 12:37:33 the cheapest place I've seen it is at vitaglo 12:37:35 true 12:37:44 some things it tastes different from sugar in 12:37:46 vitaglo .. hmm. 12:38:06 http://search.store.yahoo.com/cgi-bin/nsearch?catalog=vitaglo&query=stevia&x=0&y=0 12:38:07 A friend of mine makes a hot-chocolate subtitute from cocoa, soy milk, and stevia. 12:38:15 yeah like it doesnt work at all if you try to put it in chai. least it doesnt for me 12:38:46 you have to use the white powder stuff, not the green herbal powder 12:38:58 yeah , thats what i use 12:39:00 the white 12:39:19 otherwise it's just ground up herbal tea :) 12:39:39 quartus: how is it 12:39:45 Passable. 12:39:54 White powdery stevia. 12:42:50 you only need very small amounts. one handy way to deliver it is a salt shaker. 12:43:43 one of my bottles has it in tablets 12:45:05 strange that they aren't allowed to label it as a sweetener, so they sell it as a suppliment. 12:45:09 perfect sweetness every time 12:45:12 yeah 13:20:49 hmm, 3 liters icetea a day 7 years, bah I hope that I'm not a diabetic. 13:26:20 that's disgusting, you probably will be one if you keep doing that 13:31:35 --- quit: erider (Operation timed out) 13:33:29 yeah, I know I since two years I try to stop. 13:33:46 but it's like smoking I think 13:35:04 it's interesting, that I need to keep my mouth tasty. water tastes so boring. 13:37:46 and when I stop, how long can I keep away from being a diabetic? perhaps my body so in a bad condition that it's not far away. 13:41:03 --- join: erider (n=erider@unaffiliated/erider) joined #retro 13:45:55 --- quit: Cheery ("Download Gaim: http://gaim.sourceforge.net/") 13:56:11 --- quit: rabbitwhite (Read error: 104 (Connection reset by peer)) 14:28:24 crc: ping 14:34:18 good evening 14:34:37 hi 14:39:24 crc question? I'm writing a bot in forth. My bot can currently connect to a channel and display a message but what I want it to be able to is to parse the channel for hello and response with hello world. I have thought of a few solutions but none of them seem to work. The bot currently reads one character at a time but it reads everything and not just the text from the channel. I think I need it to read only from the last : on and that would give my t 14:39:24 he text from the channel only. However I'm having some issues testing this without flooding the channel. 14:41:34 crc: I'm wondering if I can use the lnparse to solve this problem 14:41:51 probably not, at least directly 14:42:17 parse works off the input stream, so you'd have to work around that 14:43:18 one idea would be to copy off a line into a buffer, then eval that buffer. Write a custom error handler, and then recognize a few messages 14:43:28 I think I explored this once before.... 14:44:43 well I remove the need to use "here" and the allocation of 2040 14:44:52 removed* 14:46:26 do you think making a buffer and then parse the buffer later would do the trick 14:50:08 : foo 72 net.read =if response: hello world then ; 14:51:20 crc: I tried something like this which my plan was to just test for one character but that was not a great idea :/ 14:53:02 crc: I figured I can test for 72 which is H and if I can get that then I could make an array and loop thru it 14:59:44 crc: if I do the buffer that buffer needs to be huge because the server dumps a lot of stuff 15:01:43 crc do you think I can loop net.read and test each character until it gets to the last : and start to display that text? 15:02:08 I was too busy to read any of this today. :( 15:02:14 I'll have to catch up from home. 15:02:17 the buffer needs to be no larger than 512 bytes 15:02:24 okay. 15:02:26 :) 15:02:53 RFC 1459, section 2.3.0 15:03:33 got it. What is it? 15:03:35 :) 15:03:40 oh never mind. 15:03:54 RFC 1459 documents the IRC protocol 15:03:57 :) 15:04:01 thanks crc. 15:04:12 * Ray_work very annoingly playfull just now. 15:05:13 crc: do you think that would be a better solution or test each character 15:05:55 I prefer to evaluate the buffer 15:06:51 ok do you think the way you allocated space is the way to go? 15:06:59 with 'here' 15:07:09 it works nicely 15:07:25 I like floating buffers like pad 15:07:42 ok I will reimplemented mpad 15:08:01 bye going home 15:08:13 --- quit: Ray_work (Read error: 104 (Connection reset by peer)) 15:08:17 Ray_work: talk to you later 15:08:26 oops missed him 15:13:10 crc: ping 15:13:36 I am still here 15:13:54 can you explain this section of code? 15:13:57 variable off 15:13:57 : mpad here 2048 + ; 15:13:57 : process drop mpad off @ type cr 0 off ! ; 15:13:57 : copy dup 32 :: net.read dup 10 =if process ;; then copy ; 15:13:58 ;loc alias update 15:14:20 well the process and copy 15:14:34 I think I know what mpad does 15:14:46 copy copies a single byte to mpad, and updates the offset ("off") into the buffer 15:14:57 process displays the buffer 15:15:14 it really needs cleanups done to it... 15:15:35 I have removed it 15:15:45 I didn't need it 15:16:02 but I think now that I will use mpad and copy 15:17:46 crc: when I copy it into the buffer I can still use the count word and I will get the start addr and the count on the stack? 15:19:06 not unless you have it setup with the first char in the buffer as the count variable 15:19:59 hmm 15:22:27 crc: how is the copy doing its business? 15:23:14 a) dup 32 this filters out ascii codes below 32, replacing them with 32 (space) 15:23:34 mpad off @ + 15:23:34 is the 32 the text count? 15:23:46 32 = ascii value for space 15:23:55 b) mpad off @ + 15:24:02 this gets a pointer into the buffer 15:24:11 c) c! 1 off +! 15:24:33 store the byte into the buffer, and advance the offset counter by 1 15:25:53 and off is holding the buffer? 15:27:25 off is the number of bytes into the buffer where the next byte will be stored 15:28:28 and it gets that because with you call mpad it puts the count and the address on the stack right? 15:29:24 mpad is the base address of the buffer 15:29:41 the value in off gets added to it to determine the exact address where the byte will be stored 15:32:37 crc question how is it getting the data from the word 15:32:48 :: net.read dup 10 =if process ;; then copy ; 15:33:26 net.read returns a byte. If it is 10 (end of line), it will process the buffer. Otherwise it copies that byte into the buffer 15:34:10 so could I just have it copy the byte into the buffer? 15:34:27 yes 15:35:07 hmm 15:35:37 I trying to figure how to copy it from net.read 15:36:13 net.read copy 15:36:14 net.read copy 15:36:45 cool! ok I was thinking right 15:38:03 * erider is going to test something.... 15:39:11 http://retroforth.net/paste/?id=260 15:40:02 this is a simple evaluation based bot that reports only PRIVMSG messages. It doesn't handle the nick of the sender or anything fancy, but it should suffice as an example 15:41:40 ok crc thanks 15:41:50 * erider is going to do some testing 16:03:30 --- nick: nanstm -> Raystm2 16:03:38 --- mode: ChanServ set +o Raystm2 16:09:53 --- join: nighty_ (n=nighty@sushi.rural-networks.com) joined #retro 16:10:12 hi Raystm2 16:13:53 --- join: nighty__ (n=nighty@sushi.rural-networks.com) joined #retro 16:30:40 hi erider. :) 16:31:07 hi Raystm2 16:31:16 --- quit: nighty_ (No route to host) 16:47:07 --- join: nighty_ (n=nighty@sushi.rural-networks.com) joined #retro 16:53:36 --- quit: nighty__ (Connection timed out) 17:37:26 --- join: nighty__ (n=nighty@sushi.rural-networks.com) joined #retro 17:55:49 --- quit: nighty_ (Read error: 110 (Connection timed out)) 17:56:01 --- join: nighty_ (n=nighty@sushi.rural-networks.com) joined #retro 18:11:49 --- quit: nighty__ (No route to host) 18:12:30 --- join: nighty__ (n=nighty@sushi.rural-networks.com) joined #retro 18:17:37 --- quit: erider ("I don't sleep because sleep is the cousin of death!") 18:25:14 --- quit: nighty_ (Read error: 113 (No route to host)) 18:26:23 --- join: nighty_ (n=nighty@sushi.rural-networks.com) joined #retro 18:38:42 --- quit: nighty__ (Read error: 110 (Connection timed out)) 18:39:20 --- quit: nighty_ (Read error: 60 (Operation timed out)) 18:39:52 --- join: nighty_ (n=nighty@sushi.rural-networks.com) joined #retro 19:18:33 --- quit: nighty_ (Read error: 113 (No route to host)) 20:00:49 --- join: nighty__ (n=nighty@sushi.rural-networks.com) joined #retro 20:25:54 --- quit: nighty__ (Read error: 113 (No route to host)) 20:30:16 --- join: nighty__ (n=nighty@sushi.rural-networks.com) joined #retro 21:09:10 --- quit: nighty__ (No route to host) 21:15:59 --- join: nighty__ (n=nighty@sushi.rural-networks.com) joined #retro 21:42:44 --- quit: nighty__ (Read error: 113 (No route to host)) 21:53:51 --- quit: virl (Remote closed the connection) 22:42:49 --- quit: Snoopy42 (brown.freenode.net irc.freenode.net) 22:42:49 --- quit: neceve (brown.freenode.net irc.freenode.net) 22:42:54 --- quit: Raystm2 (brown.freenode.net irc.freenode.net) 22:42:54 --- quit: crc (brown.freenode.net irc.freenode.net) 22:45:36 --- join: Raystm2 (n=NanRay@adsl-68-95-254-8.dsl.rcsntx.swbell.net) joined #retro 22:45:36 --- join: Snoopy42 (i=snoopy_1@dslb-084-058-098-051.pools.arcor-ip.net) joined #retro 22:45:36 --- join: neceve (n=claudiu@unaffiliated/neceve) joined #retro 22:45:36 --- join: crc (n=crc@pdpc/supporter/active/crc) joined #retro 22:45:36 --- mode: irc.freenode.net set +oo Raystm2 crc 23:04:19 --- join: Cheery (n=Cheery@a81-197-54-146.elisa-laajakaista.fi) joined #retro 23:59:59 --- log: ended retro/06.11.27