00:00:00 --- log: started forth/05.11.23 00:12:59 --- join: akebono (i=fujiwara@218.231.239.39.eo.eaccess.ne.jp) joined #forth 00:13:00 Quote: A book worth reading is worth buying. -- John Ruskin 00:13:05 hi 00:14:09 could someone look at my tiny novice forth code? 00:14:30 I'm now learning programming in forth. 00:26:10 everyone seems to be asleep 00:37:52 --- quit: snowrichard ("Leaving") 00:42:50 --- quit: akebono ("Leaving") 04:24:32 --- join: amca (n=plump@as-bri-3-105.ozonline.com.au) joined #forth 04:46:21 --- join: ThinkingInBinary (n=tom@pool-68-163-146-102.bos.east.verizon.net) joined #forth 04:58:01 Quartus: I got . working on my VM last night 05:02:55 Robert: you there? 05:05:11 Hello 05:05:30 amca: hey 05:05:40 ThinkingInBinary: How goes it for you? 05:06:07 amca: good... my Forth-for-J2ME now has a decent VM, and I implemented . last night (for decimal only, to be fixed later) 05:06:22 J2ME? 05:06:43 amca: Java 2 Mobile Edition - it's the JVM on cell phones ;-) /me wants to play with forth on his new Nokia 6102! 05:07:00 hehe 05:07:01 sweet 05:07:17 amca: yeah, if it works well i'll make it gpl and give it out for free 05:07:17 How do you get the forth from your computer to your phone? 05:07:27 amca: either infrared or http 05:07:42 amca: there's also a phone emu on the pc 05:07:48 Why not make it GPL anyway, that way if it doesnt work, someone else might get it to work? 05:07:52 cool 05:07:55 amca: true 05:08:01 amca: i wanna wait till I have it decently done though 05:08:08 * amca nods 05:10:35 Would you be willing to let me have a peek at the code so far? 05:11:01 amca: it's mostly the VM and about three words in assembly, but I guess 05:11:21 amca: just a sec, i'll put it up on my webserver 05:12:22 amca: and a couple of perl scripts to generate the list of bytecodes and assemble a vm image 05:12:25 tnx :) 05:12:36 amca: what will you do with it? 05:12:51 What is the difference between Java 2 and Java2ME? 05:12:58 I like to read ppls code 05:12:59 --- join: PoppaVic (n=pete@0-1pool66-77.nas22.chicago4.il.us.da.qwest.net) joined #forth 05:13:19 amca: ;-) J2SE has 1000's of classes, J2ME has just enough for a decent system 05:13:40 ThinkingInBinary: So the language is exactly the same, it is the libraries that are different? 05:13:47 amca: like J2ME has only one implementation of a List (a Vector), only one implementation of a Map (a Hashtable) 05:13:56 amca: yeah, J2ME has a smaller library so it can run on smaller devices 05:13:59 Hi Poppa 05:14:04 howdy, amca 05:14:18 amca: http://thinkinginbinary.dyndns.org:8080/~tom/forth.tar.bz2 05:14:26 ThinkingInBinary: Thank you :) 05:14:53 amca: no problem... email is thinkinginbinary@gmail.com if you have questions/patches/flames. 05:15:24 cool 05:16:05 ThinkingInBinary: So, with your nick as it is, do you like getting down to bare metal? 05:16:14 PoppaVic: How goes it? 05:16:15 amca: actually, it was one of the few screen names left on AIM 05:16:19 amca: =D 05:16:21 lol 05:16:32 wakin' up - trying to get fingers and eyes to work 05:16:34 amca: but yeah, I do like playing with assembly-type stuff... the awesome feeling of power ;-) 05:16:55 PoppaVic: hehe 05:17:13 sorry, always interested in another forthish. 05:17:54 ThinkingInBinary: What asm have you played with? 05:18:00 amca: x86 05:18:07 --- quit: saon ("changing screen sessions") 05:18:15 amca: i made a bootdisk that copies chars down the screen to make it look like the screen is melting ;-) 05:18:32 hehe 05:18:49 any other asm? 05:19:12 amca: just the one i invented yesterday ;-) 05:19:19 :) 05:20:10 --- join: saon (n=saon@unaffiliated/saon) joined #forth 05:20:11 ThinkingInBinary: So...why Perl? 05:20:54 Hi saon 05:21:30 amca: oh, just ThinkingInBinary->favorite_toy_language(); 05:22:12 Ever played with any more esoteric languages like INTERCAL or False etc? 05:22:12 amca: of course I will probably write a real assembler/disassembler/etc... later 05:22:19 Or Brainfuck? 05:22:29 * amca nods 05:22:32 amca: sure 05:22:40 Starting with a VM does make the learning curve easier :) 05:22:48 amca: not intercal 05:23:09 amca: false isn't really obfuscated... it's like forth with no spaces or letters ;-) 05:23:36 amca: i might write a FALSE-EVAL word for my system 05:24:06 umm 0= ? 05:24:17 ThinkingInBinary: Yeah, thats why I like it. It is a bit too high level for me though. I think it would be better if it didnt have structured constructs such as while 05:24:37 amca: wait, you think forth shouldn't have WHILE? 05:25:35 I think a minimal VM shouldnt have while 05:25:57 amca: oh, mine has JUMP, CALL, conditional JUMP, and conditional CALL (although i haven't used the last one yet) 05:26:00 amca: gotta go 05:26:00 umm... while has gotta' be cheaper than a do-loop 05:26:01 It should have to be constructed with if's and goto's in IMHO 05:26:03 amca: school ;-) 05:26:08 --- quit: ThinkingInBinary ("leaving") 05:26:11 Okay. Enjoy! 05:27:26 * Robert yawns. 05:27:32 Seems like I missed him 05:28:10 Robert: Just 05:58:40 Yes. 05:58:46 * Robert has second timestamps. ;) 05:59:19 Ah 05:59:31 How many sec's late? 06:01:00 One minute and 19 seconds. 06:01:12 ah 06:01:39 --- join: segher (n=segher@blueice3n1.de.ibm.com) joined #forth 06:09:21 --- quit: humulus (Read error: 104 (Connection reset by peer)) 06:11:23 --- join: humulus (n=humulus@xover.htu.tuwien.ac.at) joined #forth 06:32:28 --- quit: amca ("d34d") 06:56:21 * PoppaVic sighs 06:56:41 How come? 06:57:41 I'm having one of those "Am I really getting anywhere w/o feedback?" days 07:21:14 --- quit: PoppaVic ("Pulls the pin...") 07:23:51 --- join: PoppaVic (n=pete@0-1pool47-31.nas30.chicago4.il.us.da.qwest.net) joined #forth 08:16:51 --- nick: Raystm2 -> nanstm 08:41:24 --- join: virl (n=hmpf@chello062178085149.1.12.vie.surfer.at) joined #forth 08:53:46 --- join: FiLa (i=LNIX@12-208-98-237.client.insightBB.com) joined #forth 09:01:26 --- quit: PoppaVic ("Pulls the pin...") 09:08:44 --- join: Jim7J1AJH (n=jim@221x115x224x2.ap221.ftth.ucom.ne.jp) joined #forth 09:11:01 --- quit: Jim7J1AJH (Client Quit) 09:14:19 --- join: tkb (n=tkb@64.181.9.170) joined #forth 09:15:04 --- part: tkb left #forth 09:26:01 --- join: tathi (n=josh@pdpc/supporter/bronze/tathi) joined #forth 10:30:33 --- quit: segher ("Leaving") 10:54:16 --- quit: tathi ("leaving") 11:10:39 --- join: asdfljlefd (i=roygbiv@c-67-185-37-124.hsd1.wa.comcast.net) joined #forth 11:45:19 --- join: tathi (n=josh@pdpc/supporter/bronze/tathi) joined #forth 11:50:33 tathi 12:03:48 Hi Ray 12:17:38 --- quit: Robert ("GO FORTH") 12:19:42 awesome, conversation! 12:20:34 tathi. hows the build coming 12:20:47 ? 12:21:47 haven't worked on it today. 12:21:57 uncovered another dependency-compiler bug last night. 12:22:12 JasonWoof started to say something about that. 12:22:28 He thought he'd have it tackled today... or so I thought i read that. 12:23:00 probably will. 12:23:13 We figured out how to fix it, but it was 1AM or so. 12:25:06 basically it needs separate dependency flags for the host/target images. 12:33:15 --- join: snoopy_17 (i=snoopy_1@dslb-084-058-099-243.pools.arcor-ip.net) joined #forth 12:33:15 --- quit: Snoopy42 (Read error: 104 (Connection reset by peer)) 12:33:40 --- nick: snoopy_17 -> Snoopy42 12:33:55 --- join: snoopy_1611 (i=snoopy_1@dslb-084-058-099-243.pools.arcor-ip.net) joined #forth 12:34:24 --- quit: snoopy_1611 (Client Quit) 13:17:38 --- join: drmad (n=drmad@dyn-83-156-154-66.ppp.tiscali.fr) joined #forth 13:22:06 --- quit: FiLa (Remote closed the connection) 13:38:38 --- join: amca (n=plump@as-bri-4-1-130.ozonline.com.au) joined #forth 13:40:03 --- part: drmad left #forth 13:45:57 --- join: thinkinginbinary (n=tom@pool-68-163-248-14.bos.east.verizon.net) joined #forth 13:45:58 hey 13:46:39 Hello :) 13:48:32 Been coding on your vm? 14:20:52 hey 14:20:56 Quartus: hey 14:21:13 Quartus: i'm still trying to figure out a good way to add initial dictionary entries 14:21:17 Gday Quartus 14:21:47 Hi amca. 14:22:11 thinkinginbinary, do it the simplest possible way, keep a table in the app of names & xts & flags and run through it at startup to populate the dictionary. 14:22:19 How goes it? What you been up to? Business? 14:23:53 Yes indeed, going reasonably well. How about you? 14:25:00 Very good :) 14:25:15 I really have had my life consistantly together for weeks now :D 14:27:40 Quartus: but it changes if I edit the VM image 14:28:35 Quartus: how do I deal with that? 14:28:57 Quartus: What activities have you been doing? 14:32:50 --- part: thinkinginbinary left #forth 14:33:07 --- join: ThinkingInBinary (n=tom@pool-68-163-248-14.bos.east.verizon.net) joined #forth 14:33:13 Sorry, wireless card barfed. 14:33:43 BBL 14:33:49 --- nick: amca -> amca|shower 14:34:36 Quartus: i should rewrite my assembler to make it better 14:42:05 sorry, wandered off. 14:42:07 Quartus: Quartus ok 14:42:19 ThinkingInBinary, I have no idea why you'd be concerned with an image; I wouldn't load an image were I you. 14:42:32 Dynamically build your starting dictionary at startup. 14:42:33 Quartus: how else can I get the initial assembly-written words into it? 14:42:47 Quartus: dynamically building it in Java or Forth? 14:42:58 Dynamically build it in Java, of course. 14:43:02 Quartus: oh ok 14:43:27 Quartus: so write a function in java that adds words, including bytecode, to the code space and dictionary? and then call it a bunch? 14:43:34 I would have thought your assembly-written words would be translated into compilable Java prior to your final build, not as some external image. 14:44:09 Quartus: I compiled them into an array of chars, so the Java program can just copy the array. I wrote a script to parse the assembly. 14:44:24 I wouldn't have any non-native words in my startup kernel. If you decided you must do, you'll have to work out some way to get them into memory, and then add all the startup words (native and Forth/assembler) into your dictionary. 14:44:36 Quartus: oh ok 14:44:56 Quartus: well the thing is, my dictionary entries can't point to native code directly. 14:45:00 amca ,some contract work, some other hopefully profitable enterprises. 14:45:13 ThinkingInBinary, I thought we worked out a mechanism for that yesterday. 14:45:16 Quartus: they point to virtual code space, which can contain (at a minimum) a native call 14:45:29 Quartus: yeah, it's a bytecode that calls native calls, so it has to exist in codespace 14:45:41 Quartus: i can hack it into the dictionary I guess 14:45:50 I thought negative xts were going to be handled differently, as an parameter to a native routine that contained a switch with all your internals. 14:46:03 Quartus: oh yeah 14:46:12 Quartus: forgot about that ;-) 14:46:25 Quartus: okay, negative XT's in the dictionary only 14:46:31 Quartus: since I have the NATIVE call to use in codespace 14:46:33 That strikes me as quite simple. Then you could have whatever parts of your kernel in source, and compile them at startup. 14:46:54 Quartus: so add the basic words using Java, and then use those to compile the rest of the system? 14:47:04 Quartus: do you know how long it would take to compile a forth system on a cell phone? 14:47:10 Quartus: that's why I wanted to keep an image. 14:47:23 That's what I'd do. I might extend the source with a macro compiler to assist. And it'll be fast, even on a phone. You're not talking about a lot of source. 14:47:29 Quartus: true 14:47:40 Also, what you're doing again is optimizing while coding. 14:47:56 Quartus: sorta, i'm trying to keep myself from going in whole directions that would be too slow 14:48:10 So run some benchmarks. 14:48:28 --- quit: Ray_work2 ("Stupid NetSplit") 14:51:48 Quartus: okay, I have an EXECUTE bytecode. for positive or zero values, it acts like a subroutine call. for negative values, it calls my native code function. 14:52:01 Good. 14:55:26 Quartus: and now I have an addWord(name, immediate, xt); (and one that takes bytecodes instead of xt, and writes it into codespace) 15:04:47 Quartus: i've decided native calls and bytecodes will be the same thing... 15:05:29 Quartus: because many stack ops are single bytecodes, and it would be wasteful to have to make a two-cell definition for each one. so they are now the same thing, and negative xts call bytecodes, period. 15:05:33 Quartus: this is much better. 15:08:07 --- join: snoopy_1611 (i=snoopy_1@dslb-084-058-131-196.pools.arcor-ip.net) joined #forth 15:08:11 --- join: snoopy_1711 (i=snoopy_1@dslb-084-058-131-196.pools.arcor-ip.net) joined #forth 15:11:39 --- quit: amca|shower ("d34d") 15:12:50 --- quit: Snoopy42 (Read error: 110 (Connection timed out)) 15:13:07 --- nick: snoopy_1711 -> Snoopy42 15:14:23 --- quit: snoopy_1611 () 15:27:50 Quartus: what was the word that pushed the top address on the return stack on the data stack 15:34:39 Quartus: hey, I got all the bytecodes, (header), and (find) added to the dictionary. 15:49:40 Quartus: you there? 16:04:41 --- quit: cmeme ("Client terminated by server") 16:04:41 does KEY read from the input buffer or directly from the keyboard/stdin/whatever? 16:04:47 --- quit: warpzero (Excess Flood) 16:04:52 --- join: warpzero (n=warpzero@wza.us) joined #forth 16:08:34 --- join: cmeme (n=cmeme@boa.b9.com) joined #forth 16:08:34 --- quit: warpzero (Excess Flood) 16:19:18 --- join: warpzero (n=warpzero@wza.us) joined #forth 16:19:34 Quartus: you there? 16:19:34 --- quit: virl (Read error: 104 (Connection reset by peer)) 16:25:43 Quartus: ... 16:55:26 Quartus: you there? 17:18:09 Quartus: ... 17:19:24 Hi 17:30:26 saon: hi 17:30:32 sup? 17:34:20 --- quit: asdfljlefd () 18:09:00 --- quit: ThinkingInBinary ("leaving") 18:21:46 --- nick: nanstm -> Raystm2 18:23:31 --- quit: Raystm2 ("User pushed the X - because it's Xtra, baby") 18:39:39 --- quit: swalters (Read error: 104 (Connection reset by peer)) 18:55:22 --- join: FiLa (n=FiLa@12-208-98-237.client.insightBB.com) joined #forth 18:57:18 --- join: swalters (n=swalters@6532183hfc82.tampabay.res.rr.com) joined #forth 19:02:46 --- join: amca (n=plump@as-bri-4-1-95.ozonline.com.au) joined #forth 19:02:59 --- quit: amca (Read error: 104 (Connection reset by peer)) 19:36:19 --- quit: tathi ("leaving") 20:45:06 --- join: airbrush (n=morph@216-237-213-103-access-r15-ad.northstate.net) joined #forth 20:52:39 * airbrush sets forth into the deserted bot room 21:36:45 --- join: Raystm2 (n=Raystm2@adsl-69-149-49-69.dsl.rcsntx.swbell.net) joined #forth 22:11:34 hello Raystm2 22:16:55 didya see this? http://www.advantagesix.co.uk/products/A9home.html 22:17:55 http://www.theinquirer.net/?article=27857 23:06:16 --- join: aum (n=aum@60-234-156-82.bitstream.orcon.net.nz) joined #forth 23:15:25 --- quit: airbrush ("Client exiting") 23:35:52 --- join: swalters_ (n=swalters@6532183hfc82.tampabay.res.rr.com) joined #forth 23:36:11 --- quit: swalters (Read error: 104 (Connection reset by peer)) 23:59:59 --- log: ended forth/05.11.23