00:00:00 --- log: started forth/03.09.28 00:15:26 * kc5tja is back (gone 02:08:24) 00:25:39 --- quit: zardon ("Hey! Where'd my controlling terminal go?") 00:52:11 --- quit: kc5tja ("THX QSO ES 73 DE KC5TJA/6 CL ES QRT AR SK") 01:52:07 --- quit: SDO (Read error: 110 (Connection timed out)) 02:18:02 --- join: SDO (~SDO@co-trinidad1a-42.clspco.adelphia.net) joined #forth 02:35:11 --- quit: SDO ("Vision[0.9.6-0203]: i've been blurred!") 02:35:52 --- join: fridge (~fridge@dsl-203-33-164-231.NSW.netspace.net.au) joined #forth 02:35:58 Morning. 02:36:49 --- join: SDO (~SDO@co-trinidad1a-42.clspco.adelphia.net) joined #forth 02:54:01 --- topic: set to 'F.O.R.T.H - one layered, reflexive, integrated. Evergrowing Wiki for extended communications: http://www.forthfreak.net/wiki/' by rO| 03:01:53 --- join: Speuler (~Speuler@mnch-d9ba4f3a.pool.mediaWays.net) joined #forth 03:02:00 'morning 03:05:25 Good Morning. 03:07:11 ah.. 03:07:14 bashburner 03:07:17 :) 03:11:26 hey beuler, take care ;-) 03:17:33 i think you can get rid of the construction images 03:17:58 hi klaw. you think it got to that point ? 03:19:08 (i sort of like them :) 03:19:49 bit those are just two image links in the start page, which can be edited 03:19:51 but 03:22:51 Klaw: how does this look like ? 03:24:02 hi 03:24:20 hi 1tom 03:24:22 could some1 produce a very minimal 4th exe 03:24:31 what executes 144 sqrt? 03:24:47 : sqrt 0 tuck ?do 1+ dup 2* 1+ +loop ; 03:24:58 : sq144 ( n1 -- n2 ) 12 ; 03:25:05 :) 03:25:48 id like 2 measure the actual minimal code needed by this routine 03:26:21 can't do that with my linux compiler yet, haven't got +loop implemented as far 03:27:07 but i got sqrt as primitive somewhere 03:30:00 onetom shall i /query you for the code (386) ? 03:30:22 yes 03:30:34 but what code? 03:31:20 quicker one with bigger number 03:32:12 yeah, i already saw it somewhere, but i cant learn it :) 03:32:27 the one you've given takes advantage of the fact that (n+1)^2 - n^2 = 2n+1 03:33:07 yup 03:33:20 that makes it simple 03:33:28 but inefficient for bigger numbers 03:33:44 and what about yours? 03:33:50 what the theory behind it? 03:34:11 fixed number of iterations for specific number of bits 03:34:36 t'is like stepwise division, but using two digits at once 03:34:52 is not "mine" , i only implemented it 03:35:04 i dont really understand that either 03:35:04 the algorithm is i think newtons 03:35:11 could teach it 2 me? 03:36:04 10 years ago i understood it :) 03:36:11 heh 03:36:16 that's about when i've implemented it 03:36:23 that the problem w me too 03:36:24 lemme see ... 03:38:39 --- join: murrr (murr@baana-62-165-187-43.dsl.phnet.fi) joined #forth 03:38:58 brb 03:39:02 --- quit: rO| (".") 03:39:04 --- nick: murrr -> mur 03:39:39 --- join: rO| (~rO|@pD9545411.dip.t-dialin.net) joined #forth 03:47:28 onetom: 03:47:37 hey 03:47:45 Speuler, onetom, rO| 03:47:46 Robert 03:48:04 onhi mur 03:48:26 onhi? 03:50:14 leftover from another message 03:50:49 on hi mur ? 03:54:03 probably. just was still there 03:54:09 maybe i forgot the tab 03:56:04 ;) 04:00:55 bbl 04:12:35 the wiki is running for about a month now. during that time, there wasn't a single attempt to damage any pages ... 04:12:57 that's good. the forth-ev wiki has shut down because of repeated molestation 04:13:17 (they didn't have rcs on their pages though) 04:13:44 guess that makes a big "thank you" to all those well-behaved visitors 04:15:09 so for the moment it is an asshole-free zone :) 04:16:48 hey ... someone has put the url into the topic ! 04:49:06 mur, terve 04:50:05 mitäs, Robert? 04:50:13 mitäs kuuluu, Robert 04:51:47 * Robert pets mur 04:52:01 * mur hugs Robert 04:52:15 I'm backuping everything here, going to reinstall the system and upgrade HD/RAM on this computer. 04:52:42 64MB isn't enough for ftp/web server + general workstaition use these days, it seems. 05:07:08 AC+B=AB, C+AB=AB, what is AB+AB? 05:09:00 ABAB, a guarding company. 05:09:17 >:P 05:24:47 --- part: Speuler left #forth 05:28:29 mur: Do you have anything important on your shell? 05:28:37 mur: If you do, please backup it now 05:28:42 no i dont 05:28:45 OK 06:20:31 --- topic: set to 'F.O.R.T.H - one layered, reflexive, integrated. Evergrowing wiki for extended communications www.forthfreak.net/wiki' by rO| 06:21:11 * rO| looking for that ibm link now 06:26:58 ok here http://ibm1130.org/sw 06:29:03 --- quit: onetom (Read error: 54 (Connection reset by peer)) 06:30:32 --- join: onetom (~tom@cab.bio.u-szeged.hu) joined #forth 06:35:23 --- join: onetom_ (~tom@cab.bio.u-szeged.hu) joined #forth 06:36:11 --- quit: onetom (Read error: 54 (Connection reset by peer)) 06:36:42 test 06:36:50 --- topic: set to 'F.O.R.T.H - one layered, reflexive, integrated. Evergrowing wiki for extended communications www.forthfreak.net/wiki.' by rO| 08:19:37 --- nick: rO| -> thin 08:19:57 --- topic: set to 'F.O.R.T.H - one layered, reflexive, integrated weapon.' by thin 08:20:11 thin 08:20:29 --- nick: thin -> rO| 08:21:36 Robert: just put it back how and where it was before.. 08:22:41 --- topic: set to 'Evergrowing wiki for extended communications www.forthfreak.net/wiki' by Robert 08:24:57 Robert: discuss w/ speuler about it, if you like ;-) i won't :-) But if i get you right, thx. 08:25:15 About what=? 08:26:17 Oh.. the IBM1130 :) I found that page when looking for info about the first FORTH computer. 08:27:37 --- join: arke (~rk@ca-cmrilo-docsis-cmtsj-b-36.vnnyca.adelphia.net) joined #forth 08:29:49 re arke 08:30:21 y0 08:33:21 Robert: nope, discuss about about 08:33:32 terve 08:33:43 mur: TERBE 08:33:45 eh 08:33:48 mur: terve 08:33:56 rO|: ..? 08:34:08 rO|: About about? 08:34:18 so for the moment it is an asshole-free zone :) 08:34:18 hey ... someone has put the url into the topic ! 08:34:30 What URL? 08:34:45 That URL? 08:34:47 Heh. 08:35:13 and such.. /me outta, you signed ;-) 08:35:39 2nd about was a typo 08:42:05 Speuler is insane... 08:44:00 a Forth written in _bash_ 08:45:24 :) 08:45:56 im waiting for a Forth written in Brainfuck. 08:46:03 .................... 08:46:06 Robert? 08:46:31 Yes? 08:46:36 Of course I'll do that. 08:47:04 I 08:47:09 I'll help too! 08:47:29 lets seeee .... 08:48:45 drop: >>>>>>>>>-<<<<<<<<<< 08:49:17 Duh. 08:49:34 Either you just implement drop as > 08:49:40 Or you use memory arrays 08:49:48 Which is a lot more flexible. 08:49:52 But also slower. 08:49:56 memory arrays? 08:49:59 eh? 08:50:19 are you talking about some brainfuck feature im not aware of that would make my life much easier? 08:50:26 No. 08:50:37 I'm talking about memory arrays - which could be implemented in brainfuck. 08:51:16 Fuck 08:51:22 The best brainfuck page ever is down. 08:51:30 So I can't give you any reference atm. 08:52:42 --- quit: arke (Read error: 104 (Connection reset by peer)) 08:56:03 --- join: arke (~rk@ca-cmrilo-docsis-cmtsj-b-36.vnnyca.adelphia.net) joined #forth 08:58:13 --- quit: rO| (".") 09:07:48 --- join: kc5tja (~kc5tja@66-91-231-74.san.rr.com) joined #forth 09:07:48 --- mode: ChanServ set +o kc5tja 09:10:26 --- join: ez4 (~ez4@pcp01518726pcs.reding01.pa.comcast.net) joined #forth 09:48:46 --- quit: arke (Read error: 104 (Connection reset by peer)) 09:48:47 --- quit: onetom_ (Read error: 54 (Connection reset by peer)) 10:33:16 --- join: I440r (~mark4@0-1pool126-251.nas3.longview1.tx.us.da.qwest.net) joined #forth 10:38:29 --- quit: mur ("Murr.") 10:42:22 --- join: arke (~rk@ca-cmrilo-docsis-cmtsj-b-36.vnnyca.adelphia.net) joined #forth 10:43:24 re arke 10:43:32 gr33ts! 10:43:39 Heh 10:44:06 kc5tja: whats up? 10:44:18 Nothing much. Reviewing some business ideas. 10:44:26 --- topic: set to 'Evergrowing wiki for extended communications www.forthfreak.net/wikicool' by arke 10:44:30 argh damn 10:44:32 --- topic: set to 'Evergrowing wiki for extended communications www.forthfreak.net/wiki' by arke 10:44:43 fun :) 10:44:59 Yeah, since I doubt I'll receive employment at In-n-Out. 10:46:07 lol 10:46:31 My parents have a set of Internet stores that they're planning on opening up, and I'm looking to rent one of those stores. :) 10:46:34 (so to speak) 10:46:43 They do the marketing and books, and I do product delivery. 10:46:50 (and product development) 10:46:54 (and keeping up with the industry) 10:47:01 It's quite a nice setup for me. 10:47:17 :) 10:47:20 And no, they didn't do this because I was looking fro a job either; they're doing it primarily to augment their own incomes. 10:47:31 I just happened to be int he right place at the right time to find out about this. 10:48:15 good one dood! 10:48:39 you mean they wernt going to tell you ??? heh 10:48:45 No, they weren't. :) 10:48:52 They originally had plans for all five stores. 10:48:55 lol 10:49:25 (note that my parents still make money off of my services and products) 10:49:43 (so they still make money out of the deal) 10:54:49 :) 10:57:02 brb 10:57:04 --- part: I440r left #forth 10:59:46 i find it weird that freenode only has 3 us servers :P 10:59:55 Heh 11:00:06 zelazny, tolkien, and carter 11:00:21 most of the time, im on leguin or calvino or brunner 11:00:29 which are all in europe 11:00:40 ive never been on the stephenson server 11:00:43 (canada) 11:01:41 * kc5tja never keeps up with the Freenode politics. 11:02:33 i dont either 11:02:48 i just like looking at which server im on and where in the world they are located 11:03:02 maybe i should just start using irc.us.freenode.net instead ... 11:03:37 then ill be guaranteed to be on zelazny, tolkien, or carter :P 11:04:10 Interesting. 11:04:41 leguin (my current one) is located in sweden :) 11:05:43 --- join: _arke_ (~rk@ca-cmrilo-docsis-cmtsj-b-36.vnnyca.adelphia.net) joined #forth 11:05:53 <_arke_> greetings from tolkien.freenode.net 11:06:09 greetings! 11:06:10 :) 11:06:13 The Ring!!! Is it hidden? IS IT SAFE?!?!! 11:06:23 <_arke_> lol 11:07:06 hrm ... kornbluth is in Frankfurt, DE. I used to live a few miles south from there :) 11:07:17 * kc5tja has never left the states. 11:07:31 <_arke_> kc5tja: wow, you're really missing something 11:07:38 germany is great. 11:07:43 I don't have the income to support travel. 11:07:48 Travelling is expensive. 11:07:49 <_arke_> europe in general is great, really, except for france 11:07:58 lol 11:08:13 I have a friend fo mine who visited france, and he enjoyed the heck out of it. 11:08:19 He wants to go back at least once a year. 11:08:33 <_arke_> :D yeah, ive never been to france really 11:08:37 --- nick: _arke_ -> rk 11:09:03 i heard good and bad things about it 11:09:28 Though, I do want to visit Germany and Italy. 11:10:03 italy is a nice place, especially 11:10:05 erm' 11:10:16 i forgot the city name in english, its venedig in german ... 11:10:17 * arke thinks 11:10:34 arke: venice 11:10:44 arke: ooh, yeah, ok :) 11:11:22 Do you always hold conversations with yourself? 11:11:52 kc5tja: quite often, yes 11:12:05 kc5tja: see, its basically me and him in the same body :) 11:12:24 ah ha... 11:12:36 You're just plain weird. :D 11:12:39 kc5tja: usually, its only one of us IRCing. sometimes, its both though. it makes it fun. 11:13:00 hey, Speuler is the weird one, he wrote a Forth ---- in BASH!!! 11:13:34 arke: well, you're trying to write a compiler in brainfuck. thats even worse, you know. 11:14:03 That explains a lot. 11:14:14 kc5tja: ? 11:14:27 Writing a compiler in brainfuck will tend to . . . fuck with your brain. :) 11:15:44 actually, its very educational. since its harder than assembly, it just trains my brain and gets it used to rigorous amounts of stress. 11:16:01 arke: you could write one in C in 5 minutes. 11:17:41 in case you havent noticed, i'm the programming linguist, hes the hardcore programmer :P 11:18:37 Hmm... I wrote a target compiler in GForth, and will proceed to use it to write a version of FS/Forth for Linux with it. 11:19:25 kc5tja: so, FS/Forth compiles its own source? :) 11:19:34 It will. 11:19:38 That's the goal. 11:19:54 The target compiler is necessarily a different dialect than proper FS/Forth, but the changes to be made ought to be relatively minimal. 11:20:59 rk wants to use C 11:21:36 kc5tja: arke's been through alot of languages ... asm, SML, Forth, the list goes on and on for the languages he wanted to make rkforth in. 11:22:22 kc5tja: it was names after _me_, and _I_ created the project, and _i_ chose C, but nooooo, arke wants to use his funky exotic nobody-uses-them languages :P 11:22:39 rk: alot of people use asm and SML and Forth. 11:22:50 arke: not as much as C or C++ 11:22:56 bah. 11:23:01 OK, I'm finding it difficult to remain coherent in this channel at the moment. 11:23:25 I really can't take dual personae duking it out in a single channel. 11:23:26 kc5tja: i really seriously think like this :) just pretend they're 2 different people 11:23:52 Well, I think multiple sides of a situation too. I just don't publically voice it as if I were two different people. 11:24:26 i guess I could just shut up and let arke talk and think about implementing rkforth ... in C 11:24:52 I need to run some errands anyway. 11:24:57 I have a bed to move down into my room. 11:25:08 have fun 11:25:11 lol 11:25:16 not very fun, i guess 11:25:22 --- part: rk left #forth 11:44:26 why not make arkeforth 11:45:04 and then you can write it in the most obscure language possible =) 12:17:29 --- join: wossname (wossname@HSE-QuebecCity-ppp81931.qc.sympatico.ca) joined #forth 12:18:04 --- quit: arke (Read error: 104 (Connection reset by peer)) 12:18:17 --- join: arke (~rk@ca-cmrilo-docsis-cmtsj-b-36.vnnyca.adelphia.net) joined #forth 12:46:35 --- join: gilbertbsd (~knoppix@fl-nked-ubr2-c3a-37.miamfl.adelphia.net) joined #forth 12:46:48 aloha 12:55:29 Hi gilbertbsd 12:57:33 hi Robert, whats news? 12:58:18 Nothing. :) 13:04:48 --- quit: arke (Read error: 104 (Connection reset by peer)) 13:04:57 --- join: arke (~rk@ca-cmrilo-docsis-cmtsj-b-36.vnnyca.adelphia.net) joined #forth 13:11:55 --- join: rO| (~rO|@pD9545411.dip.t-dialin.net) joined #forth 13:23:46 --- part: gilbertbsd left #forth 13:23:49 --- join: rk (~rk@ca-cmrilo-docsis-cmtsj-b-36.vnnyca.adelphia.net) joined #forth 13:24:01 --- quit: arke (Read error: 104 (Connection reset by peer)) 13:28:30 --- nick: rk -> arke 13:31:25 --- quit: arke (Read error: 104 (Connection reset by peer)) 13:31:39 --- join: arke (~rk@ca-cmrilo-docsis-cmtsj-b-36.vnnyca.adelphia.net) joined #forth 13:32:31 --- join: Robert_ (~snofs@h31n2fls31o965.telia.com) joined #forth 13:33:18 --- quit: Robert_ (Client Quit) 13:35:29 --- quit: Robert ("bbl.. I hope.") 13:52:09 * kc5tja is away: I'm busy. 13:52:16 * kc5tja is back (gone 00:00:07) 13:52:22 oops -- thought I marked myself away. 14:00:47 --- join: Robert (~snofs@h31n2fls31o965.telia.com) joined #forth 14:01:08 --- quit: arke (Read error: 104 (Connection reset by peer)) 14:01:35 --- quit: Robert (Client Quit) 14:02:28 --- join: arke (~rk@ca-cmrilo-docsis-cmtsj-b-36.vnnyca.adelphia.net) joined #forth 14:08:50 --- quit: arke (Read error: 104 (Connection reset by peer)) 14:10:11 --- join: arke (~rk@ca-cmrilo-docsis-cmtsj-b-36.vnnyca.adelphia.net) joined #forth 14:24:08 --- quit: arke (Read error: 60 (Operation timed out)) 14:24:45 --- join: arke (~rk@ca-cmrilo-docsis-cmtsj-b-36.vnnyca.adelphia.net) joined #forth 14:26:50 i know i already asked that question --- how dows a [compile] work on, lets say, : rdrop compile r> compile drop ; immediate 14:26:55 does* 14:42:44 --- join: Robert_ (~snofs@h31n2fls31o965.telia.com) joined #forth 14:45:31 Robert_: y0! 14:45:34 :) 14:45:49 Robert_: how exactly does [compile] work? 14:46:08 --- quit: Robert_ (Client Quit) 14:46:13 grrr. 14:46:24 --- quit: wossname ("^___-") 14:46:34 ]argh. 14:57:38 [compile] is a different word from compile. 14:58:28 --- join: Robert (~snofs@h31n2fls31o965.telia.com) joined #forth 14:59:47 But basically, compile r> causes rdrop (when it executes) to compile a call to r> into the current definition. 14:59:47 kc5tja: i know. compile is for compiled words, [compile] for immediate ones. how does a forth compile an immediate word though? 15:00:00 compile drop compiles a call to drop. 15:00:15 i get that. but how would [compile] work? 15:01:30 The details are very Forth-system specific -- you're tinkering with the very innards of the compiler itself with these words. 15:01:44 heh 15:01:45 well 15:01:50 So it's very, very difficult to answer your question concisely. 15:01:51 how could an immediate word be compield? 15:02:13 thats the part i dont get, compiling an immediate word 15:02:21 : [compile] 32 word find if compile, else wordNotFound then ; immediate 15:02:47 er 15:02:50 where compile, is used to compile a word into the current definition (e.g., in FS/Forth, it'd probably be defined as : compile, $e8 c, a, ; ) 15:02:51 ? 15:03:07 32 word grabs the next word from the input stream. 15:03:26 find locates the word in the dictionary, and returns a true/false flag if it's found or not. 15:03:36 Obviously, if tests the flag. 15:04:08 for comparison, what would compile be? 15:04:08 If it's found, then compile, is used to compile the word's address into the "current definition" (e.g., the definition currently being defined at compile-time). 15:04:59 : compile 32 word find if literal ['] compile, compile, else WordNotFound then ; 15:05:35 Here, literal is used to hardcode the found word's address into the current definition. 15:05:55 ['] compile, compile, will compile an instance of compile, into the target definition. 15:07:10 . 15:07:44 Lots of double-indirection going on here. Don't feel too bad if you don't get it right away. 15:07:51 i dont. 15:07:53 at all. 15:07:59 gerphhh. 15:08:02 This is, btw, one of the things that Chuck Moore himself moved heavily away from in ColorForth -- "it's way too complex. It's not needed." 15:08:14 * kc5tja notes that FS/Forth doesn't have compile or [compile] (yet?) either. 15:08:25 Robert: do you get it? maybe if you explain it i'll get it (although kc is very good at explaining stuff) 15:08:40 kc5tja: hrm. 15:09:34 kc5tja: and postpone is a compile/[compile] hybrid, right? 15:12:18 Yes. 15:12:22 Postpone always does "the right thing." 15:12:59 i guess i might just not have [compile] and have postpone and compile be the same 15:13:03 makes it easier for me 15:13:05 anyway 15:13:18 fsave in isforth saves out itself to a new binary file. 15:13:45 for rkforth, i dont know exactly how im gonna do that. 15:13:57 i thought of 2 different choices 15:14:57 1) fsave xxx saves itself out as xxx.com, using the word "main" as its entry point 15:15:09 2) same as above, but add yyy which is the entry point 15:15:17 both are kinda kludgy 15:15:38 I don't think so. PygmyForth had the 'save' command which took the filename as a post-word parameter. 15:15:50 "save f1.com" is very common idiom in Pygmy. :) 15:15:52 but what was its entry point? 15:16:20 I forget precisely, but I know it was settable. Some word defined with DEFER, so you had to use "IS" to set it. E.g., ' myStartup IS entry 15:16:33 er? 15:16:35 FS/Forth uses an immediate word called [EntryPoint] instead. 15:16:41 : foo ." Hello world!" 15:16:46 ' foo IS entry 15:16:48 fsave f1.com 15:16:49 bye 15:16:53 c:\> f1 15:16:55 Hello world! 15:16:57 c:\> _ 15:17:15 thats nice ... 15:17:15 You get the idea, I'm sure. 15:17:24 FS/Forth does it a bit differently: 15:17:27 is-entry seems nicer tho 15:17:33 : foo [EntryPoint] ." Hello world!" ; 15:17:36 save f1.com 15:17:36 bye 15:17:48 IS is used to revector a word defined by DEFER 15:17:51 DEFER Entry 15:17:52 .... 15:17:54 ' foo IS Entry 15:17:57 Entry 15:18:00 DEFER is? 15:18:05 ' bar IS Entry 15:18:07 Entry 15:18:13 DEFER creates a "deferred word." 15:18:23 A word that doesn't actually exist yet, technically. 15:18:43 : DEFER CREATE ['] dummyWord , DOES> @ EXECUTE ; 15:19:01 : dummyWord -1 ABORT" Unbound DEFERed word error!" ; 15:19:20 only more optimized than that (though it certainly needn't be) 15:19:29 wow 15:19:30 so 15:19:32 DEFER cheese 15:19:35 DEFER blah 15:19:48 : cheese if blah else foo ; 15:19:55 No.... 15:19:56 : blah if cheese else foo ; 15:20:15 DEFER myWord 15:20:18 : cheese ... ; 15:20:20 : blah ... ; 15:20:32 ' cheese IS myWord ( now anytime you call myWord, cheese is executed ) 15:20:42 ' blah IS myWord ( now anytime you call myWord, blah is executed) 15:20:52 wow 15:21:03 i need to find pygmy, this is really nice :) 15:21:06 It's called "vectored execution." IS "re-vectors" the word. 15:21:17 Pygmy even comes with source code, so you can see how everything works. 15:21:24 Pygmy only runs under DOS though. 15:21:47 this is _really_ nice :) 15:21:53 FS/Forth was/is my attempt to capture the spirit of PygmyForth, but in an environment under Linux (and eventually, completely self-hosted). 15:22:23 so wait 15:22:34 what does ['] do? 15:22:47 (im trying to get the DEFER thing :) 15:22:51 It's the immediate version of ' -- it takes the address of the word following it. 15:23:15 aah 15:23:32 so, in general, [xxx] is the immediate one, xxx is the compiled one? 15:23:33 and 15:23:37 yes, now i get it 15:23:39 Generally speaking, yes. 15:24:00 And that comes, BTW, from the use of [ to switch from compile-mode to interpret-mode in the middle of a definition, and ] to switch back. 15:24:02 E.g., 15:24:31 : complicatedConstant [ 3 4 * 5 6 * 7 8 * + + ] literal ; 15:25:30 Here, 3 4 * 5 6 * 7 8 * + + is interpreted, not compiled, which leaves the result on the data stack. Then, for some stupid reason I can't fathom, we use the immediate literal to compile that literal as a constant into the current definition (what's stupid is that it appears inside the normal definition, and not in the interpret-mode code) 15:26:15 literal is an immediate word :) 15:27:01 Yes, for some retarded reason. 15:27:14 I can only think, "What was Chuck POSSIBLY thinking when he made that word immediate?" 15:27:26 i think i would have 15:27:36 FS/Forth also does not support an immediate literal. Instead, in FS/Forth, this is how I would have done it: 15:27:52 : complicatedConstant [ 3 4 * 5 6 * 7 8 * + + literal, ] ; 15:28:31 The idea is that everything between the [ and ] evaluates to a single literal that is compiled into the definition (the , at the end of literal, indicates that it actually compiles something into the current definition). 15:29:41 :) 15:29:51 now, one last question. 15:30:08 Sure. 15:30:20 how would a create/does> word know that the thing that follows is gonna be its future name, or how does the interpreter know? 15:31:37 That's the job of word. 15:31:52 word takes a delimiter as its parameter -- so 32 word parses the input stream up to the next space. 15:32:50 (ANSI expands this definition: 32 word in particular means up to any whitespace character, not just ASCII 32. For all other values, it's taken literally. Bandaid after bandaid after bandaid, the wound still gapes...) 15:33:34 lol 15:33:59 Now you know why I side with Chuck so much on these issues. 15:34:00 white-word or such would be better i guess 15:34:07 They had the chance to fix so many problems, but they didn't. 15:34:21 I would just have said "word", such that it didn't take any parameters at all. 15:34:34 well, you still need word for ." etc. 15:34:36 Then have a word called "string" which DID, and treated the character literally. 15:34:38 Rationale is this: 15:34:58 When you're parsing source text, you never see an idiom other than 32 word. Hence, it's always parsing for whitespace, and hence, the 32 is redundant. 15:35:13 yeah 15:35:14 When you're parsing for strings, you usually parse for a quote character, a slash, or a parenthesis. 15:35:20 Here it makes sense to use a literal character. 15:35:27 So: 15:35:43 : S" [char] " string s-literal, ; immediate 15:35:53 : ." postpone S" postpone type ; immediate 15:36:07 Just my opinion. :) 15:36:20 but ANSI is already set in stone, and it won't be changed anytime too soon. 15:36:36 * arke punches ANSI :) 15:37:12 S" cheese" --> cheese\0 or 6cheese ??? 15:37:13 ANSI Forth is really optimized to enhance cross-platform portability between the Forths of various vendors. 15:37:41 None of the above. :) 15:37:51 It creates two stack entries: ( c-addr u ) 15:38:07 c-addr is the pointer to the string's data, and u is the string's length in characters. 15:38:12 oh 15:38:13 ok 15:38:14 :) 15:38:20 type then is ( a you -- ) 15:38:25 damn xchat lol 15:38:32 i remember now :) 15:38:48 It's odd to work with once you first encounter it. But once you're used to it, there's no going back. That is the one thing I DO like about ANSI Forth, and I do keep this in FS/Forth. 15:39:24 :) 15:40:01 i think im gonna use a purely literal word and a white-word 15:40:02 :) 15:40:16 `Yeah, FS/Forth does the same. 15:40:36 My DOS version used ParseWord and ParseString, but I'm going to shorten them up to just word and string. 15:41:02 (for the Linux version that is) 15:41:15 anyway, thanks alot very much, once again :). 15:41:25 n/p 15:41:32 i dont know what id do with rkforth if you wouldnt answer all my annoying question :P 15:41:39 Heheh :) 15:41:39 anyway, gotta go for a bit 15:41:43 okies 15:41:49 * arke is away: cleaning car 16:09:09 --- quit: arke (Read error: 104 (Connection reset by peer)) 16:40:03 --- join: rk (~rk@ca-cmrilo-docsis-cmtsj-b-36.vnnyca.adelphia.net) joined #forth 16:58:10 --- join: rO|_ (~rO|@pD9EE1EC6.dip.t-dialin.net) joined #forth 16:58:38 --- join: TheBlueWizard (TheBlueWiz@207.111.96.11) joined #forth 16:58:38 --- mode: ChanServ set +o TheBlueWizard 16:58:44 hiya all 16:59:35 Greetings. 16:59:50 hiya kc5tja 17:00:11 Just reading up on Slackware's package format. 17:00:14 Nice and simple. Clean. 17:04:36 gotta zip...bye all 17:04:51 --- part: TheBlueWizard left #forth 17:16:01 --- quit: rO| (Read error: 110 (Connection timed out)) 17:27:18 * kc5tja is away: Moving furniture. 17:40:33 * rk is away: I'm busy 17:40:41 --- nick: rk -> arke 17:40:57 * arke is back (gone 00:00:02) 18:09:01 soooooooooooooooooooooooooooooooooooooooo 18:09:02 whats up? 18:12:37 --- join: I440r (~foo@0-1pool126-251.nas3.longview1.tx.us.da.qwest.net) joined #forth 18:12:45 I440r: Greetings!!!! 18:12:50 hi 18:12:58 messing arroud with RAID 18:13:02 fun :) 18:13:12 I440r: im messing with RkForth 18:13:21 I440r: setting up the main loop right now 18:13:38 I440r: DOS EOF is decimal 26, right? 18:27:19 errn 0x1e 18:27:30 i think 18:27:33 ok thanks :) 18:27:34 erm no thats escape 18:27:36 1a 18:29:45 thanks :) 19:02:29 --- nick: arke -> d44thH4x0r 19:05:13 * d44thH4x0r is away: dinner - I f34r n0n3, f0r f0rth sh4ll guid3 m3!! 19:25:18 * d44thH4x0r is back (gone 00:19:57) 19:26:56 --- nick: d44thH4x0r -> arke 19:54:07 --- quit: I440r () 20:01:26 --- quit: arke (Read error: 104 (Connection reset by peer)) 20:01:45 --- join: arke (~rk@ca-cmrilo-docsis-cmtsj-b-36.vnnyca.adelphia.net) joined #forth 20:08:48 --- join: I440r (~foo@0-1pool126-251.nas3.longview1.tx.us.da.qwest.net) joined #forth 20:10:07 --- mode: ChanServ set +o I440r 20:10:23 I440r: welcome back. 20:11:02 ! 20:17:08 --- quit: arke (Read error: 104 (Connection reset by peer)) 20:17:43 --- join: arke (~rk@ca-cmrilo-docsis-cmtsj-b-36.vnnyca.adelphia.net) joined #forth 20:33:29 --- quit: arke (Read error: 104 (Connection reset by peer)) 20:33:53 --- join: arke (~rk@ca-cmrilo-docsis-cmtsj-b-36.vnnyca.adelphia.net) joined #forth 20:49:46 --- quit: arke (Read error: 104 (Connection reset by peer)) 20:50:33 --- join: arke (~rk@ca-cmrilo-docsis-cmtsj-b-36.vnnyca.adelphia.net) joined #forth 21:06:12 --- quit: arke (Read error: 104 (Connection reset by peer)) 21:06:18 --- join: rk (~rk@ca-cmrilo-docsis-cmtsj-b-36.vnnyca.adelphia.net) joined #forth 21:15:07 y0 21:15:11 anybody here? 21:29:47 --- quit: rk (Read error: 54 (Connection reset by peer)) 21:30:08 --- join: rk (~rk@ca-cmrilo-docsis-cmtsj-b-36.vnnyca.adelphia.net) joined #forth 21:33:04 --- join: LOOP-HOG (TofuMonste@207.191.240.24) joined #forth 21:33:22 --- quit: ez4 () 21:33:55 h 21:40:37 I just love Pygmy 21:40:40 :) 21:40:49 i think ill stay up all night messing with pygmy 21:44:54 * kc5tja is back (gone 04:17:35) 21:45:40 27 is ESC; 26 is the DOS EOF character. But it is not consistently used. 21:46:09 --- quit: rk (Read error: 104 (Connection reset by peer)) 21:46:14 --- join: rk (~rk@ca-cmrilo-docsis-cmtsj-b-36.vnnyca.adelphia.net) joined #forth 21:49:15 --- quit: LOOP-HOG (Read error: 60 (Operation timed out)) 21:59:34 --- join: _gps_ (~gps@166.70.196.201) joined #forth 22:02:22 --- quit: rk (Read error: 104 (Connection reset by peer)) 22:02:41 --- join: rk (~rk@ca-cmrilo-docsis-cmtsj-b-36.vnnyca.adelphia.net) joined #forth 22:18:35 --- quit: rk (Read error: 104 (Connection reset by peer)) 22:18:42 --- join: x0nfscked (~rk@ca-cmrilo-docsis-cmtsj-b-36.vnnyca.adelphia.net) joined #forth 22:21:06 --- join: Serg_Penguin (~z@212.34.52.140) joined #forth 22:23:19 HEH 22:23:24 --- nick: x0nfscked -> arke 22:23:33 i got a problem. 22:23:36 im messing with pygmy 22:23:38 and 22:23:51 it doesnt find FOR or NEXT etc. in the dictionary 22:23:59 even after I do a 1 LOAD 22:24:37 it then says that a bunch of words arent unique 22:24:46 including FOR etc. 22:24:49 but 22:24:57 when i type FOR, it just replies with FOR ? 22:25:21 ER 22:25:25 even IF doesnt work 22:25:42 hi 22:25:57 i half-wrote article on terse control words 22:26:07 er? 22:26:37 * Serg_Penguin is busy recovering server from malfunction 22:29:29 arke: I'm confused. 22:29:34 arke: Start over from the beginning again? 22:30:28 kc5tja: I type IF, pygmy says IF ? 22:30:39 kc5tja: even if I 1 LOAD 22:30:56 IF, FOR, NEXT, BEGIN, WHILE, UNTIL, REPEAT, AGAIN, and all other words are compiler words. You can only use them inside of a definition. 22:32:51 PygmyForth has two vocabularies: FORTH and COMPILER. Words in the COMPILER list are immediate (in the GForth/ANS Forth sense). 22:32:59 They are searched only by the compiler. 22:35:32 --- quit: arke (Connection reset by peer) 22:35:37 --- join: rk (~rk@ca-cmrilo-docsis-cmtsj-b-36.vnnyca.adelphia.net) joined #forth 22:38:50 i started writing an article on terse control words for Forth portal... 22:38:56 but i have some difficulty 22:39:31 i can easily describe my words w/ didactic and real examples etc. 22:39:55 but i have trouble sayng WHY write in terse style 22:40:57 i made general plot, wrote about REP fully and ?? partially... 22:41:14 * kc5tja nods 22:41:17 Is this on the wiki? 22:41:23 but the intro, 'Why terse ?', is only 3 lines ;(( 22:41:26 no, at home 22:41:30 Ahh 22:41:34 will bring tomorrow 22:47:44 the 3 lines are: 22:47:54 1) Encourage factoring 22:48:02 2) More meaning at one glance 22:48:29 3) Optimize compiled code size 22:53:40 but it's hard for me to say anything more on these 3 22:58:39 --- join: x0nfscked (~rk@ca-cmrilo-docsis-cmtsj-b-36.vnnyca.adelphia.net) joined #forth 22:59:41 --- quit: rk (Read error: 104 (Connection reset by peer)) 23:05:33 --- quit: I440r (Read error: 110 (Connection timed out)) 23:14:08 --- join: I440r (~foo@0-1pool125-43.nas3.longview1.tx.us.da.qwest.net) joined #forth 23:14:08 --- quit: I440r (Client Quit) 23:14:26 --- quit: x0nfscked (Read error: 104 (Connection reset by peer)) 23:14:52 --- join: x0nfscked (~rk@ca-cmrilo-docsis-cmtsj-b-36.vnnyca.adelphia.net) joined #forth 23:22:05 --- quit: Serg_Penguin () 23:30:30 --- quit: x0nfscked (Read error: 113 (No route to host)) 23:30:57 --- join: x0nfscked (~rk@ca-cmrilo-docsis-cmtsj-b-36.vnnyca.adelphia.net) joined #forth 23:36:18 --- join: Serg_Penguin (~z@212.34.52.140) joined #forth 23:47:12 --- quit: x0nfscked (Connection reset by peer) 23:47:18 --- join: rk (~rk@ca-cmrilo-docsis-cmtsj-b-36.vnnyca.adelphia.net) joined #forth 23:59:57 --- quit: Serg_Penguin () 23:59:59 --- log: ended forth/03.09.28