00:00:00 --- log: started forth/02.05.26 01:31:15 --- join: Penn_and_Teller (~gilbert@m133.max3.dacor.net) joined #forth 01:32:04 Murr... 01:32:18 Hej rob_ert 01:43:30 --- nick: Penn_and_Teller -> GilbertBSD 02:13:58 --- part: GilbertBSD left #forth 02:59:20 --- quit: Soap` () 03:23:39 --- join: Oscarian (~oscar@dsl-202-45-106-75.QLD.netspace.net.au) joined #forth 03:23:43 Hey. 03:23:46 howdy! 03:23:54 What system are you on? 03:24:08 www.forth.org <--- there you can find a lot of forth info :) 03:24:12 i've got an AMD Thunderbird 1.2GHz atm 03:24:16 so, intel platform 03:24:17 I mean OS. 03:24:20 oh, linux 03:24:22 :) 03:24:22 Including forth systems and compilers. 03:24:23 sorry... 03:24:30 Maybe you want to try IsForth then ;-) 03:24:55 hmm, okay...i'll check it out 03:24:57 Please note that forth is more of an idea than a language. 03:25:09 btw, I can show you some forth code I wrote before. 03:25:53 sure! 03:26:00 http://ostling.no-ip.com/files/ypn/snippets/tea.f 03:26:11 Note that this isn't a good example, I'm just a newbie. 03:26:16 But it might give you some ideas. 03:26:22 (And it might make you puke=) 03:27:55 where would i find IsForth? 03:28:12 http://isforth.clss.net/ 03:28:41 I contributed with some code to it... but I made a nice little bug that can make your programs segfault :D 03:28:49 Don't know if he's fixed it. 03:29:01 hmm, it looks a little bit like a scripting language? 03:29:19 It can be used for that. 03:29:40 There are some implementations of forth as a scripting language for C/C++ programs. 03:30:05 it seems on the outset to be quite rudimentary...but it looks on the inset to be quite complex... 03:30:05 http://www.softsynth.com/pforth/pf_tut.htm <-- nice tutorial. 03:30:22 What I find hardest is all the stack magic .) 03:32:14 btw 03:32:30 http://www.colorforth.com/ide.html <--- IDE driver in forth. 03:32:38 ah 03:32:39 :) 03:32:41 cool 03:33:01 isforth doesn't want to make 03:33:03 :( 03:33:06 Not? 03:33:09 What happends? 03:33:16 Do you have a good NASM version? 03:33:22 Get 0.98.32 :) 03:33:29 sf.net/projects/nasm 03:34:16 i typed "make linux" and it spat out hundreds of "unknown preprocessor directive" errors 03:34:17 yscalls.1:160: unknown preprocessor directive `%xdefine' 03:34:17 syscalls.1:160: label or instruction expected at start of line 03:34:17 syscalls.1:160: unknown preprocessor directive `%xdefine' 03:34:17 syscalls.1:160: label or instruction expected at start of line 03:34:23 hundreds of those 03:34:25 Yeah. 03:34:31 Get a new NASM version. 03:34:42 Sad tha 0.98 is still out there. 03:34:46 ah 03:34:47 okaty 03:39:22 ah, it works :) 03:41:09 hmm 03:41:17 i ran it, now i can't quit out of it =-/ 03:41:51 * Oscarian watches as galeon crashes .... argh! 03:44:01 rob_ert: how do i quit out from isforth? 03:47:09 bye 03:47:35 Most forths use that word to quit :) 03:48:05 hmm 03:48:08 ah, bye 03:48:17 eurika! :) 03:48:22 :) 03:48:54 so, now i'll have to sit down with some forth...that ide controller looks suprisingly short 03:49:37 Yeah :) 03:50:24 The basic idea of forth is that you push values to the stack, and call words that do something with them. 03:50:34 oh... 03:50:42 For example, . means print integer. 03:50:46 1 2 + . 03:51:05 That pushes 1 and 2, adds them (now we only have 3 on the stack), and then . prints that 3 03:51:09 so that pushes 1 onto the stack, then 2, then +, then . for print? 03:51:12 ah 03:51:17 Yeah :) 03:51:20 neat 03:51:40 Sure :) 03:52:07 * Oscarian re-reads the ide controller code 03:52:48 : bsy 1f7 p@ 80 and if bsy ; then ; 03:52:54 Actually 03:52:57 In a more normal forth 03:53:00 That would look like 03:53:37 : bsy 1f7 p@ 80 and if recurse then ; <--- but that would run out of return stack space :D 03:54:07 : bsy begin 1f7 p@ 80 and not until ; 03:54:12 Want it explained? :D 03:54:34 Forth 'functions' are called 'words'. 03:54:39 ah 03:54:41 okay... 03:54:53 A word definition is started with : (colon), and ended with ; (semicolon) 03:54:56 it's a little bit confusing for me :) 03:55:02 * Oscarian goes and has another look at it 03:55:09 Hehe 03:55:10 aah...okay 03:55:21 ; is like return in C. 03:55:56 so - read 20 sector 256 for rdy insw next drop ; - is all one word? 03:56:25 20 sector 256 for rdy insw next drop <-- that's what's in the word 03:56:31 read is the name of the word 03:56:34 ah 03:56:36 ; ends the word 03:57:46 so, is rdy ready? and insw insert word? 03:57:53 That's ColorForth, written by Chuck Moore (creator of forth), it's not like most forths. 03:58:05 insw is like the x86 asm instruction 03:58:09 Look at the page 03:58:12 ah 03:58:15 In the bottom he explains. 03:58:28 heh, i read it, then i forgot it ;) 03:58:39 (that's typical me ;) 03:58:45 :D 04:00:56 So.. does forth fit in your computer project? :) 04:01:11 yes, i'll definately have a look at it... 04:01:19 but i need to learn sooo much 04:01:21 btw, before you get a real computer to play with, we could write a system for an emulated machine. 04:01:22 :) 04:01:28 but as i said, i have plenty of time 04:01:33 hmm 04:01:37 that's a good idea 04:01:42 i'd like to play with emulators 04:01:52 For example, some of the guys in #osdev are writing fprem, with that we can emulate a z80 with lots of modern hardware :) 04:02:11 hmm 04:02:33 sounds intregueing (but well beyond what i'm capable of) 04:02:48 :) 04:02:54 what is the z80 used in, other than calculators? 04:03:01 I don't know anything about that CPU either. 04:03:04 A lot, I think. 04:03:11 I have a z80 computer. 04:03:20 maybe i should buy one =-/ 04:03:23 Hehe 04:03:28 Well, it's an old C128 :) 04:03:32 was it originally a dick smith computer? 04:03:35 ah 04:03:39 i have an old vic 20 04:03:44 Nice :) 04:03:49 6502? 04:03:58 it was given to use about 10 years ago...i've barely ever used it... 04:04:03 no idea... 04:04:05 =-/ 04:04:13 i pulled it apart one time about 3 years ago... 04:04:20 Hehe 04:04:31 I guess you've used computers hell of a lot longer than I have :) 04:04:36 well... 04:04:44 Write my first BASIC program in '97, heh.. 04:04:51 wrote* 04:05:00 i started out using my high school's computers when i was in year 8, in 1985... 04:05:05 lol 04:05:10 That's before I was born 04:05:13 but, i've never really had a chance to get my teeth stuck into them... 04:05:15 haha ;) 04:05:32 now that i have my own pc with linux on it, i want to get into more stuff... 04:05:55 :) 04:06:01 it's a pity i missed out on 'the revolution', but my family never had enough money to get a pc for my personal use when i was a kid... 04:06:04 I'd like to get into coding other machines. 04:06:10 Niether did mine. 04:06:16 now i'm too addicted to the 'net and irc to get much useful stuff done ;) 04:06:24 Haha, same here. 04:06:31 But I can get useful stuff done still. 04:06:35 yeah, that's why i got the amiga...so i could learn some motorolla stuff 04:06:56 Don't have much programming software for my Amiga. 04:07:09 But I do have 64forth for the C128 :)) 04:07:17 hmm... 04:07:52 the vic-20 we got only came with games... 04:08:04 :-/ 04:08:08 where are mainly ROM's 04:08:08 And BASIC? :) 04:08:26 i think it's got basic...it should have, since it's built in isn't it? 04:08:31 * Oscarian doesn't know that... 04:08:33 Yeah, think so. 04:08:34 =-/ 04:08:37 Hehe 04:08:44 Hmm 04:08:45 * Oscarian ponders pulling it out tomorrow and having a closer look at it 04:08:49 I need another platform to get into. 04:08:55 Cool :) 04:08:58 powerpc? :) 04:09:04 Uhm.. 04:09:06 powerpc's seem cool 04:09:15 I'd prefer something smaller .) 04:09:18 ah 04:10:13 i'm thinking of getting some chips from my local electronics stores and learning how to program with them... 04:10:35 eg: dick smith have one called the pic, which only has 35 instructions 04:11:54 16f84a? 04:12:49 I have one of those. 04:12:54 not sure sorry... 04:12:55 ah... 04:13:01 Think I burnt it with my home-made programmer :/ 04:13:07 aah 04:13:14 Anyway, I have their manual in my bookshelf :) 04:13:32 a chip like that would make a useful controller wouldn't it? 04:13:41 What kind of controller? 04:14:26 drive controller or somesuch thing 04:15:34 Hmm.. 04:15:48 It doesn't have that many I/O ports though :/ 04:15:58 But I guess you could use it for something like that. 04:23:14 --- join: davidw_ (~davidw@adsl-25-74.38-151.net24.it) joined #forth 04:23:21 Hi. 04:24:36 --- quit: davidw (Killed (NickServ (Ghost: davidw_!~davidw@adsl-25-74.38-151.net24.it))) 04:24:40 --- nick: davidw_ -> davidw 04:26:04 * Oscarian is away: making a phone call 04:31:34 * Oscarian is away: Frazzled, I'm sure 04:32:26 * Oscarian is away: watching tv! 04:51:54 --- join: mur (ammu@baana-62-165-189-112.phnet.fi) joined #forth 05:21:38 * Oscarian is away: sleep time! 06:44:02 --- join: XeF4 (~XeF4@dsl-XIV-08.kotikaista.weppi.fi) joined #forth 06:45:15 Hello XeF4. 06:45:25 hello 06:47:38 * XeF4 has a weird temptation to write a bootsector colorforth 06:47:46 uhm 06:47:48 :) 06:47:55 if chuck can't do it.... good luch 06:48:05 How big is colorforth? 06:48:16 who says chuck can't do it? chuck has better things to do with his time. 06:48:37 Hehe 06:48:40 And you haven't? 06:49:14 rob: 2KB + editor + blocks + video drivers == ~60KB 06:50:47 Well... I meant the base forth system... 2KB? 06:51:22 hard to say, probably about 2KB for everything really critical except svga 06:52:06 Okay. 06:52:11 That's quite OK anyway. 06:52:16 hi 06:52:20 Hey onetom! 06:52:35 XeF4: Compare to Windows 2k ;) 06:52:44 lol 06:53:17 Windows is down to 2k? I'll install it immediately 06:54:12 Bah... 06:54:36 were there any precedent that some1 participated in the 4k compo w an OS? ;) 06:54:42 Install the command "sed s/k/000/" in your head. 07:14:34 --- nick: mur -> murBBL 07:23:18 --- join: sif (~siforth@ip68-9-58-81.ri.ri.cox.net) joined #forth 07:23:18 Type sif: (or /msg sif to play in private) 07:25:38 sif: see + 07:25:39 XeF4: Word not found: see 07:26:46 sif: : foo .s ; 07:26:47 XeF4: 07:26:52 sif: foo 07:26:53 XeF4: Word not found: foo 07:34:24 --- quit: XeF4 ("pois") 07:41:27 --- join: GilbertBSD (~gilbert@m133.max3.dacor.net) joined #forth 07:46:18 --- nick: murBBL -> mur 07:52:09 --- part: GilbertBSD left #forth 08:33:18 TYLER HAMILTON wins the time trial at the Giro d'Italia !!! woohooo 08:34:53 --- join: miket2 (Mike@62.60.66.23) joined #forth 08:34:57 :) 08:39:56 hello 08:40:54 --- part: miket2 left #forth 08:46:14 helo 09:15:30 --- join: tathi (~josh@ip68-9-58-81.ri.ri.cox.net) joined #forth 09:16:09 hi rob 09:16:13 Hi :) 09:16:14 beat you to it :) 09:16:21 Huh? 09:16:35 nevermind 09:16:42 :) 09:16:45 * rob_ert leaves,. 09:16:50 Bye tathi ;) 09:17:31 later then :) 09:18:12 later robbiue 09:22:49 --- quit: tathi (Remote closed the connection) 09:51:31 --- join: GilbertBSD (~gilbert@m133.max3.dacor.net) joined #forth 10:13:04 is forth a functional language? 10:13:15 hhehe 10:43:09 --- part: GilbertBSD left #forth 10:50:03 --- join: CrowKiller (Vapo_Rulez@cnq5-233.cablevision.qc.ca) joined #forth 10:52:21 well... 10:52:32 is forth a functional language? 10:53:16 I have no idea :D 11:26:35 --- join: GilbertBSD (~gilbert@m133.max3.dacor.net) joined #forth 11:30:01 oy 11:30:53 hi 11:32:32 you are in python as well! 11:35:36 oh 11:35:40 thanks for telling me 11:36:16 I just noticed it ... 11:38:53 Etaoin: what do you use forth for? 11:39:24 GilbertBSD: nothing 11:39:44 ah what do you use then? 11:40:30 anyone interested in joining my voyage to collect 1000 so free webspace providers to db? :D 11:40:48 huh? 11:40:51 write a script man. 11:40:54 hmm, 1000 of them 11:40:55 a forth script 11:41:25 that sounds like a pretty cool idea mur...how many do you have atm? 11:41:32 GilbertBSD: I don't really do too much programming right now 11:43:12 ah I see. 11:43:16 Oscarian pages? 11:43:21 or ppl? 11:43:29 0 both :D 11:43:34 but i have soo many pages wit links 11:43:37 that's where i got the idea 11:43:46 i'm installing sql software 11:43:52 ah 11:44:04 i guess 300 pages at links 11:47:22 --- quit: GilbertBSD (Remote closed the connection) 12:19:02 --- quit: mur ("MURR! end of file reached. continuing filling logs some other time.") 12:24:36 --- join: mur (ammu@baana-62-165-189-112.phnet.fi) joined #forth 12:43:58 --- join: tmcm (~sdjuenv@enkum.stalphonsos.com) joined #forth 12:45:27 Hey. 12:47:54 Oscarian 12:47:58 i setted up db 12:50:33 set 12:50:34 :P 12:58:34 --- join: kc5tja (~kc5tja@stampede.org) joined #forth 13:56:37 --- nick: kc5tja -> kc-food 13:57:14 --- join: Soap` (~flop@202-0-42-22.cable.paradise.net.nz) joined #forth 14:04:03 --- join: I440r (~mark4@1Cust242.tnt1.bloomington.in.da.uu.net) joined #forth 14:04:30 wow new ppl 14:04:32 hi Oscarian 14:06:57 I440r 14:07:05 hi 14:07:05 wish to help me with massive job 14:07:11 i'll gather free hosting database :) 14:07:15 so far i guess i have about 300 14:07:19 to be entered :P 14:07:19 --- quit: rob_ert (Read error: 110 (Connection timed out)) 14:07:27 hehe i used to do free hosting heh 14:07:34 ? 14:07:54 but i dont think many people would like free web space/shell accounts on a server thats connected to the worlds crappiest dial in heh 14:08:06 i used to give people free web pages and shell accounts 14:08:08 and email 14:09:11 i found 2 quite nice 14:09:17 one with unlimited access 14:09:20 and mysql 14:09:21 php 14:09:22 etc 14:09:25 and another about the same 14:09:29 though with 500 mb 14:09:31 i guess 14:09:33 all the same 14:09:50 but the latter didn't had server running on url 14:09:56 and another was yet again full 14:09:57 :P 14:10:07 host.sk is first 14:24:40 hmmm we need ppl like wil baden in here :) 14:28:29 hmm 14:28:41 what else do i need in database for free web hosting list than: name, url, uptodate(bit), prepared(bit; if the data have been corrected and finished), freewebspace(int), features (such as "mysql, php") 14:28:49 fields in table, that is 14:29:13 --- join: GilbertBSD (~gilbert@m178.max3.dacor.net) joined #forth 14:29:56 * davidw goes to sleep 14:31:19 how about a rating 14:31:29 marks out of 10 sort of thing 14:31:50 statistics on the site - number of current users, bandwidth, what restrictions exist.... 14:33:41 uh 14:33:48 list what ever you find 14:33:54 added description 14:34:03 stabilityrating 14:34:07 speedrating(?) 14:34:10 hm.. adding it 14:34:30 bandwidth doesnt really matter 14:34:32 to users 14:34:40 or currect users amount 14:35:25 invent some more.. 14:38:13 --- join: Fare (fare@samaris.tunes.org) joined #forth 14:38:33 oy Fare 14:41:30 hi fare 14:41:57 i just ported peter midnights towers of hanoi code to isforth (very easy port) 14:42:13 problem is - if i compile it then empty the next compile of anything segfaults 14:42:21 methunkes i got a bug in forget/empty 14:43:29 but i gotta find an itterative solution to the puzzle now 14:52:43 --- quit: davidw (Read error: 113 (No route to host)) 15:01:23 --- nick: kc-food -> kc5tja 15:15:01 re 15:15:28 re 15:15:29 gn 15:15:44 --- quit: mur ("MURR! end of file reached. continuing filling logs some other time.") 15:16:02 * kc5tja decided to play with subroutine threading with inlined primitives for FS/Forth. The compiler is a lot easier to write. 15:16:14 s/lot/little/ 15:20:16 --- quit: I440r ("Reality Strikes Again") 15:47:32 --- quit: Fare ("Connection reset by pear") 16:14:40 --- join: I440r (~mark4@1Cust242.tnt1.bloomington.in.da.uu.net) joined #forth 16:20:33 --- part: GilbertBSD left #forth 16:22:08 --- join: tcn (tcn@tc2-login35.megatrondata.com) joined #forth 16:22:08 --- mode: ChanServ set +o tcn 16:23:45 re I440r 16:23:46 re tcn 16:23:54 hi dood 16:24:59 what should i do. modify my 8051 disassembler to disassemble sfr's etc as their symbolic name, code an itterative towers of hanoi to go with the port of peter midnights recursive program or fix some known bugs in the kernel 16:25:32 thefox isn't going to be pleased with my latest post to comp.lang.forth re: Forth Databases. :) 16:25:48 what'd you say, in a nutshell? 16:26:15 kc5 heh 16:28:31 That he's full of it. :) 16:28:41 That's the nutshell. 16:29:29 I attempted to prove how using the erroneously called C-style structures isn't any slower than Chuck's technique when using a combination of good engineering sense and efficient tools. 16:30:33 He also claims that he and Chuck have outlined their method of doing this, but I haven't seen it just yet. 16:30:53 brb 16:31:17 He also makes the claim that the 2-3x slowdown that C-style structures produce leads to 100x slower programs (this is also false; they'll lead to 2-3x slower programs). 16:31:50 Hence Chuck may employ better algorithms, which is widely known to produce well over 10x to 20x performance enhancements, which stack with other enhancements. 16:32:12 But, frankly, in my code, I've *never* had a need to optimize out structure access overhead. 16:32:22 I've always attacked the algorithms first. 16:33:42 thats the only thing ANYONE should ever optimize 16:33:48 optimizing code is bogus 16:33:54 ok... its fun sometimes :) 16:34:01 but its realy a pointless exercise heh 16:34:05 No, it's not. 16:34:10 When you need to do it, you need to do it. 16:34:22 But nobody should do it unless they really need to. 16:34:32 correct 16:34:46 When I write my circuit simulator, I will optimize it for the Athlon, because that's what I have (sorry Intel!). 16:34:58 I have *no* intentions of waiting days for my simulations of circuits to complete. 16:35:04 Hours, yes. Days, no. 16:35:21 rite 16:35:39 but optimizing the code is the last thing you do 16:35:45 right after optimizing the algorithms 16:36:01 Actually, right after optimizing data stucture design. 16:36:16 ya. that too heh 16:36:18 Algorithms is first, data structure is next, and cycle counting is last. 16:36:32 if you dont represent your data in a sane manner your going to be wassting alot of time :) 16:36:34 AND memory heh 16:36:57 sometimes i might flip 1 and 2 there 16:37:04 Right; for a quick one off application, optimization is futile. 16:37:12 because 1 could be dependant on 2 16:37:41 optimizing code does have one application tho. its a learning experience 16:38:17 --- join: tcn2 (tcn@tc2-login38.megatrondata.com) joined #forth 16:49:53 --- quit: tcn (Read error: 110 (Connection timed out)) 17:06:19 --- quit: Fracta| (Read error: 110 (Connection timed out)) 17:14:33 --- join: TheBlueWizard (TheBlueWiz@ip-216-25-205-154.vienna.va.fcc.net) joined #forth 17:14:33 --- mode: ChanServ set +o TheBlueWizard 17:14:39 hiya all 17:14:44 hey 17:14:51 hiya tcn2 17:15:05 tbw !!! :) 17:15:23 hiya I440r!!! how's life going? 17:16:05 not too bad :) 17:16:19 :) 17:16:22 i ported peter midnights towers of hanoi to isforth heh 17:16:30 now im gona do an itterative solution 17:16:45 but i wanna make my 8051 disassembler disassemble SFR's symbolically 17:17:04 that puzzle has a nifty iterative approach :) 17:17:30 based on parity :) 17:17:48 the parity of the most recently moved disk tells you which disk to move next :) 17:18:12 by the way, I recently printed out your 8051 disassembler code and read it in detail...and saw one or goto "statement" there...*blink* goto is generally not recommended! 17:18:14 i found a site dedicated to itterative solutions :) 17:18:37 goto isnt evil 17:18:43 abuse of goto is 17:18:50 goto in forth is like changing all 17:18:52 call foo 17:18:52 ret 17:18:54 into 17:18:57 jmp foo 17:19:08 smaller, faster, less return stack bash 17:19:16 ive also fixed some bugs in the code... 17:19:46 and i replaced a few "special case" code blocks with table generated versions like the others 17:20:26 hmm...wasn't aware of this "parity" angle...I know the algorithm: "Move the smallest disk to the next stick (in cycle, e.g. from 1 to 2, from 2 to 3, from 3 to 1), then move the other disk (there is always only one such disk) to another stiick, and repeat this step" 17:21:24 err - smallest one always goes 1 -> 2 -> 3 -> 1 ? 17:21:37 * TheBlueWizard has to answer Mother Nature's call 17:21:37 be back soon 17:27:30 Sometimes tail-call optimization can get you into trouble though, especially when using back-tracking. 17:27:42 Thus, I generally do not like tail-call optimization. 17:28:15 call/ret is just dumb i htink 17:28:31 But it's very important because it does leave critical information on the return stack. 17:28:50 hi everyone, I was away, sorry if i missed something 17:28:54 If the word being compiled doesn't use backtracking, that's fine. 17:29:07 But if it does, that tail call optimization had better not happen, or else it will crash the system. 17:30:02 backtracking ? 17:30:34 isforth is non optimizing 17:30:43 and will probably remain non optimizing :) 17:31:37 back 17:31:44 --- quit: tcn2 ("Leaving") 17:31:51 Backtracking is hard to explain. It employs continuations 17:32:07 ive sort of ignored the thread on clf about it 17:32:20 it sounds like something realy complex that i dont need :() 17:32:22 :) even 17:32:57 I440r: yeah, the smallest one goes in 1 -> 2 -> 3 -> 1 cycle 17:33:21 tbw - what order toes the second one go in ? :) 17:33:26 * I440r fires it up to see 17:33:46 kc5tja: how often does back tracking get used in Forth, in your opinion? 17:34:16 I440r: Backtracking is one of those things that is hard to explain, but when you get used to them, helps the comprehension of the program immensely. 17:34:25 1 --> 3 --> 2 -- > 1 17:34:35 TheBlueWizard: NEVER. That's largely because ANSI effectively forbids it. 17:35:02 well i gtg do some coding neway 17:35:08 ive slobbed out all day heh 17:35:25 I440r: the other movable disk (there is always only one such disk), moves to another stick (there is always one unique move, and the target one isn't the one with the smallest disk stacked there) 17:36:07 tbw write that up in detail - ill code it that way too and compare it to the parity method... email it to me :) 17:36:09 kc5tja: hmm...no one forbids you from developing your version of Forth.... 17:36:27 That's not the point. 17:36:34 I *am* developing my own version of Forth. 17:36:36 im not QUITE following you atm heh 17:36:41 --- quit: I440r ("time to code") 17:37:00 I440r: I thought the algorithm is clear...you can see that for yourself by playing with the real Tower of Hanoi 17:37:03 The point I was raising, though, was ANSI Forth's ability to make good on Forth's promise of being infinitely expandable. 17:38:01 kc5tja: ah...and ANS Forth basically failed to make good, in your opinion? 17:38:22 Yes 17:38:40 I see 17:40:23 * TheBlueWizard isn't in the mood to code up the algorithm he had described to i 17:43:00 Hehe 17:43:05 * kc5tja is busy working on his compiler. 17:43:18 * kc5tja switched from direct threaded to subroutine threaded with inline primitives. 17:44:41 :) 17:45:29 kc5tja: take a look at aha before 17:45:41 CrowKiller: Yes and no. I'm not sure what to make of it. 17:45:47 i've watched the 140mb presentation 17:45:55 and ist worth every bit of it 17:46:08 aha= mainly compactness and no dictionary search at compile time 17:46:36 thats the way its should have been done from the first day forth existed 17:46:49 Not with only 4KB of RAM you're not. 17:47:39 People put a lot of emphasis on compile-time for Forth for some bizarre reason. 17:47:42 * kc5tja can't understand it. 17:47:59 Even with a standard, text-based dictionary format, Forth compiles unbelievably fast for me. 17:48:03 and im looking at the optical gate array design you sent me and its great, im trying to make one using only conducting/not conducting 2d copper array grid 17:48:14 take a look at aha, you wont regret it 17:48:18 its JIT put to the limit 17:48:21 Pygmy Forth compiles itself on a 33MHz 486 using a simple text-based search over a linear linked list dictionary layout, in only 5 to 10 seconds. 17:48:44 chuck himself joked thats so fast that one could compile interrupts service routines in realtime from source 17:49:02 Depends on what interrupts it's servicing. 17:49:04 the opensource movement would not be the same with that kind of technology IMHO 17:49:21 it was a joke ;p 17:49:36 but you get the point 17:49:43 140MB -- was that MPEG or RealPlyaer format? 17:49:46 it make the source code alive 17:49:46 RealPlayer even 17:49:48 realplayer 17:50:29 The source is just an array of tokens then -- each token points to a word. I prefer my source in text form, thanks. 17:50:41 * kc5tja has read a little bit on AHA 17:52:58 just an array of tokens.... way better than an array of characters that must be parsed, there's a level of interpretation removed by doing so 17:53:17 No; it's merely displaced. 17:53:29 yeah to the editor time phase 17:53:33 The name resolution occurs at edit time instead of a compile time. 17:53:35 wherre its less expensive 17:53:40 performance wise 17:53:41 But it's not expensive!!! 17:53:46 Even at load time 17:54:35 And then you need *highly* specialized text editors to edit the source. 17:54:44 Then that editor becomes useless at anything except editing program source. 17:54:58 I use my block editor for a lot more besides editing program source. 17:55:16 I maintain ham radio logs using it, and I maintain no less than four D&D character sheets with it. 17:56:03 I also draw screen layouts with it, using a block copy to the video screen to display it (sure beats a whole lot of TYPEs, CRs, AT-XYs, etc) 17:56:15 I gather you prefer block editing over text editing, hm? 17:56:19 the text editor isnt a text editor, its effectively a source editor 17:56:46 so its not a specialized text editor its a dev system in one program ;p 17:56:49 CrowKiller: Exactly, and I have no intentions of having two distinctly separate editors in my Forth envrionment when I don't need to. Duplication of code, duplication of effort, and duplication of memory consumption. 17:57:24 CrowKiller: PygmyForth already has an integrated block editor with it, and it's a text-based compiler. Are you saying it's not an integrated environment? 17:57:57 TheBlueWizard: Blocks are easier to manipulate for some things than flat text files. They're also a **LOT** easier to implement in software too. 17:58:38 kc5tja: true...I've used block editors in the past 17:59:29 TheBlueWizard: The only problem I have with blocks is that it's difficult to insert and remove blocks from the middle of a block-set. Also, when viewing source, storing block number is not sufficient if you have more than one volume of storage present (or, worse, if blocks are stored in text files). 17:59:41 i never tried pigmy forth 17:59:44 Because then you need to store more information besides the block number. 17:59:58 CrowKiller: PygmyForth is an offshoot of cmForth, just like ColorForth is. :) 18:00:10 i know what is it but i havent tried it 18:00:28 CrowKiller: I'm using it right now, in fact. I'm writing FS/Forth with it. 18:00:51 you have to listen to thefox's presentation, even if you dont care at all you'll surely find it interesting 18:01:14 it might give you some new ideas 18:01:29 * TheBlueWizard nods re: disadvantages of blocks used as source code editing...."Rearranging code across the blocks is a pain, unless you don't care about wasting lots of space" 18:03:01 CrowKiller: As I've already said, I reviewed AHA's webpages in the past. While I haven't listened to the video, I have read the online documentation on it. I'm not terribly impressed. I find it to be a neat experiment, but I just don't find it to be real-world practical. 18:03:23 TheBlueWizard: I don't, at least not at this stage. 18:04:03 i listened to the video and after that I only understood what the aha system was 18:04:21 * kc5tja has ideas for using a database to store source code, which will work with my VIBE editor (yes, it's the text-mode block editor I have written) to provide seemless source editing, but, other than that... 18:05:38 and also im trying to play with the concpets you introduced to me about optical gate arrays 18:06:18 * kc5tja nods 18:06:31 Database driven source editing will combine the benefits of both techniques. 18:06:41 im trying to remove the LEDs and only use copper lol 18:06:43 Source is stored in the database in pre-tokenized form. 18:06:49 But when edited, it's in plain-text. 18:07:16 it would be easy to implement in javascript, so everybody could use the same editor around the world on almost any computer 18:07:32 Javascript Schmavascript. 18:07:41 I won't touch that language with a 100km pole. 18:08:08 It would be just as easy to implement in Forth. 18:08:15 And I intend on doing just that. 18:09:06 g4 : test 0. S" -15360" >NUMBER 2DROP DROP ; test .S 18:09:09 kc5tja: <1> 0 18:09:29 g4 : test 0. S" 15360" >NUMBER 2DROP DROP ; test .S 18:09:32 kc5tja: <1> 15360 18:09:52 * TheBlueWizard chuckles 18:11:45 Why? 18:12:00 * kc5tja wanted to know the precise behavior of >NUMBER. It wasn't clear in the book that I have. 18:12:35 Dude, this video is taking upwards of 1 hour 15 minutes to download, and I'm on a T1... 18:14:39 i can send it to you 18:14:44 i have it on my HD 18:14:53 How do you intend on sending it to me? 18:14:54 do you accept DCCs? 18:14:56 No. 18:15:02 why? 18:15:12 Because the machine I IRC from is not my desktop machine. 18:15:40 And I have very limited harddrive quota on the machine I IRC from. I do not accept anyone sending me files, since it'll overflow my quota. 18:16:04 hmmm ok, then maybe i could stream it from my computer 18:16:10 wait ill try something 18:16:21 Well, what kind of bandwidth do you have? 18:16:41 cable modem 18:16:50 Right, but what is your bandwidth? :) 18:17:01 can you strem it from the ultratechnology site? 18:17:04 around hmmm 18:17:11 most cable modems have 10Mbps download, 30kbps upload speed. 18:17:34 CrowKiller: No, because I'm behind a firewall. I have to download the whole .ra file first, then play it locally (I prefer that anyway). 18:17:40 about 25-40 18:17:45 25-40 what? 18:17:51 I need units to maintain context. :) 18:17:57 kpbs upload speed 18:18:11 I'm getting 35kbps from the UT site; you wouldn't be any faster. 18:18:26 Already got 25MB of it anyway. May as well finish. 18:18:52 surely more 35 than 40 on s econd look ;p 18:19:14 its changing a lot, sometiems my connection crash for no reason 18:19:27 and sometime i cant get files at a 250kb/s speed 18:19:28 CrowKiller: I'll grab it from UT. 18:19:53 Well, UT's site is throttled to 30KBps per connection. 18:20:16 Which is about 240kbps. 18:20:22 (note: lower versus uppercase B) 18:20:42 So that explains your download speed from UltraTechnology. 18:20:46 the i meant 250kBytes/s 18:21:05 anyway ;p 18:21:38 * kc5tja needs to figure out how to convert text to numbers in Pygmy so I can finish my compiler... 18:23:21 IIRC it is done by using NUMBER on >IN buffer 18:23:45 (SNUMBER is what I was looking for, actually. 18:23:51 NUMBER calls (SNUMBER 18:24:06 (SNUMBER takes a counted string as a parameter ( caddr u -- n ) 18:26:10 ah :) 18:26:36 My Forth NEVER uses a counted string anywhere (that is, a string with an embedded count) 18:26:55 Consequently, you can be rest assured that WORD doesn't exist either, nor FIND. 18:31:28 interesting.... 18:32:21 I can't tell you how many headaches I've had to put up with because of ANSI's half-hearted attempts to put the counted string out of commission. 18:33:05 Everything in ANSI uses ( caddr u ) to express a string....except FIND and WORD. They at least introduced PARSE to compensate, but PARSE has subtle differences from WORD which can really cause major headaches on its own. 18:33:15 so what alternative form of string are you using? C style string? 18:33:20 There is, unfortunately, no equivalent for FIND. 18:33:24 No 18:33:28 caddr u 18:33:40 A string is represented using two numbers: an address, and a length. 18:37:55 * TheBlueWizard nods 18:47:07 Sweet. Numbers are implemented. 18:47:18 They create huge-ass sequences of code, but, ... 18:47:18 --- join: Fracta| (kzyisjj@h24-77-171-228.ok.shawcable.net) joined #forth 18:47:31 such is the life of a non-optimizing Native code Forth, I suppose. :) 18:47:44 At least there is no invokation overhead for it. 18:57:28 kc5tja: did you ever tried to apply the principles of an optical gate array but without opto components? 19:00:28 eletricty isnt directional and I know it might sound like non-sense, but a logic circuit using only wires joined and cut at the right places might exist 19:01:13 CrowKiller: No, it won't work at all without the use of a proper matrix design. 19:01:53 I recommend reading up on the implementation of a programmable array logic (PAL) device to see how it's implemented with electronics. 19:02:15 i have a book on digital electronics 19:02:26 but all the design use logic gates and transistors 19:02:42 maybe only with wire something would be doable 19:02:44 Well, look on the web. I'm absolutely positive useful material is out there. 19:02:51 No, it's not. 19:02:53 ive found this 19:02:55 cheap diodes 19:02:57 http://www.tiac.net/users/reilly/levd-page.html 19:03:03 You cross wires, and you have a short circuit. 19:03:31 quote: Knowing that we were likely witnessing the first light emitting vegetable diode, we grabbed a 'scope 19:03:31 camera and shot a pack or two of film. 19:05:13 if electricity was made directionnal without loss in voltage, or maybe by using laser diode assemblies and 45 degrees mirrors 19:06:04 anyway this idea of not using transistors for logic computation is driving crazy, i know something could be done to amke it apllicable with electricity, I hope I'll find it lo 19:07:37 CrowKiller: I'll let you explain it to me, if you want 19:08:11 It's not possible for the simple fact that transistors act as switches. 19:08:31 You could do logic with relays, but being mechanical devices, they're going to suck up a huge amount of power and be very slow. 19:09:06 Diode logic is possible only with superconductors, as otherwise you still need at least one transistor to amplify the output to overcome the diode's forward voltage drops. 19:09:14 maybe logic without switches, thats what im investigating 19:11:05 closest thing I can think of would be a sort of logic device using analog signals...but that's inefficient IMHO 19:12:06 * TheBlueWizard hasn't an idea how to build such a beast 19:13:55 TheBlueWizard: That still uses transistors to amplify the output, and the end result would still end up being a set of "switches." 19:14:13 TheBlueWizard: I reference you to ECL (Emitter Coupled Logic), which works in *exactly* the way you describe. 19:15:08 switches could be implemented only as presence or absence of something somewhere, liek the mask in the optical gate array 19:16:20 Yes, but you need to detect that presence or absence of something with something. 19:16:23 A diode won't do. 19:16:29 You must have a transistor. 19:16:51 kc5tja: hmm...never heard of ECL...then again, I am not much of a HW guy :) 19:17:09 i was thinking of a diode like mechanism to disable electricty "crosstalk" 19:17:31 but as you said its not feasable 19:17:46 the drop of voltage at each "step" would be too much for a large sacle system 19:21:16 How long does it take RealPlayer to start playing this aha video? It's been 5 minutes, and I still have an hour glass. 19:21:43 if the file is incomplete 19:21:49 The file is more than complete. 19:21:55 I just spent the last 1.5 hours downloading it. 19:22:02 hmmm i dont know me it started instantly 19:22:13 and i got realplayer basic 7 19:23:05 whne I had only 60 megs out of the 140 i could not do fast forward or click on the bar to advance to a certain position 19:23:10 I have the latest RealPlayer. 19:23:25 * kc5tja restarted it, and it's playing now. 19:23:44 hehehe vive bloated software ;p 19:23:46 viva 19:25:29 heh....and I don't have any use for such software :) 19:26:30 well, gotta go...bye all! 19:26:39 --- part: TheBlueWizard left #forth 19:30:59 --- join: futhin (thin@h24-64-175-61.cg.shawcable.net) joined #forth 19:31:14 hi 19:31:19 hello 19:31:26 re 19:31:45 re? 19:31:58 Yes, re 19:32:03 i've never been quite clear what re is supposed to be 19:32:08 re-hello, 19:32:13 re is the English prefix for "do again" 19:38:20 --- quit: futhin ("bedtime") 19:41:58 kc5tja: the aha part start near 39 minutes 19:52:23 kc5tja: imagine DMA like controller that actually compiles source code independently from the main processor 19:52:37 i would call this a neat hack lol 19:53:21 I'd call it useless, personally. :) 19:55:07 on memory constrained systems like my ti-83 or any other embedded systems this would mean much 20:30:56 --- join: tathi (~josh@ip68-9-58-81.ri.ri.cox.net) joined #forth 20:37:26 --- quit: tathi ("leaving") 20:46:58 --- join: qless (~cerb@mani.kobayashimaru.org) joined #forth 20:55:45 As of 20:48 26 May 2002, FS/Forth Target Compiler has compiled and ran its first native code binary!! 20:58:17 And there was much rejoycing. 20:58:45 erm, rejoicing 20:59:38 Well, it's the first target compiler I've ever made. 20:59:59 (sorry; that was supposed to go to the channel) 21:08:26 --- quit: CrowKiller ("Ikipoo!") 21:10:06 --- quit: qless ("changing dimensions") 21:27:17 Sweet :) 21:45:01 Well, that sucks. The .ra file appears to be corrupted in the middle. :/ 21:57:05 --- join: davidw (~davidw@adsl-179-74.38-151.net24.it) joined #forth 21:57:17 --- quit: davidw (Client Quit) 22:04:16 --- join: rob_ert (~robert@h237n2fls31o965.telia.com) joined #forth 22:07:01 re rob_ert 22:07:20 rob_ert: Got my target compiler working today. It compiled four colon definitions, and the resulting image worked great. 22:07:44 :} 22:07:48 What compiler? 22:08:02 My compiler, like I just said. :) 22:08:13 Hehe 22:08:20 I mean, for what platform/system? 22:08:35 DOS 22:10:36 I am very deeply upset with RealPlayer right now though. 22:10:40 The player is flat out broken. 22:11:07 I search with the progress bar, and it hangs the program. 22:11:27 Apparently, RealPlayer simply cannot handle a 140MB video file. It doesn't even access the harddrive while this is going on 22:13:10 Hmm... 22:13:23 From what I remember, RealPlayer wasn't a very good program. 22:13:36 Haven't used it alot though. 22:13:44 I have no choice. 22:13:54 It's the only format available for this video that I'm trying to view. 22:14:58 :( 22:15:04 I hate that. 22:15:50 * kc5tja nods 22:16:09 * kc5tja wishes I could download this video, decode it frame by frame, and re-encode it in a real animation format, like IFF ANIM or something. 22:16:21 Even MPEG is too clumsy. It's also ungodly huge. 22:16:21 :) 22:38:27 --- join: Serg_penguin (~snaga_NOI@nat-ch0.nat.comex.ru) joined #forth 22:39:28 hi 22:39:36 Privet ;) 22:39:48 i tried colorforth,.. 22:39:58 but it f...d my screen ;) 22:40:15 Hehe 22:40:28 horiz scan lost sync, and i see utter mess 22:40:51 i have old crt, 800x600x65hz max 22:41:05 how can i fix it ? 22:41:20 ? 22:41:39 it still works when not running colorforth? 22:41:52 yes, crt is okay 22:42:15 have you tried initialising in another OS first? 22:42:23 after ctrl-pover-tongue_root ;) 22:42:38 win is ok, both txt & gfx mode 22:43:03 goddamn it... 22:56:51 hi 23:03:52 Hey onetom. 23:03:53 :) 23:07:05 so what can i do to see it ? 23:08:18 i really waany try a cool thing from Moore.. 23:14:00 --- quit: sif (Read error: 110 (Connection timed out)) 23:17:09 Serg_penguin: hey, it worx only 4 a few of us, so i would recommend u trying it on an old computer w an old video card 23:17:48 OOOOOOR try an another variation on color4th, like enth/flux 23:18:01 it even worx from inside vmware 23:43:41 --- quit: Serg_penguin () 23:59:59 --- log: ended forth/02.05.26