00:00:00 --- log: started forth/02.02.04 01:31:30 --- quit: aum () 05:55:31 --- join: Fare (fare@bespin.org) joined #forth 06:04:05 --- join: I440r (mark4@1Cust118.tnt3.bloomington.in.da.uu.net) joined #forth 06:04:28 hi ppl 06:04:28 anyone awake ? 06:04:29 hi fare !! 06:05:08 hi 06:05:43 u seen the latest working version of isforth ? 06:05:43 u keeping track ? 06:05:56 im trying to switch back to seperate code and head space 06:06:07 and its not working 06:06:07 i can see NO reason for it not to work 06:06:21 but it segv's 06:09:03 grr mc's hex dump wont let me hex edit grrr 06:09:03 thats lame!!!!!!!!! 06:10:00 gotta install MORE shit grrr - i hate that :P 06:11:13 so what u been doing fare ? 06:11:13 working on any projects ? 06:12:36 I$$)r: trying to recover my server from disk death 06:13:44 eep! 06:13:56 having any luck ? 06:14:41 no, the disk is dead - only opening it in a white chamber could help ($2400) - so I reinstalled it from scratch instead 06:15:41 :( 06:16:15 i fscked up last week, my laptop linux partition was all fucked up - nothin was working right 06:16:20 i tried for weeks to sort it out 06:16:27 and in disgust i did 06:16:27 rm -rf / 06:16:33 felt good about it too :) 06:16:40 then when i rebooted i went to dos 06:16:47 and found NOTHING there heh 06:16:54 my /dos was mounted 06:17:11 all i can think is thank god my samba shares wernt mounted 06:17:19 or i would have lost all of isforth + shitload of other stuff! 06:17:27 but that would have been my fault :P 06:17:33 oops 06:17:45 the morale is: always keep backups 06:18:55 hehe yea 06:19:06 that IS why i installed that cdrw in the server 06:19:18 actualy, i didnt lose anything on the laptop except time 06:19:31 i restored windows with the supplied rescue cd 06:19:31 there was no way my 8gb of mp3 could fit in a Cd 06:19:42 then i ran fips and created space for linux partitions 06:20:02 did a bare minimum potato install on linux 06:20:09 then ran an 11 hour dist-upgrade 06:20:23 actually - the only reason i DONT have a backup of my server is that 06:20:38 i cannot find a single utility that will do incremental backups and restores to MULTIPLE cdrw's 06:20:48 something that will let me back up from a list of selected files 06:21:04 and restore only selected files from the cd set 06:21:09 I440r: tril says he had a script to do it 06:21:16 oh, selected files. 06:21:19 if it exists - i cant find it 06:21:23 No, I don't think that exists 06:21:45 hopefully, by the time your computer crashes, you have a much bigger HD, and can restore all files then pick them up 06:23:02 my server has like a 30 gig drive in it 06:23:25 mine had 46G :( :( 06:23:26 and i have a partial mirror of debian on there heh 06:23:26 havent updated the mirror in months tho 06:23:38 cant 06:23:38 im on the worlds shittiest dial in 06:24:21 I440r: can't you bring an IDE or SCSI rack to the nearest university and mirror there? 06:24:52 dont have scsi 06:24:55 dont have an ide rack 06:25:05 could take the box there and do it 06:25:14 would they let me ? 06:25:27 actually, theres no point in my doing that because nobody but the local network could upgrade from it 06:26:03 a rack is like $15 in France 06:26:21 very much worth it 06:26:46 and yes, you can share it on the LAN just like a normal IDE disk 06:27:33 well - i cant even afford $15 right now - havent had a job in like 6 or 7 months :( 06:27:48 bad 06:28:11 have other people on the LAN pay for it, then 06:28:15 very bad 06:28:34 grr i need tcn's help - ive emailed him but he is going thru one of those "fuckit i cant be bothered" 06:28:38 like i was till last week heh 06:29:02 lan = me, me, me, dad 06:29:04 heh im greedy - 5 have 3 boxes hehe 06:29:16 i 06:29:27 grr fuckin numlock on laptop :P 06:29:54 I440r: can't you even apply as sysadm in a nearby shop? 06:30:22 i worked at ski world 06:30:22 but it isnt good enough 06:30:34 ive got a 190k house here i just baught 06:30:40 oh 06:30:46 if im not earning at least $50 usd per hour im going to lose it 06:30:54 rent a room? 06:31:22 heh thanx 06:31:29 u seen my house ??? 06:31:29 6 acres 06:31:29 3 buildings 06:31:36 im in a valley of my own here 06:31:50 i can shoot any of my 50+ guns ehre and not hit anything i shouldnt 06:32:10 actually i dont have 50 guns - i only have 3 or 4 hehe 06:32:16 my dad has 50 :P 06:32:34 in Europe, you're mostly not allowed to have guns. 06:32:46 except if you're a criminal, or part of the establishment 06:33:11 exactly 06:33:23 which is why in europe you take your life into your own hands just LIVING there 06:33:31 thats one of the reasons i got the fuck out of england 06:34:14 oh, you were in England? where that? 06:34:19 my dads car alarm went off last night - for no apparant reason 06:34:19 i was out there with my 45 ready to do battle with whoever it was hehe 06:34:20 nobody there tho heh 06:34:26 i lived in blackpool england 06:34:41 that is the crime/queer/drug capital of england 06:34:53 teh cray twins tried to move into blackpool 06:35:04 got booted out 06:35:16 i knew ppl who could - for the right price- get you ANY weapon 06:35:18 cray twins? 06:35:28 want some semtex ?? 06:35:28 itll cost ya 06:35:29 what would the right price be? 06:35:39 as compared as same weapon in US? 06:35:40 want an ak-47 ???? 06:36:07 they were twin brothers in london who were organized crime lords 06:36:14 they would walk into a pub 06:36:22 shoot someone 06:36:22 walk out 06:36:22 * Fare read about a man getting life for killing a robber who entered his house for the third time. 06:36:27 (in UK) 06:36:40 yes 06:36:48 (an armed robber at that - had a crowbar) 06:37:00 in england - if you are a girl being RAPED and you defend yourself 06:37:09 your attacker can sue 06:37:09 and win 06:37:10 after the police refused to watch his house, too 06:37:28 have you ever read "a nation of cowards" ? 06:37:28 crazy country 06:37:31 no 06:37:47 the police arent ther to guard your body - not even in this country 06:37:57 they are there to arrest the guy for killing you 06:37:57 not defend you 06:38:01 remind me that in USSR, criminals were called "socially near" by the communist in power 06:38:08 do a web search for "nation of cowards" 06:38:08 read it 06:38:17 whereas honest citizens were "counter-revolutionaries" 06:38:19 its an education 06:38:31 after englaned took all the guns away their crime rate went balistic 06:38:43 to such a degree that the POLICE now carry guns in england 06:39:13 and in england the last person you want to meet is a cop with a gun 06:39:27 they arent raised with guns 06:39:52 give an english cop a gun and he wants to be a cowboy 06:39:52 itchy trigger finters 06:40:01 uhoh 06:40:07 my dad has a bumper sticker that reads 06:40:14 i have many lucky numbers 06:40:23 45, 357, 9, etc etc etc 06:40:30 but 911 is NOT one of them 06:40:46 :) 06:41:00 i had a truck tailgating me on the freeway once here 06:41:00 he was like 2 inches from my bumper 06:41:09 i was doing 80 to try keep my distance from him 06:41:19 dialed 911 06:41:19 tried channel 9 on cb 06:41:28 nobody would assist 06:41:40 if i hadnt been close to home i would have put 2 45 slugs into that trucks radiator 06:41:53 right through my rear winscreen if need be 06:42:14 then i would have pulled over and made a citizens arrest 06:42:25 or shot the fucking cunt if he had a gun himself 06:42:45 i consider his truck to be a far more dangerous weapon than my 45 06:42:57 neway 06:43:00 back to isforth 06:43:08 why is this fucking sob sigsegv'ing 06:43:14 grrr 06:43:23 what had being close to home do with it? 06:43:25 all im doing is assembling to two different sections 06:43:36 all header info goes into one section 06:43:36 all code goes into another 06:43:45 actually not much 06:43:51 is the code loaded at right place? 06:43:52 cept i was tired and just wanted to go to bed 06:43:56 yes 06:44:08 its exactlywhere nasm always puts it 06:44:13 what's the last thing done right before it goes sigsegv? 06:44:16 if i go with teh seperate head space - it works 06:44:38 what's wrong with sperate head space? 06:44:45 _start: 06:44:52 pop ebx 06:44:52 dec ebx 06:45:06 pop dword [arg0+5] segv 06:45:17 i dont know 06:45:17 i want seperate head space so i can turnkey 06:45:30 headers are only needed in order to compile 06:45:40 compiled code doesnt need the headers 06:46:04 actually, i only get a segv ther if i SINGLE step using ald 06:46:15 ald? 06:46:19 so the actual problem might be elsewhere 06:47:06 if i run it in gdb it segv's in "count" 06:47:18 ald - assembly level debugger 06:47:18 its under devel still 06:47:18 not that good 06:47:18 actually 06:47:29 its crap 06:47:42 worse than gdb - but unlike gdb has potential 06:47:54 gdb is a pile of shit 06:48:03 absolutely the worst debugger i have ever had to use 06:48:21 and that inclues some of those nec in circuit emulators ive had to use 06:49:43 what i hate most about gdb is that it refuses to remember my preferences 06:49:43 every time i run it i have to do 06:49:58 set disassembly-flavor-rediculously-long-option-names inetl 06:50:02 disply /i $pc 06:50:17 and theres NO fucking option to display registers after ever single step 06:50:27 and i cant dump a specific address in any sane fassion 06:50:40 nor can i get a REAL fucking dump of the stack 06:50:44 its a pile of shit 06:50:50 i hate it more and more every day 06:51:48 if i run ./isforth - it segv's immediatly 06:52:31 if i run gdb i can get thru init and it craps out later - somewhere in "count" 06:52:31 so debugging with gdb is unreliable 06:53:25 where can i get a list of all ansi escape codes ? 06:54:10 /etc/termcap? 06:54:24 terminfo database? 06:54:40 linux or bsd or xterm source? 06:54:57 erm debian doesnt use /etc/termcap i dont think 06:55:04 not xterm 06:55:11 term 06:55:58 and /etc/terminfo/a/ansi is a binary file 06:56:09 the *sources* for terminfo 06:57:06 erm - i dont think i would like to have to read those. 06:57:06 reading other peoples c scratchings is next to impossible 06:57:20 the way most people write c - its write only 06:58:16 fuck - im single stepping thru isforth using gdb and the fucking thing gets all the way into quit 06:58:23 and interpret 06:58:43 but if i run ./isforth it segv's immediatly :( 06:58:43 doesnt even get as far as hello 06:59:21 ok guys - u can all use isforth - but you have to load it into gdb and run it in single step mode now 06:59:31 thats the only way it works :P 06:59:42 I440r: 1) introduce single-step instructions 2) write macros for gdb 06:59:56 3) modify isforth so that it inserts debugging code 07:00:47 gdb has like 289745697824926495436 totally undoccumented bullshit nobody real would ever use this option options 07:01:01 u think im going to learn to write macros for a monster like that ? 07:01:21 i440r: use strace to trace isforth and insert dummy system calls all the way, to see where it dies 07:01:26 thers a simple bug in isforth - all i need to do is find it 07:01:45 strace 07:01:57 aha 07:01:57 let me try that 07:02:41 ugh how do i run strace 07:02:54 man strace says 07:02:54 do 07:02:54 strace ./isforth -ooutfile 07:03:03 i do that and i get no output file 07:03:35 oh 07:03:44 erm 07:03:44 ok 07:03:52 whats a good "dummy" syscall ? 07:04:11 strace -o outfile ./isforth 07:04:34 like a call to write(2,...) 07:05:34 or setuid(number) 07:05:47 ok well it segfaults before it even gets to initconsole 07:05:59 one of the first things it does 07:05:59 thats in init 07:06:11 im going to assume im segfaulting on instruction3 07:06:24 as thats where ald says it segfaults if i single step 07:06:41 pop ebx ; get argc 07:06:49 dec ebx ; dont count arg0 07:07:14 pop dword [arg0 +5] ; get address of arg0 - store in body of a variable 07:07:25 so 07:07:32 arg0 is not writeable 07:07:33 is the adress mapped? 07:07:41 yet ALL my sections are read write execute 07:07:44 ALL of them 07:07:48 mapped ? 07:07:57 its part of the body of the code 07:08:00 mapped, writeable, et. 07:08:09 it SHOULD be writeable 07:08:20 all my sections are read/write/execute 07:08:25 maybe the dynloader doesn't head writeable flags for the code segment? 07:08:33 and this code works when head space and code space are interleaved 07:08:37 did you try writing code in another data segment? 07:08:56 there is not "other" data seg 07:09:08 just you create one! 07:09:11 and this code WORKS - with non sepreate head space 07:09:25 .data 1 07:09:27 .data 2 07:09:31 .data 3 07:10:07 i should be able to have ONE section 07:10:11 .text read execute 07:10:29 i have .text, .data, .bss and .headers 07:10:38 i see no point in the .data at all 07:10:40 use severa subsegments in .data and be done 07:10:55 don't use .text at all 07:10:59 subsegments ? 07:11:11 .data 1, .data 2, etc 07:11:39 i would rather NOT have anything other than .data .bss and .headers 07:12:06 it segv's on the THIRD fucking instrucion!!!!!!!!!!1 07:12:21 and ALL fucking sections are writeable 07:12:23 ALL of them 07:12:39 you think it is - does the loader agree? 07:12:55 is the stack setup as you think it is? 07:13:13 can the code be dowaloaded? 07:13:22 hang on 07:13:57 the last working version is on my ftp (dns me) in /pub - its the feb03 tgz 07:14:06 ill tgz THIS version and put it there too 07:15:35 hey, I met hofstadter a few days ago 07:15:44 hofstadter ? 07:15:50 can't you find a job in indiana u? 07:15:52 i put the broken one in /pub too 07:15:58 havent tried 07:16:10 but i doubt they will pay me anything more than $8 per hour 07:16:18 as a consultant i earn 50 to 70 per hour 07:16:29 and if im not making that 07:16:32 ill lose this house 07:16:41 which will fucking suck 07:16:55 hum 07:17:19 the feb03 tgz has nasm 98e in there - u need that version (tho u proly already have it eh) 07:17:22 and the "Broken" one is just the sources 07:17:52 theres a contract my recruitor has heard about in phoenix az thats unix forth based!!! 07:19:49 71% complete - sorry about the download speed :) 07:21:33 that file is in a "working" state. thers some things that need changing in there - but ill deal with them when i get some other stuff working... like seperate head space and fload etc heh 07:21:42 we have key but no key? 07:21:51 key is non blocking and doesnt expect a 0x0a 07:22:09 im going to write hey? to use poll and key will do a begin key? until 07:22:24 write KEY? even heh 07:22:44 but the way things are right now is useable. wrong but uesable heh 07:23:50 the 03 tgz has nasm98e in there - but thats the official unofficial nasm heh 07:24:39 get CodingStyle too hehe 07:25:04 its my parody of the linux coding style doc in /usr/src/linux/Doccumentation heh 07:34:53 i did something 07:35:05 i put section .text 07:35:13 did teh first instrucion (pop ebx) 07:35:20 then immediatly did section .data 07:35:46 it doesnt work :P 07:35:52 u execute the first instruction 07:36:03 I hoped it would be coding style for Forth :) 07:36:04 then you are executing some other shit - ive no idea what 07:36:14 no - tho i AM going to do that too 07:38:26 linus has seen that btw :) 07:39:26 objdump -x isforth tells me the tet segment is not writable 07:39:55 text seg fucking better be 07:39:59 how come it isnt 07:40:03 how do i make it writeable 07:40:11 section .text read/write ? 07:40:21 ive put read write executable 07:40:28 write execute 07:40:42 dunno what you put - objdump -x knows what the file is like 07:41:18 next time, check with objdump -x 07:41:33 i dont have objdump 07:41:39 however 07:41:52 the only code thats in section text is the first few lines 07:42:04 everything else is in .data or .bss or - .header too now 07:42:18 are any of those read/write execute ? 07:42:30 if they are read/write they are executable too 07:43:23 gdb wont allow me to do disassemble 0x080addressgoeshere 07:43:26 it says 07:43:30 symbol does not exist 07:43:38 fucking STUPID fuclking pile of fucking SHIT 07:43:41 objdump is part of the gnu binutils -- you better have it 07:44:01 i do! 07:44:02 hehe 07:44:10 text is 0x15ef bytes long 07:44:50 depends on where i had the section .data 07:44:57 ive been moving it arround to experriment 07:45:30 x/20i 0x08048080 07:46:38 thats _start 07:48:08 oh, good morning *YAWN* 07:48:18 hi mrreach 07:53:48 i might have to assemble to a binary file and include the elf header at the start 07:54:23 use 3 secions max. text (or data) bss and headers 07:55:17 if im reading this rigth objdump is telling me i have a 21 byte .data section 07:55:19 ! 07:55:21 wtf 07:57:50 its putting EVERYTING in .text 07:58:01 even tho i switched into .data 07:58:48 its not putting a fucking thing in .data 07:58:55 if im reading this right that is 07:59:14 i know why! 07:59:17 brb 07:59:47 i fixed it :) 07:59:52 almost 08:00:08 it seffaults if i try run anything but it gets through init now 08:00:16 and into quit/interpret 08:00:33 my "header" macro first switches into .header section 08:00:35 compiles the header 08:00:48 then switched to .text (wrong) 08:00:53 i changed that to a .data 08:01:37 so now all i gotta do is find wich word it is that doesnt like seperate head/code space (still expects the old format :) 08:01:48 fuck. i KNEW this should work :P 08:02:30 even if i specify read write and executable for the text secoon - nasm wont allow it 08:02:31 grrr 08:02:33 fucking assholes 08:07:17 gosh, I'm tempted to write a metacompiler that writes .EXEs directly, just to show you it can be done 08:07:36 it should take about 2 weeks for minimal kernel 08:08:48 .exe's ? 08:08:58 u mean widnows exe's or elf exe's 08:09:05 chmod a+rx 08:09:18 both, actually, they're nearly identicle 08:09:23 i said NASM wouldnt allow it 08:09:23 im sure that if the elf header had a writeable text section 08:09:23 it would work 08:09:38 hehehe 08:09:38 yea 08:09:51 that what i need to do to ALL my memory :) 08:10:21 no, I meant write the ELF file manually, from start to finish, in the metacompiler 08:10:28 even tho ive specified a readable and writeable text section (which is automatically executable) its read execte only 08:10:28 no write 08:10:39 OPEN-FILE ... CLOSE-FILE 08:11:03 gdb wont allow me to do a dump of memory grrr 08:11:07 oh, sorry, didn't realize you were talking about your current prob 08:11:34 when isforth is ready for it. the saveexe function needs only write a valid elf header 08:11:44 and then write an exact duplicate of all my memory 08:11:56 im sure that will work 08:12:07 that would be turnkey tho 08:12:15 yep, enumerate the current segments, dump them into the ELF ... then patch the counts and offsets in the ELF 08:12:20 would need to write a seperate section to perserve headers 08:12:34 turnkey will be easier :) 08:12:46 not really, just fewer segments 08:12:51 but when isforth loads up what i think im going to need to do is relocate all headers by hand (not a problem) 08:13:02 yea 08:13:09 i was scared about "writing relocatable code" 08:13:18 but 08:13:18 linux doesnt use relocatable code 08:13:18 hey, let me ask yoiu about your current internals ... 08:13:29 every program loads into their own copy of the same address heh 08:13:34 how does the threading work, exactly? 08:13:41 so its not a problem :) 08:13:52 sure 08:14:05 ok 08:14:05 well 08:14:05 esi is IP 08:14:19 lodsd jmp eax is next 08:14:32 inline next and jmp _next are both options 08:14:32 nest and unnest are simple 08:14:43 all : defs start with a call nest 08:14:55 the call leaves the body field address of the : def on the stack 08:15:06 ok, so in a col def ... 08:15:08 nest pushes esi to the return stack 08:15:20 and then pops esi 08:15:20 then does a next 08:15:35 the first cell is the address of _nest and the remaining cells are the addresses of other words? 08:15:37 unnest is simply a mov esi [ebp] 08:15:41 and adjust of ebp 08:15:47 no 08:15:52 its direct threaded 08:15:58 every word\ 08:16:04 coded or not 08:16:11 has machine code at their cfa 08:16:18 * MrReach gets the sources ... 08:16:21 for coded defs its just the code of the definition 08:16:26 sure 08:16:28 dns me 08:16:28 ftp in 08:16:45 dont get the "Broken" tgz - the feb03 is the latest fully working 08:17:02 ill delete the broken now i think heh 08:17:11 its the stuff im working on right now 08:17:16 ok 08:17:24 there was a feb02.tgz but i accidently blew it away hehe 08:18:45 it's just as easy to write writeexe in a metacompiler, and you have to do it anyway 08:19:07 its not needed in the metacompiler 08:19:17 its needed in the kernel itself 08:19:23 well 08:19:23 in the extended kernel 08:19:56 the metacompiler is compiled on top of the extended kernel. and target compiles the kernel sources 08:19:56 I understand 08:20:06 something it wont be able to do unless theres an assembler 08:20:09 i know YOU do heh 08:20:13 but when the time comes, it a cut and paste operation, if you write it correctly 08:20:38 define "correctly" in this context ? 08:20:46 and a cut and paste of what ? 08:20:54 oh 08:21:21 we could (for now) have nasm assemble all the machine code - and dump its output and include it in the forthish sources for the meta compiler as c,'s ? 08:21:21 heh 08:21:21 messy:P 08:21:26 "correctly" means that you take care to alter the host forth (whichever you use) to make it look like the target forth, then use only that to write code 08:21:44 it would be interesting to be able to shell out to nasm to assemble the "coded" definitions tho heh 08:22:24 yes - the HOST forth should write to the target - the target doesnt execute till you LOAD it hehe 08:22:40 that's how metacompilers work, generally 08:22:46 fpc's sources have alot of metacompiler hacks in them 08:22:53 i think this is bad 08:23:00 i think its unneeded 08:23:01 heh, I end up ignoring those 08:23:21 --- join: futhin (thin@h24-64-174-54.cg.shawcable.net) joined #forth 08:23:33 they are for zimmerman ... I don't understand them ... I always start my metacompilers from scratch 08:28:29 greets, futhin 08:28:29 im HOPING i dont have to do all that shit - the meta compiler should KNOW its target compiling and any words that get EXECUTED now are NOT the ones that got target compiled hehe 08:28:29 greetings all 08:28:29 so we can compile a word called "foo" in the target - using a word called "foo" in the host 08:28:29 futh!!! 08:28:29 its all a futh about nothing :P 08:28:29 heh 08:28:29 hehe 08:28:29 you will have to write metacompiling versions of immediate words 08:28:29 that feb03 tgz has nasm 98e in it. 08:28:29 i think im gona stop putting nasm in the isforht tgz's tho 08:28:29 if it's any consolation, it's possible to write a kernel with only IF ELSE THEN and BEGIN WHILE REPEAT constructs 08:28:29 is there any nasm code in isforth ? 08:28:29 ill add a "get nasm98e from same place you got this" in my source tgz's heh 08:28:29 I don't mind it being in there 08:28:29 theres alot of stuff in this "perliminary" kernel that will NOT realy be in the REAL kernel 08:28:29 alot of it can be extensions 08:28:29 I recommend to you the book "On Lisp" by Paul Graham (now available online) 08:28:29 explain meta techniques from the lisp perspective 08:28:29 have an absolute bare minimum CORE wordset - nothing in there thats not NEEDED in order to buyild a fully working forth 08:28:29 then you can have a 2 stage extend 08:28:29 2? why not 1 ? 08:28:29 first extend builds on your CORE kernel and then you extend to get your WORKING forth development environment 08:28:29 hm 08:28:29 more control over what your turnkeys application has in it 08:28:29 if your turnkeyd app doesnt need the assembler for instance..... 08:29:17 you could conceavably go from core kernel and extend right to your all forth definitions application 08:29:30 you only NEED one extension cycle 08:29:39 no need to extend your core to include an assembler etc 08:29:51 yes 08:30:04 also, the minimal kernel ONLY needs fload (or INCLUDED) 08:30:14 fload 08:30:16 it doesn't need writeexe 08:30:22 or whatever you called it 08:30:40 im thinking of adding a word called "requires" 08:30:49 or "depends" 08:31:09 and give it the ability to trace dependancies 08:31:17 "needs" is what win32 and gforth uses 08:31:28 so you can make your applications extend include ONLY those things it realy needs 08:31:38 yes, indeed 08:31:38 makes for smaller turnkeyd apps 08:32:29 i used to figure all that shit out by hand in fpc when i did a turnkey 08:32:29 built my own extend file for my apps 08:33:05 the verion you just downloaded has interleaved headers btw 08:33:16 seperate headers is what im working on now heh 08:33:38 that's fine 08:33:43 after that ill use poll for doing key? and then fix quit/interpret and [ and ] and compile 08:33:51 : [ state off ; 08:34:01 : ] state on ; 08:34:20 anything more is fucked in the head heh 08:34:20 i hated that about fpc 08:34:27 he had 2 identicall loosp 08:34:27 interpret 08:34:27 and ] 08:34:36 cept ] was in compile mode :P 08:34:49 yes, I'm more fond of a seperate compiler loop, ala Frank Sergent, but most forths use a dual-purpose loop 08:34:51 i wrote interpret to do BOTH operations and it was much nicer... 08:35:18 thats pigmy right ? 08:35:23 adds another IF THEN to INTERPRET 08:35:24 thers alot abouyt pigmy that i realy lied 08:35:30 liked 08:35:35 yes, Sergent wrote pygmy 08:35:41 but there was alot i realy realy hated too heh 08:35:50 doesnt he use "subroutine threading" 08:35:54 I used pygmy as my bootstrap forth to metacompile 08:35:55 totally NOT forth :P 08:36:01 no 08:36:06 :) 08:36:12 direct threaded 08:36:15 oh 08:36:28 maybe im confusing it with anoter forth 08:36:30 *I* used his direct threaded forth to write a subroutine threaded forth 08:36:39 heh 08:36:40 so I'm the evil one, not he 08:36:44 i delved into pigmy and i do remember theres things i dont like 08:36:59 the pygmy editor is leet 08:37:02 but i guess i forget what it was :) 08:37:02 hehe 08:37:08 I didn't like the lack of immediacy bit 08:37:43 there was a whole PILE of shit i didnt like about fpc - i have the same objections to it aht you do) but i FIXED most of those heh 08:37:54 fpc == 2843779825679269 meg executable 08:38:06 my fpc = 34k executable 08:38:06 or something like that :P 08:38:21 oh yea that had me confused a bit too heh 08:38:24 did you metacompile in order to hack your fpc ? 08:38:40 does fpc come with source? 08:38:48 i think "immediate" words are a very clever solution to the problem of switching out of compile mode 08:38:48 yes 08:39:10 i could metacompile and fully extend in 6 seconds on my 486 dx 2-66 08:39:20 what if they aren't the clever solution ;) 08:39:26 thats with assembler, debugger, disassembler, editor 08:39:42 fpc comes with source 08:39:50 its tom zimmers old dos forth 08:39:54 based on f83 08:40:05 i think the f83 sources are much nicer in places tho 08:40:16 but i cant handle "block" bullshit 08:40:22 its so "fred flintstone" 08:40:22 heh 08:40:42 fred flintstone? 08:41:00 stone aged 08:41:00 archaic.. outdated .. 08:41:09 we have sequential file reads in forth now. 08:41:21 why restrict ourselves to using 1024 byte blocks 08:41:43 isforth also has NO "user" variables etc 08:41:43 not needed 08:41:46 because it's simple? because it encourages us to write better code? :P 08:42:35 when forth is a stand alone embedded multi user operating system then user vars are needed 08:42:42 blocks dont encourage better coding 08:42:42 they discourage it 08:43:24 you have to CARM as much as you can into one source 08:43:24 reminds me of that FIRE project (OS in FORTH) 08:43:24 and you HAVE to code horizontally 08:43:24 vertically formatted sources are preferable 08:43:24 they were considering a way to compress blocks 08:43:43 hehe sounds like a complete wast of time :P 08:43:46 I suggested, replace all end-of-lines full of blanks with character HEX 0a 08:45:01 no. horiontal coding is preferable because a word should only have 1 or 2 lines of code :P 08:45:01 vertical coding encourages puting more code into one word ;) 08:45:01 futhin a word should not have any more lines than it absolutely needs 08:45:02 40 page switch statements like you see alot in c are frowned upon heh 08:45:12 but if u need 8 or 9 lines of code - no prob 08:45:22 and vertical coding is preferable because it allows comments 08:45:33 interleaving comments and code does nothing except break up the natural flow of the code on the eye 08:46:01 bah to comments :P 08:46:04 i DO put comments between code - but its usually a very special case 08:46:04 code ;comment 08:46:04 code ; 08:46:14 etc 08:46:18 but most of all, bah to stack comments :) 08:46:21 is alot easier to read 08:46:28 futhin ur fired!!!!!!!!!!!!!!!!! 08:46:28 wheres my gun! 08:46:47 heh 08:46:49 stack comments are very imnportant 08:47:01 chuck moore disagrees :P 08:47:10 even when a woreds stack comment is ( --- ) 08:47:19 note 08:47:29 I've noticed that when I write code in normal text files, definitions become *HUGE* with comments and annotations ... but they're very much easier to read 08:47:44 i balance out the first required space with another space on the other side of the --- 08:47:44 and YES 08:47:55 THREE dashes are correct 08:47:55 2 is incorrect, for is incoorect 08:48:07 : bleh ( n1 n2 --- n3 ) 08:48:19 why is one correct and not another? 08:48:20 you should never do 08:48:29 why not two? 08:48:32 : ble ( n1 n2 ---- n1+n2 ) 08:48:50 thats NOT the reason for stack comments - the code should be commented to show what n3 realy is 08:49:09 it adds to the visual clutter 08:49:11 I think MPE uses only one dash, and that got me thinking ... it's more elegant, compact, and no meaning is lost 08:49:16 and complicates the comment 08:49:23 it tries to make the stack comment convey more information than is needed 08:49:36 i know 08:49:36 i just prefer 3 hehe 08:49:43 oh, ok 08:50:00 if you passed me code with ( nb1 -------------------- n2 ) i would just delete the ones i dont like :) 08:50:37 but if anyone sends me any sources with TABS in the source file i shall be storing said source files in /dev/null for safe keeping 08:51:01 would you like some cheese to go with that whine? 08:51:12 yea 08:51:39 that's a terrible reason to discard someone's work 08:51:56 especially if it does something valuable for you 08:52:01 yeah, code your own formater :P 08:52:03 bye 08:52:05 --- part: Fare left #forth 08:52:07 to format other ppl's code 08:52:12 well tabs make any sources totally unreadable 08:52:13 and it's SO easy to scan the file and convert tabs to spaces 08:53:15 i would have to GUESS what tab spacing he used 08:53:22 not too difficult if he was the only one working on the sources 08:53:38 but if 3 or 4 ppl work on the same sources 08:53:44 over time 08:53:50 your sorces 08:53:50 start 08:53:50 to look 08:53:56 if you wanted his code, you'd take the time to figure it out 08:53:58 like this 08:54:15 yes, I understand 08:54:28 and even agree, tabs have no purpose being in forth sources 08:54:46 but if you get one with tabs in it, it's not the end of the world 08:55:14 i probably wouldnt reject it 08:55:30 but i would probably reply to the author asking him to convert tabs to spaces before submitting his stuff :) 08:55:38 heh, my tabs are set at two spaces when I'm editing forth source 08:55:40 it's interesting that chuck moore thinks stack comments are for those who can't code properly 08:55:58 if he kept sending me stuff with tabs in it i would stop adding his stuff basically L:) 08:56:06 2 is cool 08:56:10 2 is the best 08:56:13 ive set joe to insert 4 spaces per tab 08:56:14 (I tell my editor to use spaces instead of tabs) 08:56:21 but when i write my code i do 08:56:21 label: 08:56:25 2 is less wastage 08:56:30 code goes here 08:56:30 ONE space 08:56:39 foo: mov eax,2 08:56:39 argh 08:56:39 foo: 08:56:46 that's assembly, not forth 08:56:48 mov eax,2 08:57:11 2 # EAX MOV 08:57:11 correct 08:57:11 and in forth i indent by 2 08:57:22 and all conditionals are on a line of their own 08:57:22 : foo 08:57:33 5 0 08:57:33 do 08:57:33 i . 08:57:33 loop ; 08:57:39 oh! I agree with that! 08:57:39 erm i fucked that up hehe 08:57:45 : foo 08:57:45 5 0 08:57:45 do 08:57:52 i . 08:57:55 and that is where I disagree with much of the forth community 08:57:59 loop ; 08:57:59 and i dont do 08:58:06 loop 08:58:06 ; 08:58:15 the ; on a line by itself (ugh) 08:58:17 : foo \ ( -- ) 08:58:31 x y = 08:58:33 stuf to set up flags 08:58:39 if 08:58:39 blah 08:58:39 then 08:58:43 IF \ comment about true case 08:58:48 ... 08:58:59 THEN \ comment about false case 08:59:02 ooops 08:59:10 ELSE \ comment about false case 08:59:18 hehe 08:59:25 i get it :) 08:59:32 THEN \ ( -- ) optional comment about what we just finished 08:59:49 i tend not to CRAM comments up against my sources 08:59:59 10 0 \ comment comment comment 09:00:18 blah blah \ comment comment comment 09:00:18 visually cluttered 09:00:35 \ comments all align 09:00:37 I do, and I have many blanks lines, and lines that are nothing but comment 09:00:46 \ at the same column (unless i fsck up) 09:01:06 there's often more comment than forth code in my sources ... because forth is so terse 09:01:08 white space serves a valid purpose 09:01:24 it means your sources are not all crammed up together 09:01:33 thats part of whats wrong with linux kernel sources 09:01:38 are you commenting MORE for yourself than for other people?? 09:01:39 hmm ... would you like me to cut/past a def that I'm currently working on? 09:01:51 no 09:02:01 i dont need comments at all 09:02:04 yes, actually, I can go back months later and understand what I've done 09:02:22 strip all the omments out of a program i wrote 20 years ago and havent touched since 09:02:22 and ill explain every line of code to you 09:02:39 oh please? I wanna! 09:02:40 i learned to code by reverse engineering other ppls code 09:02:59 aroo ? 09:03:09 I've been trying to figure out how to do in memory ave files, and this word has evolved to be *HUG* 09:03:13 huge, even 09:03:27 wave files 09:03:37 what the hell just happened to my typing??? 09:05:07 heh? 09:11:22 which word ? 09:11:51 it's called "fill1" 09:12:07 its not your typing - its the keyboard - it discards random key presses :) 09:12:15 my laptop does that too :P 09:12:19 which turned out to be hella slow, so now there's fill2 that I use for comparison 09:12:52 when I have what I want, it'll probable be called "sinewave" 09:13:12 but all of this is experimentation, so short names are used 09:13:23 (much easier interactively) 09:13:40 HA! come to think of it ... 09:14:11 this word will never be used in my application ... I'm just learning how to create sinewaves accurately and quickly 09:14:13 u looked at isforth sources ? 09:14:21 yes, I have 09:14:30 use a sin table 09:14:37 where would you like to begin discussion? 09:16:40 the sin table i used is based on a 8192 divisions of the circle 09:16:40 not neccessary, and actually slower than using FSIN on pentiums 09:16:40 just general feelings about it.... any idead you might have for addition/deletion heh 09:16:40 FSIN is one clock to the processor 09:16:40 if this were a microcontroller or 386SX I would probably do that 09:16:41 u know - if they reworked their "floating point" processor to use "integer" maths it would be a gazillion times faster 09:16:45 but this is a K6/2 ... it's got more fast ops than I can shake a stick at 09:16:59 it's still only one clock 09:17:07 can't improve on that much 09:17:11 we are pentium of borg - division is futile - you will be approximated 09:17:11 heh 09:17:18 well, get rid of a boatload of transisters 09:17:22 from /user/games/fortune :) 09:17:32 yeah, I saw you type that earlier 09:17:40 hehe 09:17:43 funny, thank you 09:18:30 unfortunately, there's noone in my current circle of friends who would have the slightest idea what that means or why it would be funny 09:18:40 hence, I'm on IRC 09:18:49 heheh 09:19:00 brb - starting x 09:19:03 --- quit: I440r ("!") 09:21:38 --- join: I440r (~mark4@1Cust118.tnt3.bloomington.in.da.uu.net) joined #forth 09:22:46 wb 09:23:20 :) 09:23:41 i need a good source file editor for x 09:23:53 something that will let me set a default window soize, font size and customize the keyboard etc 09:24:06 multiple files would be good too 09:24:06 emacs :P 09:24:19 cooledit is a pile of shit :P 09:24:19 i want codewrite for linux :) 09:24:41 C-x 2 and C-x 3 in emacs split up the window into 2 windows 09:24:44 ugh 09:24:47 why don't you write an awesome forth editor? 09:24:52 yeah 09:24:56 i want to write my own editor 09:24:59 futhin ur on ignore :P 09:25:00 because most editors suck 09:25:02 that runs correctly both in term and xwin? 09:25:05 i440r: lol 09:25:12 ive run mozilla 09:25:12 its hung 09:25:17 jee 09:25:18 jeez 09:25:21 its not in the process li8st 09:25:21 but its there 09:25:27 no 09:25:40 forget linux and windows! let's rally around our flagship, the Forth OS!!!! (play some music here) 09:25:46 --- quit: I440r (Remote closed the connection) 09:25:53 arg! 09:25:54 we're wasting way too much time coding for windows or linux 09:26:09 that's a wheel I do *NOT* want to reinvent 09:26:30 eh? if the Forth OS replaces linux and windows, the world is a better place, is it not? 09:26:42 not neccessarily 09:27:08 there are 100s of thousands of man-hours spent in developing these OSes 09:27:26 --- join: I440r (~mark4@1Cust118.tnt3.bloomington.in.da.uu.net) joined #forth 09:27:27 we never code ANYTHING in forth. why is that? because we just whine about coding this or that in forth in linux or windows.. when we know is a bitch and won't be appreciated 09:27:29 the result is fairly effecient and bullet proof 09:27:32 there are 100s of thousands of man-hours spent in developing these OSes 09:27:33 the result is fairly effecient and bullet proof 09:27:40 so? 09:27:44 we never code ANYTHING in forth 09:27:47 with a Forth OS 09:27:51 we'd code everything we wanted 09:27:55 without any trouble at all 09:28:03 why is that, do you think??? 09:28:11 comfort 09:28:22 because they lure of compiling new kernels distracts us 09:28:56 I'm writing an APP in forth, can't bitch at me 09:29:11 unfortunately, it'll never be public 09:29:27 linux and windows aren't exactly comfortable for forth coders to code in, and if you want to do a complex application, it's a real pain in the ass. in a Forth OS, it won't even be a pain in the ass, it'll be pure ecstasy, as we think of it and easily reach it thru the quickest path of development 09:29:41 heh 09:29:53 we just keep writing new forths 09:29:58 forth IS the app 09:29:59 there's nothing out there coded in Forth, it's starting to piss me off :/ 09:30:05 no 09:30:06 erm ... that's the beauty of forth ... *MAKE* it comfortable 09:30:19 everything else is just an extension :) 09:30:26 quite so 09:30:45 we need a Forth OS, we need enough apps in it so that we can switch to it completely and DELETE linux and windows!! we need editors, web browsers, networking, etc 09:30:45 futhin was pointing out, though, that not many extensions are actually written 09:31:01 futhin: knock yourself out 09:31:56 are all the apathetic forth coders of this world not interested? :( 09:32:02 I don't think you're gonna get a terrible lot of support, though 09:32:30 they're busy doing stuff more applicable to real-life problems 09:32:36 if you'll parden the pun 09:33:24 yes, and they are harming Forth. there's minimal community, and very little source code on the net 09:33:33 newcomers are not welcomed 09:33:48 no coding is done for the community 09:34:23 this is true 09:34:27 i think community should be developed, then all the cool leet stuff can be finished faster and better, after the community is strong 09:34:33 those things would improve forth 09:34:50 and agued about incessantly 09:35:31 A Forth OS developed into a desktop OS that anyone can use, even non-coders, would greatly strengthen the community. Especially when it is well-supported and easy to code Forth in. 09:36:06 erm ... I'm not sure forth for "non-coders" could be written and still called forth 09:36:16 i'm talking OS 09:36:18 like windows 09:36:21 forth is real close to the iron, and lets you break things 09:36:26 Forth OS that looks and feel like windows 09:36:41 with improvements too 09:37:05 alot of work 09:37:08 i'm not talking about a forth implementation, that is not the important part. it is time we get away from forth implementations 09:37:11 you might have a point there 09:37:26 a forth GUI running under the linux kernel would be interesting 09:37:58 i440r: it is true it is a lot of work, but it would actually be less work than Linux and Windows in many ways.. it is much simpler and it's simplicity allows for faster/easier ways of getting the job done 09:38:02 i intend to do xlib extensions 09:38:10 the KERNEL wont use any libs - but apps can 09:38:11 but then you've got a bazzillian drivers for all the video cards 09:38:28 i'll just port the drivers :P 09:38:41 or one drive to handle all situations :) 09:38:41 HAHA! back to reading C, eh? 09:39:06 or give forthos the ability to use "windows" drivers 09:39:06 :) 09:39:08 I440r: the discards the good money that people pay to have more capable video cards 09:39:16 that will not make them happy campers 09:40:16 it will do for a start, though 09:40:29 kind of like XFree did ... 09:41:00 if nothing is out for your card yet, you can always rely on the SVGA drivers 09:41:09 even though it's slow and limited 09:44:50 ur forgetting tho MrReach - forth is extensable 09:44:50 we just extend "THE" driver 09:44:50 heheh 09:45:28 and now we're back to code bloat 09:45:37 which is what we were trying to avoid 09:46:13 heheheheh 09:46:25 you cant bloat something that doesnt exist :P 09:46:39 actually, you're right, though 09:47:00 how would bloat occur? 09:47:01 video acceleration has been incremental, rather than revolutionary 09:47:09 yeah 09:47:17 that's why hardware is so poorly designed :P 09:47:30 futhin: coders would keep appending functionality to the existing universal driver 09:47:31 intel crippled by backward compatibility 09:47:58 until it was HUGE 09:48:14 well the universal driver would be more of a pointer. and you just code some driver and then point to it if you need it.. 09:48:22 i would think that would be the better design 09:48:32 when a better solution is to develope a seperate driver for each card/chipset 09:48:37 yeah 09:48:43 leading to 1000s of smallish drivers 09:48:46 or we could code an AI universal driver!!!! 09:49:04 not only would that be very large, but slow, too 09:49:23 would be interesting just for the research, though 09:49:30 yeah whatever, it would be hella smart ;) 09:50:28 it's interesting to note ... 09:50:54 that the more sophisticated the card, and the more functionality it supplies ... 09:51:05 the smaller the associated driver becomes 09:51:11 heh 09:51:13 really? 09:51:17 interesting 09:51:29 because those functions not supplied by the hardware must be emulated in software 09:52:22 yeah i suppose 09:52:27 what functions are you thinking of? 09:52:36 anything 09:52:53 for example ... surface texture functions 09:53:04 bitblotting 09:53:13 polygon drawing 09:53:28 color fades/mutations 09:53:49 eachof these things are supported by some cards, but not by others 09:54:25 the API would support all of these things, of course 09:54:47 the driver would call upon the card hardware to do the ones the card knows how to do 09:54:52 brb 09:54:54 and emulate the others in software 09:55:22 that is what DirectX is all about 09:55:41 yyeah 09:55:42 a huge library of very useful video functions 09:56:29 when the card is initialized, is tells the OS "hey! I know how to do X Y and Z, so call me to do those and emulate everything else." 09:57:11 in programming, this is called "functional hooks" 09:57:32 hm 09:58:43 in Forth, funtional hooks are often implemented with the DEFER ... IS wordset 10:02:04 although with a library this big, a dispatch table and application imported helper words would probably be MUCH more efficient 10:03:44 I440r: IYO, is it better that syscalls use registers rather than the stack to pass/return params? 10:03:49 so what are you coding on right now? the forth code that isn't going to become public? 10:03:59 or is it the light sound machine 10:05:02 a light/sound machine for hypnosis 10:05:02 syscalls use registers, and numbers on the stack end up in the registers.. 10:05:18 numbers at TOS end up in registers.. 10:05:29 yes, I know 10:05:46 I was wondering if I440r thought it an advantage to do it that way 10:05:58 it clobbers your registers 10:06:18 so you have to save everything somewhere (usually the stack) before doing the syscalls 10:07:54 so the advantages are not so clear anymore 10:28:52 arg! time to reboot this damn windows machine 10:28:55 brb 10:29:03 --- quit: MrReach () 10:33:27 --- join: MrReach (~mrreach@209.181.43.190) joined #forth 10:33:32 wb 10:33:36 danke 10:38:24 ugh sorry had to go afkto do something 10:38:24 what do i use to read .ps .eps and .lyx files ? 10:38:24 in windows? 10:38:56 ok, I'm assuming that .lyx is from lynx browser, not much to do with them in windoze 10:39:15 .eps can be copied directly to many laser printers 10:39:32 oh well 10:39:37 the reason linux uses registers for syscall parms is,.,... 10:39:42 .ps should be passed to Ghostscript for windows (with Ghostview installed) 10:39:55 no, lyx is some document format thingie 10:40:03 the kernel maintains its own stack. ans would have to mess with theprocesses stack to get the parameters 10:40:07 ok, I've never seen it 10:40:12 it's called something 10:40:27 linux syscall mehcanism doesnt need to figure out where the process stack is when in kernel mode in order to get the parameters 10:40:28 it's a four letter word that has been contracted to 3 letters = lyx 10:40:30 i forget 10:40:37 linux is faster than freebsd because of this 10:40:44 freebsd pushes parameters 10:40:50 ok, gotcha, I440r 10:40:56 the drawback is "not ennuff registers" heh 10:41:07 yes, and having to save stuff 10:42:01 the linux.1 and freebsd.1 sourcefiles are used to create syscalls.1 by the make file 10:42:31 the tuff in those files is syscall stuff only 10:42:46 freebsd.1 is not in a working state for sure 10:42:58 linux.1 is heh 10:43:24 i moved some stuff out of linux.1 that doesnt need to be in there 10:43:24 like the bss section 10:43:32 freebsd.1 still assumes that the bss is in its source file 10:43:36 what's freebsd.1 doing in a linux forth ? :P 10:43:40 linux and freebsd must use identical bss so i moved it out 10:44:07 tcn uses bsd 10:44:20 and if we had a dos.1 it would work there too 10:44:33 cept we would have to change the -felf to somehing else for that heh 10:44:57 HA! DOS! 10:45:48 * MrReach sings merrily, "I'm a broken DOS pot now patch me up!" 11:55:33 --- quit: futhin ("bye") 12:34:33 --- quit: I440r (Connection reset by peer) 12:56:47 --- join: I440r (~mark4@1Cust118.tnt3.bloomington.in.da.uu.net) joined #forth 14:30:03 --- join: KelvinW (KelvinW@sdu19-218.ppp.algonet.se) joined #forth 14:30:28 hi 14:31:20 hi! :) 14:31:44 u a forth coder ???? :) 14:32:10 no, not really.. ;) 14:32:22 aha heh 14:32:32 most c coders arent realy too :) 14:32:43 ha! 14:33:29 no.. i grew up with (basic, before that of course) C.. and forth is surely a diffrent programming approach :) 14:34:18 i started with assembler 14:34:22 then forth 14:34:32 then - because i was forced to learn it - c 14:34:33 --- join: aum (~aum@l76-145.world-net.co.nz) joined #forth 14:34:37 aum!!! 14:35:09 yeah.. i'm dabbling with both forth and lisp-- very un-C'ish.. 14:35:36 i never liked c 14:36:02 i never liked pascal ;) 14:36:18 heh i never learned it :P 14:36:29 tho i have converted pascal to asm :) 14:36:41 --- quit: aum (Client Quit) 14:36:42 don't forget COBOL 14:36:49 who ? 14:36:55 who's he ??? :) 14:36:58 best language ever used 14:37:05 mrreach!!!!!!!!!!!!!!!!!! 14:37:08 grrr!!!!!!!!!!!!! 14:37:12 WHAT?!?! 14:37:34 * MrReach offers I440r an antacid. 14:38:16 forth is the best lang 14:38:20 even better than english 14:38:32 we should all talk like yoda and fare :) 14:38:36 ;) 14:38:51 good is forth! 14:39:07 ' good is forth ? 14:39:07 hehe 14:39:30 god ! . "forth" ok 16:45:21 --- quit: I440r ("brb") 16:53:19 --- join: I440r (~mark4@1Cust118.tnt3.bloomington.in.da.uu.net) joined #forth 17:42:35 --- join: aum (~aum@l76-145.world-net.co.nz) joined #forth 18:00:38 --- quit: MrReach (Read error: 110 (Connection timed out)) 18:28:02 --- quit: I440r ("Reality Strikes Again") 18:29:18 --- join: Soap- (~flop@210-55-149-241.dialup.xtra.co.nz) joined #forth 18:53:36 * aaronl is away: dinner 19:05:52 --- quit: Soap- (Read error: 104 (Connection reset by peer)) 19:08:36 * aaronl is back (gone 00:16:15) 19:20:59 --- quit: aum (Read error: 104 (Connection reset by peer)) 19:41:05 --- quit: KelvinW () 20:06:38 --- join: Soap- (~flop@210-55-149-241.dialup.xtra.co.nz) joined #forth 20:12:10 --- join: BikoZaar (BounceBack@ip68-11-180-77.br.no.cox.net) joined #forth 20:12:24 'allo 'allo 20:13:18 --- part: BikoZaar left #forth 21:09:20 --- quit: Soap- (Read error: 110 (Connection timed out)) 21:19:24 --- join: futhin (thin@h24-64-174-54.cg.shawcable.net) joined #forth 21:19:30 howdy 21:19:53 --- quit: futhin (Client Quit) 21:59:48 'oi 22:53:26 --- join: Soap- (~flop@210-54-195-109.dialup.xtra.co.nz) joined #forth 23:59:59 --- log: ended forth/02.02.04