00:00:00 --- log: started forth/04.09.26 00:00:03 hehe 00:00:12 has sam been around at all todayu? 00:00:43 I'm at work now. 00:00:52 sam? not sure. I don't think I know him. 00:01:31 ok, you. I :) 00:02:05 kc5tja: i :) 00:02:51 Aye, BTW. :) 00:03:10 das: I'm thinking of using the ATmega8 as the basis for an entry-level BasicStamp competitor. 00:06:27 Kewl. I'm very interested in how that works out. 00:08:01 If something happens with them, I will be needing help in getting these on the market. 00:08:04 I can't do it alone. 00:08:19 --- join: qFox (C00K13S@82-169-140-229-mx.xdsl.tiscali.nl) joined #forth 00:21:50 kc5tja. Right I've got several home/hobby projects stacked back to back. But I'd like to help out. 00:22:31 Hopefully I'll finish up what I'm working on by the end of the year. 00:25:03 Well, I'd like to finish my Typistry project first too. 00:25:12 ALTHOUGH..... 00:25:25 If I do the ForthStamp project first, it'll let me work on the Typistry in Forth. :) 00:26:47 otherwise, in basic? 00:27:12 with a BasicStamp? 00:27:42 So are are thinking going to go with the VM in Flash, programs in bytecode in RAM? Or are you thinking of finding a way to append flash on the fly with bytecode and/or compiled code? 00:29:09 No. Hell no. 00:30:10 For cross compiled/assembled stuff I might be able to help out for a little bit in about a month. I have a couple AVR development kits and AVR parts from a project I was working on back in 2001/2002. 00:30:16 jim: I've been talking about using the AVR microcontrollers for my keyboard project; where did you get the idea I'd use BASIC? I'm not using a BASIC-Stamp. No frigging way! Do you know how much those things cost?! 00:30:29 no idea 00:30:30 They want $45 for the entry-level part alone. :( 00:30:40 It's rediculous what kind of a killing they're making. 00:30:51 I want in on that market. And it's a market I know how to get into too. :) 00:30:55 when it probably cost them $0.0000045 to make 00:31:08 jim: They're getting those PIC chips cheap, to be sure. You betcha. 00:31:37 das: The VM will be in flash, source stored in SPI-serial EEPROM, and 1K RAM used to cache a 1K page of executable code. 00:31:53 Or I might break it up into 4 different 256-byte pages. Not sure yet. 00:32:01 those basic stamp things have been around for years and years 00:32:17 since a good 5 years or more before linux 00:33:35 jim: I know. 00:33:43 It's about time they got some competition, no? 00:33:59 I suppose so :) 00:34:45 Also, I'm thinking of making my system a bit more flexible than theirs too. 00:34:50 what's needed? lotsa capital? 00:35:14 I'm planning on a whole range of microcontrollers to use for the VM -- for example, I can readily see using Atmel's AT91-series of microcontrollers for some rather high-end stuff (ARM9 instruction set based). 00:35:17 Forth is better for hobbyists to start out with anyways, instead of Basic. 00:35:26 Capital, time, marketing. 00:35:48 And customer training, because while das is correct, more people know BASIC than Forth. 00:36:00 unfortunately 00:36:21 does the atmel part have adcs/dacs? 00:36:56 jim: It has PWM output on at least one of its pins, but the ATmega8 has 6 10-bit ADCs on the 28-pin DIP version, and 8 10-bit ADCs on the 32-pin SOIC. 00:36:58 jim: some do have adcs, not sure about dacs, but I think they have pwm 00:37:33 With an appropriately designed low-pass filter, you can use the PWM output as a DAC. 00:37:35 speaking of arm, anyone look at my simulator yet? :) 00:38:30 I think I need to implement branch and exchange (except disable the thumb part) 00:38:43 as what to do next, that is 00:41:48 how does arm9 differ from arm7? 00:42:28 at least instructionset-wise 00:43:04 No idea. 00:43:13 I have absolutely zero experience with ARM. 00:47:39 DUDE!!!! The 50MHz BS2sx-IC only gets "around" 10,000 BASIC instructions per second. 00:47:42 That's rediculous!!! 00:47:47 OH MY #*$&(#$ING GOD! 00:47:50 * kc5tja is ROTFLMFO!!! 00:49:03 I'm sorry -- I have to go to the bathroom now -- I laughed entirely too hard. 00:49:05 brb 00:49:53 hehehehehe 00:50:30 ehh.... 10 milliion basic instructions would not be bad for a 50MHz. But 10,000? Hah! 00:51:50 hehe 00:52:07 that is _slow_ 00:52:48 5000 cycles per instruction 00:55:45 5000 cycles. Even If a forth stamp does each forth instruction in 50 cycles, then a 5 MHz ForthStamp part would be 10 times faster than the 50 MHz basic stamp. 00:56:22 But each instruction should take well under 50 cycles. 00:57:06 yeah. 00:57:14 kc5tja esitmates 8 00:57:21 4 for NEXT, 4 for the actual thing 00:58:17 00:13 We're looking at about 4 clock cycle overhead (my estimation) to retire one Forth VM instruction and move on 00:58:20 to the next (e.g. the NEXT routine takes four clocks). 00:58:23 00:13 Then you figure each basic primitive will consume about four clocks on average too. Give or take. 00:58:25 00:13 Therefore, the *VM* on this thing will execute about as fast as a *native* PIC chip. 00:59:29 --- join: swsch (~stefan@p5091DF16.dip.t-dialin.net) joined #forth 01:00:09 6250000 forth instructions per second 01:04:17 yes. 01:06:31 --- quit: Herkamire ("bed") 01:16:33 under arm7, next is one instruction if you set things up like Ting did 01:17:25 I haven't studied the AVR in depth yet, so I'm estimating four to be conservative (plus, remember, it's only an 8-bit controller; it could be more). 01:19:50 5 shofs ring out into the night. There have been a few shots an hour for the last few hours. 01:20:06 But, I figure that an 8MHz AVR is going to implement the Forth VM about as fast as, say, a 2MHz 6502, so I don't think that's too bad a tradeoff. 01:20:27 damn, someone's pretty drunk at a few shots/hour :) 01:21:33 hehe... naw, this sounds more gang related, based on where I'm hearing the shots coming from. :) 01:23:23 Remind me not to move to your location. 01:23:30 I can barely handle San Diego as it is. 01:23:45 If I can hear the bullets hitting, then I need to move. But these were at least 3 blocks away. So I'm fine. 01:23:59 I don't care. 01:24:10 North side of town in much better. I live on the south side. 01:24:24 Yeah. My point exactly. 01:24:28 I wouldn't be living there. 01:24:39 Dude, I used to live in Utica, NY, at a rather conspicuous spot. 01:24:53 Our house was situated right between two bars, and a crack-house across the street. 01:25:08 They were CONSTANTLY fighting each other. Bar-vs-bar, bar-vs-crackhouse, etc. 01:25:20 Not cool. We got our windows blown out with shotguns on a regular basis. 01:27:21 When I lived north side of Longview, I never heard shots. 01:27:49 But then again, compared to where I grew up, this is minor. 01:28:53 It was more than just small guns and shotguns, and much louder. 01:35:50 now i'm going to be impressed if i can manage to hook some kind of forth up to my aibot. that would make it run a chatterbot, in mircscript, with a mysqldatabase, and a forth backend, on msn 01:35:50 :p 01:35:57 i havent got a clue how though 01:36:10 well, I'm heading off to sleep. Catch you guys around later. 01:36:15 nite 01:36:51 nite qFox 01:37:02 i'm not going :p its 10:30am here 01:46:24 --- join: mur_ (~mur@kyberias.uiah.fi) joined #forth 01:49:05 --- quit: mur (Read error: 60 (Operation timed out)) 02:48:53 --- join: mur (~mur@smtp.uiah.fi) joined #forth 03:00:21 --- quit: mur_ (Read error: 110 (Connection timed out)) 03:18:59 --- join: mur_ (~mur@smtp.uiah.fi) joined #forth 03:20:05 --- quit: mur (Read error: 60 (Operation timed out)) 04:22:15 mysql? you should consider running an actual acid-compliant db (postgres is one)... http://sql-info.de/mysql/gotchas.html 04:23:31 Or better still, use object prevalence and do away with a whole database component all-together. But I digress. 04:24:05 do you mean object persistance? 04:24:33 It is a kind of persistence, but no, I meant prevalence. 04:24:44 what is it? 04:25:41 http://www-106.ibm.com/developerworks/library/wa-objprev/ 04:26:12 the thing about the database components available, they allow arbitrary querying of the data, assuming the data is modeled in a flexible way 04:27:19 but using that with object persistance (I dunno what prevalance is yet, so I don't mean that) can slow things down due to an object deciding to write itself too many times 04:33:29 after reading some of the page... the deterministic requirement of business objects, is that for some sort of caching? 04:33:55 so does that mean you cannot edit a business object, given that requirement? 04:34:35 --- join: Topaz (jonny@sown-88.ecs.soton.ac.uk) joined #forth 04:35:15 which would imply that the only way to update is to destroy the old and insert a new one 04:40:25 also, while I see the author claims that this can be implemented in other languages (given, for example, its small size), it seems oriented to java and somewhat dependent on java topology 04:44:06 --- quit: mur_ (Remote closed the connection) 04:44:42 --- join: mur (~mur@smtp.uiah.fi) joined #forth 04:48:25 --- quit: Topaz (Read error: 113 (No route to host)) 05:02:39 --- join: Topaz (jonny@sown-90.ecs.soton.ac.uk) joined #forth 05:12:42 --- join: oyd11 (~Miranda@80.178.224.25.forward.012.net.il) joined #forth 05:13:49 --- part: oyd11 left #forth 05:14:00 --- join: oyd11 (~Miranda@80.178.224.25.forward.012.net.il) joined #forth 05:26:37 --- join: swsch_ (~stefan@p5091E42D.dip.t-dialin.net) joined #forth 05:26:48 re Topaz 05:27:47 jim: Object prevalence is more a design pattern than anything else. All objects exist in RAM. *changes* are written to disk (in order) before changes are made to the objects. 05:27:51 This is done using the Command pattern. 05:28:24 Periodically, a fresh copy of the working store is created, essentially equivalent to a traditional database "journal replay" operation. 05:28:45 Schema migration is possible if you remember to include versioning information in your objects. 05:29:00 It's not hard. People do it ALL the TIME. That's why all major file formats have version numbers in them. 05:30:17 lo 05:30:29 * Topaz brandishes wifi-equipped pringles can 05:31:07 Heheh :) 05:31:13 I kinda like sql tho... I was just suggesting to the original poster that mysql is not a great implementation, it's not acid-compliant, and it has other problems 05:31:29 Topaz: How hard is it to write an assembler for the ATmega series? 05:31:48 Why do you need to write one? 05:32:05 Actually, though, that's the least of my worries. My biggest question is how hard it is to format the data and actually program the chip. 05:33:09 Robert: Just educational value, more than anything else. 05:33:31 Although, also notational convenience. It'd be nice if I could write a target for my Forth cross compiler. 05:34:29 AVR assembly is pretty easy 05:34:36 i found a table of all the opcodes and bit masks 05:34:42 (in a header file of some assembler) 05:34:51 and just munched that to make a crude compiler 05:34:59 which my FORTH-like-thing uses 05:36:00 Topaz: I'm looking at the possibility of competing with Basic Stamp in producing a ForthStamp-like thing. 05:36:16 cool 05:36:44 i threw together a rather stupid half-emulated AVR FORTH thing with very little FORTH knowledge, a while back 05:37:02 I'm finished with the VM and most of the I/O code. Have to decide how to store compiled bytecode, and Forth sourcecode. 05:37:07 AVR assembly isn't hard at all, and the AVR is very easy to implement FORTH in 05:37:20 yeah, Robert's solution was 'proper FORTH' 05:37:32 Uhm, yeah, proper. :) 05:37:35 mine was a way to write assembly without having to actually use assembly ;) 05:38:15 C? 05:38:35 STC? 05:40:04 yeah 05:43:06 --- quit: swsch (Read error: 110 (Connection timed out)) 05:53:16 it'd be cool if some (lowlev) words inlined themselves 05:53:40 like dup 05:53:46 or + 05:53:49 --- join: mur_ (~mur@kyberias.uiah.fi) joined #forth 05:53:59 jim: In my Forth environment, such words exist in two forms. 05:54:21 When compiling, DUP and + are immediate words, which do in fact compile code right into the word being compiled. 05:54:31 When interpreting, well, : DUP DUP ; pretty much says it all. :) 05:54:58 : dup dup ; immediate 05:55:08 Ummm...no. 05:55:13 :) 05:55:21 I pretty much nu dat :) 05:55:43 you mean that dup would produce the machine code for dup 05:56:05 : dup ....etc... ; immediate 05:56:06 : dup dup ; 05:56:12 so do you use vocabularies to do that? 05:56:28 My Forth has precisely two vocabularies: COMPILER (aka MACRO) and FORTH. 05:56:29 switch to compile specialties when in a : def? 05:56:41 So literally, the definition would look something like this: 05:56:42 COMPILER 05:56:50 : dup ...machine code production here... ; 05:56:51 FORTH 05:56:53 : dup dup ; 06:04:09 --- quit: mur (Read error: 110 (Connection timed out)) 06:09:44 does your vocabulary implementation also set which voc gets new defs? 06:09:59 or do you have a separate word, like 'definitions; 06:10:12 err, s/;/'/ 06:10:21 --- join: swsch__ (~stefan@p5091D86F.dip.t-dialin.net) joined #forth 06:22:29 anyways, that is a nice simple idea 06:24:03 --- quit: mur_ (Remote closed the connection) 06:24:40 --- join: mur_ (~mur@kyberias.uiah.fi) joined #forth 06:26:06 --- quit: swsch_ (Read error: 110 (Connection timed out)) 06:34:24 Sorry -- work stuff. 06:34:39 That's what COMPILER and FORTH do. 06:34:48 They ONLY adjust which vocabulary gets new definitions. 06:34:59 The interpreter only ever searches FORTH. 06:35:10 The compiler searches COMPILER first, then FORTH if a word isn't found in COMPILER. 06:43:54 --- join: swsch_ (~stefan@p5091F64B.dip.t-dialin.net) joined #forth 06:48:03 --- quit: Topaz (Read error: 113 (No route to host)) 06:50:11 --- join: Topaz (jonny@sown-85.ecs.soton.ac.uk) joined #forth 06:51:49 wb Topaz :) 06:57:25 --- quit: qFox (Read error: 104 (Connection reset by peer)) 06:58:00 --- join: swsch (~stefan@p5091D8EE.dip.t-dialin.net) joined #forth 06:58:26 kc5tja: I see, and this behavior is hardwired? 07:00:24 --- quit: swsch__ (Read error: 110 (Connection timed out)) 07:01:07 jim: Yes. 07:01:18 It's how cmForth does it, and Pygmy and ColorForth inherit it. 07:01:26 And FTS/Forth. 07:02:49 --- join: wossname (~wossname@rn-v1w5a06.uwaterloo.ca) joined #forth 07:13:58 --- quit: swsch_ (Read error: 110 (Connection timed out)) 07:16:39 I'm off -- heading home. 07:52:42 --- join: fridge (~Jim@CommSecureAustPtyLtd.sb1.optus.net.au) joined #forth 07:54:57 back 07:55:17 * fridge yawns 07:55:48 the weekend guys sure do know how to fuck things up real good 07:58:16 Haha 07:58:21 What do you work with? 08:00:35 gnunix, mainly... I think it's more a case that they try and find problems to prevent them from doing them any meaningful work 08:00:45 so they can go back to watching divx videos 08:01:01 instead of finding solutions! 08:01:47 while I'm having a whinge 08:01:58 it sucks having to go through a 400+ mailspool each day 08:05:00 --- join: kuvos (C00K13S@82-169-140-229-mx.xdsl.tiscali.nl) joined #forth 08:05:00 --- join: qFox (C00K13S@82-169-140-229-mx.xdsl.tiscali.nl) joined #forth 08:05:05 what have you been working on lately robert? 08:05:10 --- quit: kuvos (Client Quit) 08:05:10 just skool 08:05:12 ? 08:06:27 Hmm... 08:06:32 Not really. 08:06:47 In fact I'm doing what I should have done the last week right now. 08:07:05 I've been coding at this AVR system. IRCing. :) Reading... 08:10:29 --- quit: swsch (Read error: 110 (Connection timed out)) 08:16:54 --- quit: oyd11 (Read error: 238 (Connection timed out)) 08:33:16 --- quit: Topaz (Read error: 242 (No route to host)) 08:36:39 Bedtime for me. 08:37:34 Good night 08:59:03 good night, Robert and kc5tja 08:59:20 Heh 09:03:13 --- quit: wossname (Read error: 238 (Connection timed out)) 09:21:48 anyone know the status of the project to produce a PDF version of thinking forth? 09:23:54 Sorry, I have no idea. 09:24:43 aha, they have a project page now 09:24:46 http://thinking-forth.sourceforge.net/ 09:25:35 Heh, neat. 09:25:37 * Robert checks 09:25:44 we need NEW books on forth 09:25:58 Write one. 09:26:36 hehe 09:26:43 has the nature of forth changed much from 1984? 09:27:01 I guess the world has gotten more complex 09:27:08 fridge: well, the forths back then lent themselves very well to the computers. not so today. 09:27:09 Yeah. 09:27:44 how so? 09:27:46 3d accelleration 09:27:48 networking 09:27:57 Windows, Linux, BSD. 09:28:04 Java. 09:28:13 COBOL 09:28:14 :D 09:28:20 hmm forth should adapt then :) 09:28:56 well, the problem is that 09:29:03 above the basic words 09:29:12 :) 09:29:34 everything gets reimplemented 09:29:54 on a near constant basis 09:39:46 --- join: wossname (~wossname@rn-v1w5a06.uwaterloo.ca) joined #forth 09:44:16 --- join: futhin (thin@bespin.org) joined #forth 09:44:16 --- mode: ChanServ set +o futhin 09:44:29 fridge, yeah its true 09:44:49 fridge, and people have great plans but never get to them because they're busy writing @ ! ] [ ;-) 09:45:52 hi futhin :) 09:47:46 hey bent 09:49:23 Hi futhin 09:51:49 i set up some mail filters 09:52:01 now managing email is much easier 10:05:01 --- quit: mur_ (Remote closed the connection) 10:05:34 --- join: mur (~mur@uiah.fi) joined #forth 10:08:30 --- join: oyd11 (~Miranda@80.178.224.25.forward.012.net.il) joined #forth 10:18:45 --- join: tathi (~josh@pcp02123722pcs.milfrd01.pa.comcast.net) joined #forth 10:32:50 --- quit: tathi ("running errands") 10:34:37 --- join: mur_ (~mur@kyberias.uiah.fi) joined #forth 10:45:23 --- quit: mur (Read error: 110 (Connection timed out)) 10:50:51 --- quit: qFox ("this quit is sponsored by somebody!") 10:52:35 --- join: qFox (C00K13S@82-169-140-229-mx.xdsl.tiscali.nl) joined #forth 10:59:42 --- part: futhin left #forth 11:13:03 --- quit: jdrake (Read error: 104 (Connection reset by peer)) 11:19:04 --- quit: mur_ (Remote closed the connection) 11:19:37 --- join: mur (~mur@kyberias.uiah.fi) joined #forth 11:49:34 what's left of the carpet. :) 11:49:50 eh... 11:49:58 wrong window? :) 11:50:08 yah.... :) 11:50:27 Just got back from making measurements in a house that Ric is reposessing. Eeeewwkk.... That place was nasty. A multi-habit. Stank pretty bad. 11:51:26 Was talking to I440r about what Ric is going to have to do to clean the pace up. 11:55:15 :) 11:56:26 --- quit: Robert ("frogs > forth > u") 12:00:18 --- nick: wossname -> paintcan 12:47:46 --- join: Robert (~snofs@c-bf5a71d5.17-1-64736c10.cust.bredbandsbolaget.se) joined #forth 12:53:15 --- quit: oyd11 ("Miranda IM! Smaller, Faster, Easier. http://miranda-im.org") 13:00:40 --- join: Topaz (~top@sown-88.ecs.soton.ac.uk) joined #forth 13:03:49 Hi Topaz :) 13:21:20 --- quit: Topaz (Read error: 113 (No route to host)) 13:32:50 --- join: Topaz (~top@sown-87.ecs.soton.ac.uk) joined #forth 13:58:52 --- join: TheBlueWizard (TheBlueWiz@modem-129.nyc-tc04b.fcc.net) joined #forth 13:58:52 --- mode: ChanServ set +o TheBlueWizard 13:59:07 --- join: T0paz (~top@sown-88.ecs.soton.ac.uk) joined #forth 13:59:10 päivää tbw 13:59:37 mur moi :) 13:59:48 terve TheBlueWizard mur 14:00:09 moi 14:03:24 --- quit: Topaz (Read error: 113 (No route to host)) 14:10:24 --- quit: paintcan (Read error: 242 (No route to host)) 14:13:19 ' (?largest) 14:13:24 argh wrong window lol 14:13:46 heh...I440r_ hiya 14:14:07 hi 14:14:22 im trying to get back into coding isforth but its difficult to focus 14:14:35 --- join: paintcan (~wossname@rn-v1w5a06.uwaterloo.ca) joined #forth 14:14:43 I440r_, FOCUS FOCUS FOCUS FOCUS 14:16:05 F O C UI S 14:17:20 quit irc 14:17:23 for starters =) 14:18:45 eek! 14:18:48 or start a little fun programming project using isforth, like coding up a console-based game for example...a good way to let yourself fly :) 14:18:59 ya 14:19:06 but thers so much still left to do with isforth 14:19:09 shouldn't take more than a day or so 14:19:19 i want to write a nice linked list extension 14:19:20 hmm 14:19:23 the one i got is a bit cheezy 14:19:31 I440r_: With garbage collection? :) 14:19:35 and obfuscated 14:19:39 oh? 14:19:43 thers IS no garbage! 14:19:51 with linked lists there often is 14:20:27 I think I440r_ wants a self compacting linked list data structure 14:21:56 I440r_: keep a separate internal linked list. This linked list's links can be taken out from that one and used. When deleted, its put back into there. 14:23:06 bent i use that technique in my memory manager 14:23:24 if thers a orphaned memory block structure i use it otherwise i allocate one 14:23:49 :) 14:24:37 sup I440r_ 14:24:52 robert 14:24:56 :) 14:25:17 Hi warpzero 14:26:24 hey Robert 14:38:27 --- quit: T0paz (Read error: 113 (No route to host)) 14:40:53 --- quit: TheBlueWizard (Nick collision from services.) 14:41:35 --- join: TheBlueWizard (TheBlueWiz@modem-011.nyc-tc03b.fcc.net) joined #forth 14:41:35 --- mode: ChanServ set +o TheBlueWizard 14:42:39 --- join: T0paz (~top@sown-85.ecs.soton.ac.uk) joined #forth 14:44:30 ok isforth x86 now has a correct elf structure including a bullshit bss section lol 14:44:46 o_0 14:45:56 ;) 14:50:23 --- quit: TheBlueWizard (Nick collision from services.) 14:50:53 --- join: TheBlueWizard (TheBlueWiz@modem-011.nyc-tc03a.FCC.NET) joined #forth 14:50:54 --- mode: ChanServ set +o TheBlueWizard 14:51:08 * TheBlueWizard wants to nuke his ISP 14:51:58 ;) 14:54:38 --- join: saon (Ecoder@c-24-129-95-254.se.client2.attbi.com) joined #forth 15:05:14 --- quit: fridge ("Leaving") 15:12:25 --- quit: saon ("Leaving") 15:12:31 --- quit: qFox ("this quit is sponsored by somebody!") 15:22:37 --- join: mur_ (~mur@mgw2.uiah.fi) joined #forth 15:23:05 ok should \s make the rest of the current source file a comment or should it make the reset of all nested floads a comment ? 15:23:18 right now it just does the current file 15:28:53 thats fine 15:32:07 --- quit: mur (Read error: 238 (Connection timed out)) 15:53:23 --- join: tathi (~josh@pcp02123722pcs.milfrd01.pa.comcast.net) joined #forth 15:59:05 --- join: hefner (~hefner@ip24-255-98-158.dc.dc.cox.net) joined #forth 16:01:54 Hi 16:05:16 hi 16:05:45 Hi 16:09:25 --- join: Herkamire (~jason@h000094d30ba2.ne.client2.attbi.com) joined #forth 16:09:25 --- mode: ChanServ set +o Herkamire 16:20:20 hi 16:21:32 hiya! 16:31:32 --- quit: mur_ (Remote closed the connection) 16:32:07 --- join: mur (~mur@kyberias.uiah.fi) joined #forth 16:37:32 Hi,, 16:38:27 all bye! 16:39:03 --- part: TheBlueWizard left #forth 16:49:20 --- quit: hefner ("w000") 17:19:45 I440r_: why 17:30:21 ? 17:30:43 oh you mean \s ? 17:30:55 well \s says treat rest of current source file as a comment 17:31:08 * slava \s I440r_ 17:31:23 but if current source file is a nested fload then compilation continues in the previous file 17:31:31 i kept \s as is and implemented \\s 17:32:02 what is \s for 17:35:40 \s ignores the rest of the current source file. 17:36:23 i know 17:36:24 but why 17:38:16 good for debug 17:38:37 compile this file up to this point here 17:40:18 --- join: mur_ (~mur@kyberias.uiah.fi) joined #forth 17:40:50 how is that useful? 17:41:07 --- quit: paintcan (Read error: 110 (Connection timed out)) 17:41:09 it helps find where you're crashing sometimes. 17:41:28 in factor i just get a backtrace :) 17:41:28 helps u locate where the bug is in the load sequence 17:41:31 when isforth writes itself out as a binary, it loses the debugging symbols, so gdb isn't much help. 17:41:51 gdb isnt much help anyway 17:49:19 --- join: paintcan (~wossname@rn-v1w5a06.uwaterloo.ca) joined #forth 17:49:34 hi paintcan 17:50:07 --- quit: mur (Read error: 238 (Connection timed out)) 17:50:16 misato slava 17:54:28 --- quit: T0paz ("Leaving") 18:22:29 Also, \s can be used to arrange your code on top, and commentary (e.g., usage instructions, whatever) on the bottom. 18:28:11 --- quit: paintcan (Read error: 238 (Connection timed out)) 18:28:16 --- quit: tathi ("leaving") 18:42:24 --- join: paintcan (~wossname@rn-v1w5a06.uwaterloo.ca) joined #forth 18:48:18 --- join: fridge (~fridge@dsl-203-33-167-178.NSW.netspace.net.au) joined #forth 18:50:19 --- join: saon (Ecoder@c-24-129-95-254.se.client2.attbi.com) joined #forth 18:54:19 --- quit: saon (Client Quit) 18:59:52 --- join: ayrnieu (~julian@199.2.120.143) joined #forth 19:03:36 --- quit: warpzero ("Tried to warn you about Chino and Daddy Gee, but I can't seem to get to you through the U.S. Mail.") 19:04:51 --- join: warpzero (~warpzero@dsl.103.mt.onewest.net) joined #forth 19:31:20 --- quit: fridge (Remote closed the connection) 19:31:51 --- join: fridge (~fridge@dsl-203-33-167-178.NSW.netspace.net.au) joined #forth 19:39:02 --- quit: warpzero (Remote closed the connection) 19:40:02 is paintcan a bot ? 19:41:38 hi i440r_ i am your friendly neighbourhood paintcan 19:41:47 please type !paintcan for help 19:42:08 !fruitcake 19:42:13 misato 19:42:15 lol 19:42:33 * paintcan SPLASH 19:42:41 oh 19:42:44 wossname :P 19:43:24 -_@ 19:49:28 lol 20:09:07 Jumping in teh shower brb 20:15:54 --- join: warpzero (~warpzero@dsl.103.mt.onewest.net) joined #forth 20:16:24 url to webcam? 20:16:35 lol 20:19:49 --- join: yome (~rewt@MTL-HSE-ppp192305.qc.sympatico.ca) joined #forth 20:29:54 --- quit: madgarden (Read error: 104 (Connection reset by peer)) 20:30:02 --- part: yome left #forth 20:33:53 --- join: madgarden (~madgarden@Kitchener-HSE-ppp3576798.sympatico.ca) joined #forth 20:45:55 --- quit: fridge ("rock out with your cock out") 20:54:57 --- join: snowrichard (~richard@adsl-068-209-159-248.sip.shv.bellsouth.net) joined #forth 20:55:56 brb 20:57:10 hi snowrichard 21:02:22 hello 21:03:02 can you test my server: http://veteransinaction.info 21:03:10 see if the refresh tag works 21:07:21 goes to php-nuke in 3 secs 21:07:27 ok tks 21:08:53 yep 21:08:57 confirmed with konqueror 21:09:24 thank you 21:09:44 Forth RPC is da shiznit! 21:09:59 remote procedure call? 21:10:02 Aye. 21:11:33 Here's my protocol: 21:11:34 - client: BLAH BLAH BLAH .S CLEAR 21:11:34 - server: (stack contents) OK :> 21:11:34 - (client evaluates server output, and evaluating OK and the prompt exits the evaluation loop) 21:11:34 - repeat 21:12:48 so the client goes BLAH BLAH BLAH alot? :) 21:13:04 Heh yes... damn blabbermouth client. 21:13:26 I guess for each BLAH, the server should return WUBBAs 21:13:43 It certainly could. 21:13:59 How does it handle returning chunks of memory? or strings? 21:16:07 Well in my case, I don't need to get a chunk of memory, and strings are displayed from .S thusly: "string". However, if I needed to get a chunk of memory, I'd have a particular word for this which would output text for writing bytes to the destination memory range on the client. 21:17:10 * kc5tja nods 21:17:56 client would send something like: 0x c000 10 MEMREAD 21:17:56 server would type out: 255 MEMBYTE 123 MEMBYTE 21:17:56 etc. 21:20:05 Or perhaps something like DATA{ 255 123 0 0 1 2 3 4 5 99 } 21:20:26 Good question though, thanks for asking. I may need to implement it. 21:26:31 I would just send it as an encoded hex string. E.g., "HEX FF 7F 0 0 4 A F 18 1C ..." 21:26:39 And reset to DECIMAL when it's done. 21:27:22 Or maybe the RPC mechanism can assume the pre-existance of certain buffer communication words. 21:28:19 "HEX BEGIN-BUF FF7F0004 B, 000A0F18 B, DEADBEEF B, END-BUF DECIMAL" would leave the (addr u) pair on the stack or something. 21:28:32 Anyway, I gotta get to work. I'll be back at a keyboard within the next 30 minutes. 21:30:52 Yes, I'd assume buffer communication words, otherwise most dumps would overflow the data stack. 21:31:06 --- quit: snowrichard ("Leaving") 21:35:34 --- quit: paintcan (Read error: 104 (Connection reset by peer)) 21:35:57 --- quit: mycr0ft ("Red! No, blue! Aieeeeee!") 21:50:15 ok, herkforth fresh from the repository builds again 21:50:34 had to add this: 21:50:37 color_tic: 21:50:37 push 21:50:37 add tos, r3, dict 21:50:37 blr 21:51:03 and a branch to it in the jump table 21:51:16 man, that was a tough one ;) 22:12:52 --- quit: mur_ (Remote closed the connection) 22:13:37 --- join: mur (~mur@mgw2.uiah.fi) joined #forth 22:13:48 Back! 22:14:54 --- quit: juhammed (Read error: 60 (Operation timed out)) 22:36:27 --- join: Serg_penguin (~z@212.34.52.140) joined #forth 22:36:52 hi 22:38:11 Greetings 22:40:48 kc5tja: i still had no opportunity to take the book i promised ;(( 22:41:14 maybe, today - i gonna visit home under sad circumstances ;( 22:46:41 Uh oh. 22:46:46 What happened THIS time? 22:47:04 Don't tell me you lost your job. 22:47:28 ha-ha-ha, i did not 22:48:16 That's good at least. 22:48:29 * kc5tja knows full well what it is like to be unemployed for over a year, and it is not fun. 22:48:51 what did you live off of during that year? 22:49:37 My savings, and loans from various friends. 22:49:56 This is why I can't fix my car -- I have $65 remaining in my account right now. 22:50:17 At least I'm not getting stuck in a hole all the time like I used to be. Though it is still getting to be a bit too close. 22:52:20 :/ 22:53:34 Yeah. I'm at a point where my income precisely matches my outflow. 22:53:56 I'm trying to curb my expenses as much as possible, but it is hard to do when you still owe so much money to your friends. 22:57:37 :/ 23:01:12 Problem is, I'm already cutting it close to the bone now. 23:02:57 * Serg_penguin trying to lure out for appointment yet another dyke 23:03:03 I did purchase $20 worth of pizzas, which will feed me for the next two to three days. Plus I have quite a few boxes of Macaroni and Cheese which I got for only $5. 23:07:27 i guess the fact that your friends realize that you're cutting it like that to give them their money back is probably just as valuable as the actual thing. 23:08:39 I dunno; but I do have every intent on paying them back. 23:08:49 I don't like debts hanging over my head. 23:09:02 What I love most about this though, I did all this without getting a bank loan or a credit card. 23:10:10 yeah, props 23:10:12 kc5tja: you right ! bank loan is a gallow loop 23:11:06 * Serg_penguin is reading 'binary XML' propositions at http://www.w3.org/XML/Binary/ 23:12:30 HEY HEY! It's about time they started considering compressing XML files down into binary structures. Commodore was doing this years ago with IFF files, after all. 23:13:48 hmm ? 23:14:31 IFF (Interchangable File Format) are binary files, which holds binary data, but are well-formed and well-structured. 23:14:51 PNG files are actually structured very similarly to IFF files. 23:15:18 * Serg_penguin gonna read IFF specs ;)) 23:15:31 Look for EA-IFF-85a for the specification name. 23:16:43 ha-ha-ha :)))) found only at tunes.org/~nef/logs/forth/ in kc5tja's sayings ;)))) 23:17:24 Hold on a second. 23:17:29 I've seen this problem before. 23:18:10 http://www.newtek.com/products/lightwave/developer/8lwsdk/docs/filefmts/eaiff85.html 23:19:13 tnx, sucked for further read 23:19:23 I thought you might like it. :) 23:19:58 thinking at home on 'binary XML', i proposed this 'syntax': 23:21:17 0xxxxx - attribute number-name, value follows, 11xxx - open tag number-name, 10xxx - close tag 23:22:15 number-names are defined in some other file or in header, as pre-defined bin-tags and ASCII string values 23:22:51 so this will be seamlessly cross-convertible w/ normal XML 23:22:54 I rather like this system: http://www.crockford.com/JSON/index.html . Although, I think the best possible system to select has to be plain old Lisp notation. 23:23:08 what's this ? 23:23:30 JavaScript Object Notation, used as a replacement to XML, for a standard interchange. 23:23:33 aha 23:23:44 More compact, and mostly just as self-descriptive. 23:23:44 see my example: 23:24:26 text-XML: 23:24:45 bin-xml number-name values: 23:26:02 110001 - 'point', 00001 - 'x', 00002 - 'y' .... 00004 - 'color' 23:27:08 110001 (point open) 00001 1 (x) 00002 2 (y) 00003 3 (z) 00004 00FF00 (color) 100001 (point close) 23:27:31 sorry for mix of binary and hex ;))) 23:28:13 it may be compressed even tighter by defining position-coded blocks of attributes 23:28:32 that's all. any scrutiny ? 23:29:18 --- join: qFox (C00K13S@82-169-140-229-mx.xdsl.tiscali.nl) joined #forth 23:29:46 just a second. on the phone. 23:36:19 back 23:37:08 hi. :) 23:37:10 Serg_penguin: IFF files are a tad bit more verbose than that, but not by much. 23:37:24 * bent wnats to talk someone on the phone, for some reason. 23:37:30 problem: its 1130 23:37:30 :/ 23:38:01 In an IFF file, you'd have a chunk (probably called 'PNT '), which just contains the three or four values in the structure. Since it's a proper structure, fields are referenced by offset, not by name. Therefore, no space overhead for storing names, unless you WANT to. 23:38:49 http://xmlsucks.org/but_you_have_to_use_it_anyway/does-xml-suck.pdf 23:38:58 *GREAT* *GREAT* *GREAT* presentation. 23:39:23 * kc5tja is crying in joy reading this. This is every objection to XML I've ever had, but worded so beautifully and succinctly. 23:39:34 `/me looks 23:39:36 * bent looks 23:40:28 how big is it ? 23:41:25 Serg_penguin: Dunno -- I'm viewing it in my browser. Let me check. 23:41:38 101932 bytes 23:42:55 * bent is reading it 23:43:36 yes, XML is VERY verbose 23:43:45 unnecessarily so. 23:44:02 What are you talking about? XML itself is unnecessary. 23:44:14 * kc5tja has been a huge proponent for the IFF file structure for a long, long time. 23:44:25 bent: See the URL I posted to Serg earlier this evening. 23:46:50 before the PDF one? 23:47:01 23:18 <@kc5tja> http://www.newtek.com/products/lightwave/developer/8lwsdk/docs/filefmts/eaiff85.html 23:47:05 that one? 23:51:11 Yes 23:51:16 --- join: mur_ (~mur@mgw2.uiah.fi) joined #forth 23:52:54 Just a reminder, I am at work, so if I don't respond right away, that's likely why. 23:53:35 ok :) 23:55:43 even if XML sucks, PDF sucks hundred times more ;(( 23:56:42 hehe. 23:56:51 PDF is more powerful, but incomprehensible 23:58:03 None of what either of you said makes any sense in the context of what you're wishing for. 23:58:15 PDF is a shining beacon of good file format design compared to XML. 23:58:26 hehe. 23:58:37 I once tried to write a PDF parser 23:58:45 I didn't explore too far 23:58:49 It is! It's binary structure is highly regular, it's decompressed textual representation is all reverse polish notation, so parsers for it are trivial, etc. 23:59:04 hehe. 23:59:11 Well, I mustve done it wrong then 23:59:13 :) 23:59:28 doesnt matter now. 23:59:32 Nope. 23:59:34 so the parser could be simply a forth vocabulary 23:59:45 Well, yes and no. 23:59:52 PDF isn't a program, like Postscript is. 23:59:55 It's a data structure. 23:59:59 --- log: ended forth/04.09.26