00:00:00 --- log: started forth/02.11.17 01:21:48 --- join: snowrichard (~richard@66.190.101.66) joined #forth 01:22:03 hey night owls 01:22:24 well its night here anyway ;) 01:25:51 --- quit: snowrichard ("BitchX-1.0c19 -- just do it.") 01:51:22 --- quit: Soap` (Read error: 104 (Connection reset by peer)) 05:47:11 --- part: lament left #forth 07:52:00 --- join: Herkamire (~jason@ip68-9-59-184.ri.ri.cox.net) joined #forth 07:54:45 --- quit: Herkamire (Client Quit) 08:03:08 --- join: futhin (thin@h68-146-166-145.cg.shawcable.net) joined #forth 08:32:39 hello 08:32:44 anybody alive in this chan? 08:42:28 yes 08:45:17 could you do me a favor? 08:45:44 email fox@ultratechnology.com and ask Jeff Fox if any of the code on ultratechnology.com was coded by Chuck Moore 08:47:48 Why? 08:48:52 er 08:49:44 cause i'm too lazy to search all of ultratechnology's mess and because jeff fox hasn't responded to my last two emails 08:50:27 so you want to launch a co-ordinated spam attack against him? 08:50:33 not at all 08:50:42 only need one person to email him 08:51:34 he might have my emails on ignore because my 2nd last email was a bit offensive i bet.. dunno 08:53:07 * Robert laughs. 08:54:02 we were discussing forth & business 08:55:03 And you sent an offensive email to him? 08:56:39 well i said some stuff about how ridiculously easy it would be to sell forthchips and how disruptive technology doesn't have a market, DUH! 08:56:49 :P 08:57:28 disruptive technology don't have a market at first, the market is found thru marketing. both the company and the customers FIND the market 08:58:13 No. 08:58:18 The Conspiracy creates the market. 08:58:42 iTV was doing disruptive technology, but the problem was they were starting off wayyy too big.. they were thinking in orders of millions of units :/ 08:59:31 robert: i'd recommend a canadian economics text book, but i dunno if you can get it? 08:59:51 No. 08:59:53 NO. 09:00:10 the author is gregory mankiw.. awesome text book, read it in a few sittings, read it like i read sci-fi books :D 09:00:35 robert: NOOOOOOOOOO :P 09:00:36 back 09:01:01 hi sexy 09:01:11 Herk: : > - 1 rol 1 and 1- ; 09:01:15 have you used your manly muscles to save the world today xef4? 09:01:33 rol? 09:01:43 isforth doesn't have rol or roll 09:01:50 good for isforth 09:01:57 rotate left 09:02:01 ah, -rot 09:02:34 Eh. 09:02:50 Is it a stack or bit operation? 09:02:59 bit 09:03:04 -rot / roll is a stack operation 09:03:10 Like 2/ then? 09:03:17 Erm 09:03:18 2* 09:03:34 (With carry). 09:03:40 no, if we are talking about -rot / roll 09:03:43 > is > 09:03:54 Robert: like 2* with carry put into the low bit 09:04:00 XeF4: Yeah. 09:04:47 but with an arbitrary number of bits 09:05:52 golum loves segmentation cores 09:05:57 yes my pretty 09:06:01 my precious 09:06:06 core! 09:06:12 apple core! 09:06:14 sing it like a russian! 09:06:24 erm 09:06:29 that's not supposed to mean anything 09:06:58 * futhin was thinking of a certain style of russian dancing, with the legs getting kicked out 09:07:17 you know, the spam commercial with vikings? 09:07:25 and they kept saying spam spam spam 09:08:27 I thought that was a Monty Python sketch 09:09:43 --- join: tathi (~josh@68.9.58.207) joined #forth 09:10:18 Hi tathi 09:10:41 hey Robert 09:13:01 maybe, although i recall reading that the word "spam" was taken (for the new internet-age definition) from some commercial with vikings dancing and singing "spam spam spam" over and over again.. 09:13:12 maybe it was a monty python sketch and not a commercial? 09:14:07 does anybody here want the ability to code forth linearly? 09:14:15 i.e. having main at top instead of bottom ? 09:14:25 (linearly is a bad word but ignore that) 09:14:38 does anybody want the ability to code like.. 09:14:55 : dishwasher fill spin rotate empty ; 09:15:01 : fill ifllupwithwater! ; 09:15:06 : spin blahbla ; 09:15:06 etc 09:15:07 ? 09:15:09 instead of 09:15:13 : fill blahblah ; 09:15:23 : dishwasher fill spin rotate empty ; 09:15:26 well? 09:18:04 you hurt my brain 09:18:08 stop it 09:18:35 you mean do I want forth to automatically stub unknown words? 09:18:40 with deferred words 09:19:28 it can be useful, then again it isn't hard to add to most forths when you need it 09:25:33 you don't need to defer 09:25:40 you can do a reverse interpret 09:25:45 you scan for the last ; 09:25:47 er 09:25:50 you scan for all ; 09:25:52 or something 09:26:00 and then you execute everything after the 2nd last ; 09:26:05 and then you go to the 3rd last ; 09:26:07 but what if my ; is a user-defined word that calls ; 09:26:08 and 4th, etc 09:26:16 and what about create 09:26:34 : someword blahblah ; 09:26:39 create blah 213 allot 09:26:46 : anotherword blahblah ; 09:26:53 you execute from 2nd last ; 09:26:57 and it executes create 09:27:01 then anotherword 09:27:12 (not execute anotherword but compiles it..) 09:27:41 if ; is a user-defined word that calls ; you could put that definition outside the reverse interpret 09:28:04 : ; blahblah ; 09:28:07 (reverseinterpret) 09:28:11 : someword blahblah ; 09:28:15 variable blah 09:28:22 25 blah ! 09:28:26 : anotherword blahblah ; 09:28:32 : word3 blahblaah ; 09:29:23 er, change : SOMEWORD ANOTHERWORD 34 WORD3 ; 09:30:47 it's not hard to make it work 09:30:53 and it doesn't need deferred words 09:30:56 so is it a good idea or not? 09:31:12 will it help make forth coders better coders? 09:31:17 or is it a stupid little crutch? 09:32:04 i guess i'll wait for a forth coder to come to #forth and ask the question again 09:32:52 ;D 09:33:58 back 09:34:08 futhin: that's sort-of practical in colorforth 09:34:35 but in normal, plaintext, traditional forth not knowing what order the code executes in would be a huge handicap 09:35:22 futhin: that woudl be evil :) 09:35:56 the order would be more or less obvious 09:36:00 consider eg.. 09:36:14 because you would have the (reverseinterpret) word at the beginning of the code 09:36:17 or something.. 09:36:25 : foo blongo @ transformatate blongo ! ; 09:36:38 asdf jkl foo bar baz quux 09:36:43 create blongo , , , 09:36:49 --- join: wossname (wossname@HSE-QuebecCity-ppp82140.qc.sympatico.ca) joined #forth 09:36:51 no 09:36:54 you don't do it like that 09:37:00 create blongo comes before foo 09:37:20 it doesn't change the interpretation of the individual words 09:38:42 so it builds a dictionary of indices into the code, then first compiles something when a colon definition is executed? 09:39:58 normal way: 09:40:00 create blongo 12 allot 09:40:00 : foo 3 0 do blongo dup 4+ dup rot ! loop ; 09:40:00 : main ." doing something" foo ; 09:40:25 other way: 09:40:46 reverse-interpret 09:40:46 : main ." doing something" foo ; 09:40:46 create blongo 12 allot 09:40:46 : foo 3 0 do blongo dup 4+ dup rot ! loop ; 09:40:46 endreverse-interpret 09:41:24 why would you want to do that? 09:41:28 does blongo get created before or after it is encountered in foo 09:41:31 so you have main at top 09:41:33 instead of bottom 09:41:38 why are strings in forth like this: ." mehleggen?" 09:41:54 wossname: that's output 09:41:58 wossname: printf 09:42:13 ah, automagic 09:42:41 xef4: blongo gets created before foo. 09:42:48 futhin main should be at the bottom no matter what language you're programming in 09:42:57 futhin: according to what rules? 09:43:04 tathi: in C, main() is usually at the top 09:43:21 not when I'm the one writing the code it isn't 09:43:31 xef4: all reverse-interpret does is looks for 2nd last ; executes everything after second last ; 09:44:03 but you can code however you want :) 09:44:29 just don't ask me to read it 09:44:35 xef4: for example, if you execute the stuff after ; at the end of the MAIN word, the interpreter sees: create blongo 12 allot : foo 3 0 do blongo dup 4+ rot ! loop ; 09:45:05 futhin: so it just textually scans through the source and blindly starts interpreting when it encounters the second-last ; ? 09:45:20 well that's the idea, as long as you don't do anything fancy it'll work :P 09:45:28 that's worse than useless 09:45:50 well there are many ways to solve the problem 09:46:19 but as tathi has made me realize, there really isn't any point to having it top-down 09:47:58 yeah, you could write it top-down, then rearrange the source before running it :) 09:48:11 or use deferred words 09:51:55 or you could code Pascal 09:52:10 TETSUOOOOO 09:52:21 i put main at the bottom in pascal 09:53:07 i met tetsuo once, what about him? 09:53:18 is he a crazy suicidal bastard? 09:53:35 he's the anime character in akira! 09:53:56 50 points for correct answer, 100 points demerit for incorrect reply :( 10:06:44 --- quit: Fractal (benford.freenode.net irc.freenode.net) 10:06:44 --- quit: skylan (benford.freenode.net irc.freenode.net) 10:12:31 --- join: skylan (sjh@207.164.213.52) joined #forth 10:12:31 --- join: Fractal (~doug@24.77.171.228) joined #forth 10:21:18 ooh 10:21:33 futhin: Herk says you should change your editor instead, so when it opens up a file it goes to the bottom :) 10:22:05 tathi: yeah, but that's colorforth :P 10:22:49 oh, I thought you were just talking about forth in general 10:23:28 i know i probably should be coding in colorforth instead of regular forth, but haven't made the move to colorforth yet 10:24:27 hey, whatever language you feel motivated to write code in is good 10:25:10 I'm currently in the middle of re-doing my colorforth engine so I can use it on regular text if I want. 10:25:24 the editor or the actual forth? 10:26:09 the actual forth 10:27:26 if you do regular text, how are you gonna handle some of the weird behavior like multiple ; 10:28:08 I've never thought that was weird 10:28:22 I always thought it was weird that ; and EXIT were separate words 10:28:23 it's not 10:28:35 it's not weird 10:28:43 i was just saying weird like "unique" 10:28:44 or whatever 10:28:47 ah 10:28:50 futhin: that is easy, you just generate code to one arena and dictionary entries to another 10:29:01 or compile jumps to the next word and use a unified space 10:29:32 futhin: bigforth in compile state will happily compile native code to HERE 10:29:33 oh. yeah, my forths usually have the heap for code & data, and a separate space for names 10:29:43 and inserting a ret there would be just like multiple ;s 10:30:51 only thing I see that ; might do that would be a problem to do more than once is if it makes the word visible to searches 10:31:37 : someword if ; blah then ; 10:33:32 err... blah will never happen? 10:34:01 are we not talking about colorforth? 10:34:11 someword if ; blah then ; 10:34:14 well 10:34:19 ignore the if and blah and then 10:34:29 just notice the multiple ; in a wrod 10:34:31 word* 10:34:40 : someword if exit blah then ; 10:34:43 how's that any different? 10:35:14 : someword if exit blah then exit 10:35:16 wee! ;P 10:35:33 I've always just left out the word exit and used ; for everything 10:35:46 yeah, in colorforth 10:36:33 thing is, I've never really used anyone else's forth -- I just made things up as I went along 10:36:40 so I don't know what's "normal" 10:36:50 or what F83 does, or anything 10:39:20 the only standard is chuck moore's forth 10:39:29 f83? what's that? 10:39:32 ans forth? what's that? 10:39:39 colorforth? that's chuck moore's 10:41:14 so anyway, what makes you think multiple ;s is any harder to handle if your source is text instead of being pre-tokenized? 10:41:58 and there is no standard, as far as I'm concerned 10:42:12 I've experimented with some of Chuck's ideas 10:42:18 excuse me, but i wasn't paying attention previously because i'm chatting with some other guy, sorry :P 10:42:48 but I'm writing this langauge to fit my personal tastes 10:42:52 ah, ok then :) 10:43:08 tathi: (offtopic) how did your first forth improvisations go? 10:43:27 tathi: mine were too heavily influenced by common lisp to be usefully light 10:43:30 anybody here have entrepreneurial leanings? 10:44:13 futhin: maybe, but we're all broke so it doesn't matter in practice. 10:44:52 XeF4: not badly actually 10:45:01 I experimented with language design when I was about 15 10:45:21 got the "no syntax" thing down, but it didn't occur to me to use a stack, so I couldn't figure out how to pass data around 10:45:35 then a few years later Herk mentioned forth to me 10:45:56 I found and read the draft ANS forth spec on forth.org 10:46:03 threw out the parts I didn't like, and did an implementation 10:46:16 I hadn't really done many languages at that point 10:46:30 a little basic and several years of various assembly languages 10:46:34 and a very little C 10:47:02 so I guess I was looking for something very light 10:47:34 I basically wanted a super macro facility for assembly language :) 10:48:04 *nod* 10:48:33 I wanted a super macro facility for assembly language but the first time I tried it, it ballooned into a weird clumsy lispoid with a stack and no parentheses 10:48:48 (so much for naive language design :) 10:49:04 :) 10:59:18 but we should better discuss these stuff here 11:00:29 futhin: shouldnt we? 11:01:01 i was only thinking on it lightly 11:01:04 still brainstorming 11:05:20 try 2 write simple code 11:05:30 simulate things! 11:05:48 like an osd display on a monitor 11:05:53 osd? 11:05:59 on screen display 11:06:27 and simulate the brightness contrast buttons 11:06:38 menu buttons ... 11:07:17 and handle the asycnhronously changing screen resolution 11:08:23 that is if the osd menu displays the resolution info 11:08:39 it should b updated 11:09:20 u can simulate the osd simply as: 11:09:47 : osd page line1 type line2 type line3 type ; 11:09:59 so u have a 3 line on screen display 11:10:41 u have an array of buttons 11:10:54 create buttons 10 allot 11:11:21 0 constant btBRup 11:11:26 1 constant btBRdn 11:12:08 2 constant btCONTRup 11:12:09 ... 11:12:56 : pushed? buttons + @ ; 11:13:43 what are you talking about anyways? 11:13:49 eg: btBRup pushed? if BR 1 +! then 11:13:54 i'm talking about applications passing messages between each other in an os 11:14:05 in a forth os 11:14:22 an example u can work out as a programmin excercise 11:14:40 --- quit: wossname ("hmwk") 11:14:42 thats what I am also talkin about 11:15:16 try 2 write an app similar 2 iwas talkin about then 11:15:44 try 2 analyze what communication is required between its parts 11:16:31 then u gonna c what type of communication is required between 4th "apps".. 11:17:03 l 11:17:05 oops 13:41:01 --- join: Soap` (flop@202-0-42-22.cable.paradise.net.nz) joined #forth 15:02:49 heh 15:03:04 on a dvorak keyboard, GDB is one key to the right of FIX 15:03:14 GDB? FIX? 15:03:25 are those mac keys or something? 15:03:54 no, I'm debugging 15:04:07 tried to type "gdb" and got "fix" instead 15:04:26 looked down and realized my hand was off by one place 15:04:40 oh 15:04:58 heh 15:05:58 dvorak can read yo mind! 15:06:54 --- join: wossname (wossname@HSE-QuebecCity-ppp82140.qc.sympatico.ca) joined #forth 15:07:51 yeah, stared at the screen in shock for a second before I figured out what happened :) 15:08:51 Hi wossname. 15:08:56 hello robert 15:09:22 i'm here for 10 minutes :) 15:09:44 Hehe. 15:09:52 I'll go to bed anyway. 15:10:01 School tomorrow, and it's past midnight. 15:10:14 :/ 15:10:20 good night, robert 15:10:47 :) 15:10:47 enjoy your school. 15:10:54 I will.. 15:11:31 Tasty biology.. (No beer and too much biology makes Homer go crazy).. some math, and a little psychology. 15:11:45 Long break, late start... 15:11:55 Maybe I'll even survive. 15:11:57 ah, lucky +) 15:12:29 Yep. 15:12:30 Hm. 15:12:47 Nice, this spring, I will only have to go to school 3 days a week. 15:12:52 it snowed all day. 15:12:57 only 3 days per week? 15:13:09 Our snow dissapeared a few days ago. 15:13:09 Yes. 15:13:18 But I'll probably go there every day, not to get lazy. 15:13:29 ah, rob! 15:13:37 if i were you, i'd slack as much as i could =) 15:13:46 snowing is coding weather. 15:14:26 Snow is beatiful. 3 degrees, fog and rain is coding weather. 15:14:40 Just the weather alone makes you want to kill yourself. 15:14:51 :) 15:15:01 :( 15:16:27 it's been kind of like that here too 15:16:39 http://www.schizomaniac.net/ <-- picture of Smerdyakov. Scary. 15:16:49 tathi: Where do you live? 15:16:59 Connecticut, US 15:17:09 not as cold here 15:18:22 but the whole fog/rain/wind thing has been going on for the last 4-5 days 15:18:26 Connecticut..I'll look that up on a map some day :) 15:19:01 northeastern us 15:19:06 well, not very north 15:19:11 not cold :( 15:19:15 no snow :( 15:19:27 snow makes me feel warm inside. 15:20:02 How cute. 15:20:04 that's why when it snows, coding is the natural activity. 15:20:18 What have you coded latley? 15:20:27 a snow demo =) 15:20:37 a test forth 15:20:44 I think of an over-socializing, anime loving ex-geek when I see you nowadays :) 15:20:46 Neat. 15:20:59 So you've joined the rebel forces, eh? 15:21:01 bah, unfair. i don't watch nearly as much anime as i did months ago 15:21:14 yes, the rebel forces :) 15:21:21 but forth is too messy as it is. 15:21:53 Clean it up. 15:21:57 What's so messy? 15:21:59 i intend to 15:22:09 it seems to have a lot of extra, cryptic ways of doing the same thing 15:22:27 and some wierd low level control stuff 15:23:09 Hm 15:23:11 Such as? 15:23:42 well... i like : word stuff ; to define a dictionary entry 15:24:04 but there are other ways of modifying the dictionary, too. 15:24:14 CREATE, etc. i don't like that,. 15:27:48 you need either CREATE or VAR & CONST 15:27:52 preferably both 15:28:22 how about | var datalist ;? 15:28:55 i like having a sort of uniform syntax 15:28:55 that's how I use create 15:29:09 ex? 15:29:16 Hn. 15:29:46 woss: I dislike having superfluous words just to give a superficial impression of uniformity 15:29:47 you know, do create name 102 , 273 , ... 15:32:07 i think i'd prefer | ;, or something like that. but yeah.. 15:32:35 the first test will be as normal as i can make it, but i'll take what i like the second time through 15:33:10 : woss dup swap drop ; 15:33:22 :D 15:34:24 : drop dup drop drop ; : dup 2dup nip ; 15:34:37 Why make thing fast when you can make them slow? 15:35:17 would : drop dup drop drop ; fsck itself up, or do you really need to use recurse? 15:36:18 It doesn't recurse. 15:36:25 It uses the old definition of drop :) 15:36:28 depends on the forth 15:36:31 Yes. 15:36:39 But in my example it does. 15:36:41 ;) 15:36:47 :) 15:36:49 : drop dup recurse ; 15:36:54 THAT would fuck things up. 15:37:27 nano4th shall be my reference 15:38:14 *** error *** :( 15:40:16 i can't define : drop dup drop drop ; in n4th ;D 15:40:30 it does things as it runs. 15:42:55 night, rob. gotta do homework, bleh 15:43:17 --- quit: wossname ("bleh") 16:22:31 --- join: bwb (~bwb@ip68-4-124-131.oc.oc.cox.net) joined #forth 17:05:29 --- join: lament (~lament@h24-78-145-92.vc.shawcable.net) joined #forth 17:43:21 --- quit: tathi ("leaving") 18:02:44 --- quit: lament ("Client Exiting") 18:15:44 --- join: proteusguy (~username@65.191.88.177) joined #forth 20:43:40 --- quit: bwb ("later") 20:51:12 --- quit: proteusguy ("Client Exiting") 20:55:44 --- join: proteusguy (~proteusgu@65.191.88.177) joined #forth 21:04:13 --- quit: futhin ("sleep") 22:18:49 --- join: Serg_Penguin (~Z@nat-ch1.nat.comex.ru) joined #forth 22:18:54 hi 22:32:44 --- quit: Klaw (Read error: 104 (Connection reset by peer)) 22:39:41 z 23:27:14 --- quit: proteusguy ("Client Exiting") 23:30:16 --- join: proteusguy (~username@65.191.88.177) joined #forth 23:45:27 --- quit: Serg_Penguin (Read error: 110 (Connection timed out)) 23:59:59 --- log: ended forth/02.11.17