00:00:00 --- log: started forth/03.11.06 00:30:46 --- quit: skylan (Read error: 110 (Connection timed out)) 01:14:56 * warp0x00 is away: macerate and petrify 01:40:05 --- join: Serg_Penguin (~z@212.34.52.140) joined #forth 01:46:56 hi 01:47:12 hi ;)) 01:47:32 i lit the lamps :)) but still have trubblez 01:47:41 i am about to go eat 01:48:09 i thought of homemade cameras on the road to home ;)) 01:48:21 hmm? 01:48:26 invented a shutter made of disbalanced disk ;)) 01:48:37 w/ cut sector 01:48:44 i'm still about to go eat >:) 01:48:49 ok,ok 01:49:20 i'll be back in 30-60 mins 01:50:30 talk to you later 01:50:40 * mur read last niht until 6 am !!! :( 01:50:44 2 hours of sleep 02:13:55 --- join: skylan (sjh@vickesh01-4767.tbaytel.net) joined #forth 02:45:45 --- nick: schihei_zzz -> schihei 02:53:27 --- join: Zoopee (alsbergt@zoopee.org) joined #forth 02:53:39 Hi there :-) 02:56:27 I learned a bit of Forth - but something is bothering me... Being a language with no "syntax" - vocabulary, constant, and others are words like every other word. But they're a bit special, in that they can also get "arguments" after them (and not only before them). How are such words defined? How can I define a word which will cause the next word(s) be handed over to it instead of interpreted as any other? 02:56:52 (Also the word s" behaves like this) 02:58:12 hi Zoopee ! 02:58:29 Hi, Serg_Penguin... 02:58:34 first of all, two must-read paper books: 02:58:58 "Starting Forth" and "Thinking Forth" by Leo Broudie 02:59:24 s" effect is achieved by the word WORD ( -- ) 02:59:31 err WORD ( -- a ) 02:59:47 no, no 02:59:57 WORD ( c -- a ) 03:00:06 example : 03:00:23 BL WORD XYZZY COUNT TYPE 03:00:34 BL leaves 32, code of space 03:01:00 WORD reads space-delimited word ( XYZZY ) to some mem location, and gives it address 03:01:12 I wanted to read some real Forth books... But I am not sure I'd buy some (at least now, that I'm just starting with it a bit), and the CS&Math library at the university here has none... 03:01:30 so seek online text 03:01:46 i'm russian and have plenty text in RU 03:01:51 Yeah... well, I have a few, but failed to find info on it in them... 03:02:12 so, i go on 03:02:15 Er... what does c mean? 03:02:23 c - char code, byte 03:02:25 (and what does a mean)? 03:02:27 a - adress 03:02:36 my style of stack comments 03:03:02 WORD ( c -- a ) means WORD consumes char code and leaves address 03:03:29 Serg_Penguin: I know stack layout comments. I just didn't know what a and c are... 03:04:01 let's define word .( , print comment 03:04:27 Cool... Maybe an example will clarify it to me. 03:04:30 : .( ASCII ) WORD COUNT TYPE ; IMMEDIATE 03:05:05 usage example: 03:05:09 What's COUNT and TYPE? 03:05:48 (Both give me a data stack underflow in a vanilla environment) 03:05:55 wait, i'll test example to avoid lie 03:07:03 COUNT ( a -- a+1, n ) 03:07:11 TYPE ( a n -- ) 03:07:38 TYPE is obvious 03:08:12 COUNT takes 'a' of length-prefixed line, returns addres of first char and length 03:08:41 : COUNT dup 1+ swap c@ ; 03:08:55 -- 03:09:45 Cool... 03:10:49 : print count type ; - common word in many Forths 03:11:48 Forth is ideal for writing text-processing utils ;)) 03:12:00 Oh... So Type prints the first n characters pointed by address a? 03:12:05 s/Type/TYPE/ 03:12:11 yes 03:12:41 what Forth do u use, on what OS ? 03:13:03 ficl on Linux... 03:13:18 never tried 03:14:05 gforth annoyed me because it doesn't break lines (it prints the ok and all output on the same line as the input) 03:14:50 heh, just rewrite it's "main loop" (Lisp term) and be happy don't worry 03:15:13 Yeah - but in my level I wasn't yet into doing that... 03:15:14 it'll be good exercise for u ! 03:15:28 OK... I'll try. 03:15:38 just dig a source, usually mainloop is QUIT ;)) 03:15:46 type QUIT now in ficl... 03:16:20 Cool... A weird name for a main loop... 03:16:34 why ? 03:17:01 you write QUIT in your proggie to return to command shell - Forth itself 03:17:02 Uh, I'd expect a function named quit to quit something... 03:17:27 it _does_ quit from your proggie to initial Forth 03:17:43 Serg_Penguin: But it doesn't return to the command shell... It invokes another command shell inside the program... 03:17:49 (I suppose)... 03:18:10 a while ago, Forth was OS and shell of itself, running on bare hardware 03:18:24 Serg_Penguin: I know (or read, at least)... 03:18:27 and now such Forths do exist for PC 03:19:24 But if I am right now in the main loop, and then in some other word (function), and then execute QUIT, I should get into another (inner) "main" loop, shouldn't I? 03:19:57 in one of my games, key ` is bound to QUIT, and ` is name of game's mainloop word 03:20:00 the return stack would be:
QUIT... 03:20:48 QUIT may clear return stack be4 entering loop ;))) 03:21:04 Oh... 03:21:33 or even do it in every loop - just study the source 03:21:37 re 03:21:42 re mur 03:22:11 Can I not redefine QUIT from within QUIT? 03:23:03 you can 03:23:18 you'll have in dictionary 03:23:40 (old) ... QUIT ... QUIT ... (new) 03:23:54 after : quit ... ; you return to old 03:24:02 Yeah... So I don't really have to change the source of forth... 03:24:11 you gotta type QUIT to get to new one 03:25:03 may or may not, depends of details 03:28:42 What does the word ' do? 03:32:02 OK... in gforth this is a bit of a problem. Since QUIT is defined as something not small with throw, an undefined word ">tib", and using 'quit which is defined "' (quit) IS 'quit", I suppose, though I do not understand it. 03:33:54 How do I get the address of a word? (That is - is there a way to change the definition of an existing word by compiling new code into its address, as opposed to shadowing it with a new word, which will not affect whatever's already compiled with that word)? 03:36:47 heh... if u wanna patch words, do it this way: 03:37:12 GOTTA GO - URGENT WORK 03:37:42 cu l8r at monday, 9:00 - 18:00 Moscow, Russia (GMT +3) 03:43:29 : hack ' ' 2dup ! 2+ ['] exit ! drop ; 03:43:32 UNTESTED 03:43:43 usage : hack myquit quit 03:43:50 BYE ! 03:43:52 --- quit: Serg_Penguin () 06:01:24 --- quit: Zoopee ("System maintenance") 07:29:10 --- join: Robert (~snofs@c-255a71d5.17-1-64736c10.cust.bredbandsbolaget.se) joined #forth 08:16:26 ahahahaha AGENT SMITH BITES OFF NEO'S FATHER AND FALLS INTO KEIZER SOZE 08:22:08 I see... 08:26:38 Robert: its the truth 09:18:13 warp0x00: you have seen Matrix 09:57:11 --- quit: Robert ("brb") 10:13:11 --- quit: schihei ("Client exiting") 10:29:24 --- join: Robert (~snofs@c-255a71d5.17-1-64736c10.cust.bredbandsbolaget.se) joined #forth 10:37:01 --- join: Herkamire (~jason@h000094d30ba2.ne.client2.attbi.com) joined #forth 11:13:23 --- join: tathi (~josh@pcp02123722pcs.milfrd01.pa.comcast.net) joined #forth 13:12:54 --- log: started forth/03.11.06 13:12:54 --- join: clog (nef@bespin.org) joined #forth 13:12:54 --- topic: 'where people get together to talk about CVT, stirling engines, tesla turbines, data structure and algorithm design, and occasionally Forth' 13:12:54 --- topic: set by kc5tja on [Wed Oct 15 21:47:35 2003] 13:12:54 --- names: list (clog tathi Herkamire Robert skylan chandler superdave mur onetom ianP melinda warp0x00 mmanning TreyB oooo MysticOne @ChanServ njd) 14:15:30 --- quit: tathi (""restarting X"") 14:15:57 --- join: tathi (~josh@pcp02123722pcs.milfrd01.pa.comcast.net) joined #forth 15:32:49 --- quit: superdave (Read error: 60 (Operation timed out)) 15:49:05 --- join: Sonarman (~matt@adsl-64-169-95-6.dsl.snfc21.pacbell.net) joined #forth 15:59:30 --- join: lma (~markus@lns-p19-7-82-65-242-137.adsl.proxad.net) joined #forth 16:40:16 --- quit: tathi ("leaving") 17:24:47 --- join: kc5tja (~kc5tja@66-91-231-74.san.rr.com) joined #forth 17:25:01 YAY! I got an MFJ-949E antenna tuner today. :D 17:25:56 * kc5tja is trying to figure out where, exactly, to put it. It changes the whole station setup. 17:31:09 --- quit: lma (calvino.freenode.net irc.freenode.net) 17:31:39 --- join: lma (~markus@lns-p19-7-82-65-242-137.adsl.proxad.net) joined #forth 17:49:26 --- join: TheBlueWizard (TheBlueWiz@pc87dn1d.ppp.FCC.NET) joined #forth 17:49:26 --- mode: ChanServ set +o TheBlueWizard 17:49:36 hiya all 17:52:43 Howdy 17:52:54 * kc5tja is happy -- he got an MFJ-949E antenna tuner today. :) 17:53:06 * kc5tja is trying to figure out where to put things so that the station setup is nice and neat now. 17:53:06 hiya kc5tja 17:53:57 * TheBlueWizard nods all smiling, like a wife nods at her hubby jumping in joy at his acquisition of a Porsche ;) 17:58:00 uhhh 17:58:02 not exactly how to take that. :) 17:58:14 Although this thing isn't exactly a Porsche. :D 18:01:11 I am referring to the reaction the wife is having....see, I don't know a shit about MFJ-949E antenna, and what can I say, but just nods all smiling, see? 18:05:52 :) 18:06:42 --- join: I440r (~nospam@12-178.lctv-a5.cablelynx.com) joined #forth 18:06:48 hiya I440r!!!! 18:07:03 wow look at all the idlers in here now!!! 18:07:05 * TheBlueWizard thinks mmanning is a secret clone of I440r :) 18:07:16 i dont know him 18:07:17 :) 18:07:28 What's funny to me is that, because I forgot to pick up a quick jumper cable, I have 100ft of coaxial cable connecting the radio to the tuner, which is a mere 3 inches above the radio. :) 18:07:28 thats me at work :P 18:07:38 re I440r 18:07:42 lol 18:07:44 I440r: heh 18:07:47 hi kc :) 18:14:02 I440r: speaking of idlers, arke always snipes that I don't stay more than 3 minutes...I so want to smash his balls :) 18:15:13 Heheh 18:17:59 * TheBlueWizard hopes arke will read this message in ~nef's log and get pissed :) 18:18:39 * kc5tja giggles 18:20:18 * TheBlueWizard suddenly realizes the apparent contradiction....some remark from kc5tja about saving up money, and the acquiring of an antenna (presumably bought)....and hmms 18:27:01 well, gotta go...bye all 18:28:09 --- part: TheBlueWizard left #forth 18:28:33 Ummm.... 18:29:00 For the purposes of the log, I did make plain that I was in the market for an antenna tuner, and that I was saving up money for that purpose. 18:29:07 I have other things which I will be saving up money for as well. 18:29:21 There is little point in saving up money if you're not going to be using it for something. 18:48:48 got I hate xml 18:51:17 s/got/god/ 18:52:02 don't worry, every ham knows that your rig comes before all else 19:00:09 chandler: Well, I've been saving up for the rig for about 3 to 4 years total, and the tuner pretty much *since* then. 19:00:18 (which makes it about another 3 years) 19:00:24 s/3/2/ 19:07:34 cool 19:13:14 Cool! I just tuned an end-fed wire to 40m!! 19:49:27 * MysticOne pokes kc5tja with a monkey 19:50:02 * Sonarman calls the Jane Goodall society to report primate abuse 19:50:26 hahaha 19:51:48 there coming to take you back to the jungle, MysticOne 19:52:58 ooh ooooh EEEEEE!! EEEEEEEEE! 19:53:03 Hehehe :D 19:53:09 * kc5tja pokes MysticOne with an Orca. 19:53:14 * MysticOne is violated 19:53:26 Dude, this antenna tuner works so damn awesome! 19:53:30 * Sonarman gets AIDS from MysticOne 19:53:37 kc5tja: btw, the cable we use is Elmar400 or LMar400 ... something like that 19:53:42 * kc5tja tuned a 16' long piece of magnet wire strung outside, lying on the ground, down to 160m!! 19:53:47 * MysticOne eyes Sonarman strangely 19:54:08 Sonarman meant Kool-AIDs, I'm sure. :D 19:54:27 kc5tja: the cable is 0.7dBm loss per 10 feet, and each connector (N-type) is 0.5dBm loss 19:54:32 kc5tja: so 1.7dBm loss in 10 feet 19:54:45 * kc5tja nods 19:55:27 * kc5tja needs to replace his 100' long RG-58U patch cord from the radio to the tuner with a much smaller one. I'm sure that'll improve tuning substantially. 19:55:28 :) 19:55:34 hehe 19:55:43 * kc5tja forgot to pick one up at the store today. 19:57:03 * kc5tja is listening to a QSO on 160m right now, and it's coming in very, very loud. 19:57:10 But without the tuner, it's utterly inaudible. 19:57:33 And I can tune most any frequency on 40m to 1:1 SWR too. 20:00:38 * kc5tja pokes MysticOne ... with a stick this time. 20:02:03 hey kc 20:02:04 sup 20:02:48 Well, as you've probably already read, my amateur radio station is now "complete" from an operational stand-point. 20:03:17 The antenna tuner gives me virtually complete frequency agility, so I can transmit on almost any amateur radio band without having a dedicated antenna for each band. 20:03:24 And it really improves reception too. 20:05:53 er cool i guess 20:06:35 :) 20:06:38 kc5tja: i had some questions 20:06:45 ok 20:06:56 can i query you? 20:07:23 Sure -- no guarantees that I can answer with useful information though. It all depends on the questions. :) 20:07:31 okay 20:09:40 Wow. Station from San Francisco coming in here at San Diego on 160m band. That's a long distance for a signal to travel on 160m at this time of night. 20:12:16 --- join: gilbertdeb (~gilbert@fl-nked-ubr2-c3a-37.miamfl.adelphia.net) joined #forth 20:12:24 whats news? 20:12:47 hmmm. has something changed? 20:12:57 did the #forth get more members? 20:13:32 yes 20:13:33 me 20:13:48 and mel* as well. 20:14:03 so do you use forth? 20:14:11 yes 20:14:15 what for? 20:14:28 simple arithmatic 20:14:34 dc 20:14:57 no uh open firmware 20:15:36 ^_^ 20:15:56 ah i see :) 20:16:24 how do you print numbers in dc 20:17:01 hmm? 20:17:02 p 20:17:29 how do you pop 20:17:30 what's dc? 20:18:16 desk calculator 20:18:26 its a RPN calculator. 20:18:41 gilbertdeb: how do you pop? 20:19:09 oh yeah 20:19:10 thanks 20:19:12 oh n 20:19:14 s 20:19:32 er P 20:20:03 is dc like forth 20:20:10 No. 20:20:20 it's just a RPN calculator. 20:20:34 im used to . being pop and print, is that more forth like 20:21:06 != dc forth 20:22:55 whats a real forth interpereter 20:23:24 gforth 20:23:31 isforth, gforth etc 20:23:50 * warp0x00 emerges 20:24:34 brb 20:24:41 --- quit: warp0x00 ("brb") 20:26:49 --- join: warp0x00 (~warpzero@dsl.31.mt.onewest.net) joined #forth 20:27:25 anyway, I have to keep reading closing time. 20:27:35 Yossarian is about to leave the hospital :D 20:27:40 adios 20:27:43 --- part: gilbertdeb left #forth 20:30:58 this dude is petting a dead fish 21:15:07 Back. 21:20:03 --- quit: I440r (Read error: 104 (Connection reset by peer)) 21:53:33 --- quit: Herkamire ("bedtime") 22:11:35 --- quit: Sonarman ("night") 22:24:38 Bedtime for me. 22:24:47 --- quit: kc5tja ("THX QSO ES 73 DE KC5TJA/6 CL ES QRT AR SK") 22:26:19 i killed him 22:47:02 --- join: segher (~segher@blueice1a.de.ibm.com) joined #forth 23:59:59 --- log: ended forth/03.11.06