00:00:00 --- log: started forth/05.04.16 00:41:04 --- quit: crc (Read error: 101 (Network is unreachable)) 00:49:58 OrngeTide, people are so darned impatient. 01:06:01 --- quit: Raystm2 (Read error: 104 (Connection reset by peer)) 01:06:57 --- quit: Sonarman ("leaving") 01:08:13 --- join: Raystm2 (~vircuser@adsl-69-149-60-175.dsl.rcsntx.swbell.net) joined #forth 01:34:44 --- join: crc (crc@pool-70-110-208-73.phil.east.verizon.net) joined #forth 01:34:44 --- mode: ChanServ set +o crc 02:02:57 --- join: Topaz (~top@spc1-horn1-6-0-cust219.cosh.broadband.ntl.com) joined #forth 02:19:15 --- quit: Frek ("Client exiting") 02:21:46 --- join: x2Sx (~x2Sx@212.180.15.37) joined #forth 02:22:02 --- join: Frek (478-ident-@h89n2fls31o815.telia.com) joined #forth 02:52:44 --- join: qFox (C00K13S@82-169-140-229-mx.xdsl.tiscali.nl) joined #forth 03:43:12 --- quit: ASau (Read error: 60 (Operation timed out)) 03:51:05 --- join: aum (~aum@60-234-138-239.bitstream.orcon.net.nz) joined #forth 03:51:35 --- part: aum left #forth 03:57:46 --- quit: swalters (Read error: 54 (Connection reset by peer)) 04:12:36 --- join: tathi (~josh@pcp01375108pcs.milfrd01.pa.comcast.net) joined #forth 04:13:50 sheesh. People need to remember to use Google. 04:14:10 http://www.complang.tuwien.ac.at/forth/gforth/Known-problems.html 04:14:37 cr3 should have been able to find that... 04:40:45 --- quit: Topaz ("Leaving") 04:51:53 I didn't google it; I figured he would already have. 05:12:28 yeah. 05:44:21 --- quit: x2Sx () 06:47:46 --- join: swalters (~swalters@2416457hfc118.tampabay.res.rr.com) joined #forth 06:50:00 --- join: Topaz (~top@spc1-horn1-6-0-cust219.cosh.broadband.ntl.com) joined #forth 09:21:56 --- quit: qFox (Read error: 104 (Connection reset by peer)) 10:12:11 hi all 10:33:21 hi crc 10:33:47 Hi Quartus 10:45:05 --- quit: Topaz ("Leaving") 12:09:02 --- quit: Raystm2 ("User pushed the X - because it's Xtra, baby") 12:55:35 --- quit: tathi ("leaving") 12:59:46 --- part: OrngeTide left #forth 13:29:39 --- join: Topaz (~top@spc1-horn1-6-0-cust219.cosh.broadband.ntl.com) joined #forth 13:36:03 --- quit: madgarden ("Miranda IM! Smaller, Faster, Easier. http://miranda-im.org") 14:45:52 what's up? 15:24:36 --- join: I4404__ (~mark4@216-110-82-203.gen.twtelecom.net) joined #forth 15:40:40 --- quit: I440r (Read error: 110 (Connection timed out)) 16:00:15 --- join: aum (~aum@60-234-138-239.bitstream.orcon.net.nz) joined #forth 16:03:30 --- part: aum left #forth 16:18:14 --- join: Herkamire (~jason@c-24-218-95-147.hsd1.ma.comcast.net) joined #forth 16:18:14 --- mode: ChanServ set +o Herkamire 16:25:32 --- quit: Topaz ("Leaving") 17:36:48 * crc is slowly writing the retrospect debugger 17:41:21 retrospect? 17:41:43 as in dantz? 17:44:19 what's dantz? 17:44:50 retrospect is _the_ Mac backup software 17:44:56 no 17:44:57 made by Dantz iirc 17:45:05 mine is a debugger, not backup software 17:46:31 cool 17:47:01 it's still pretty incomplete at this point, but it's starting to take form 17:47:36 I'm trying to figure out a good way to do a disassembler for the x86 instructions I use 17:54:12 right 17:54:52 how smart are you planning on making it? 17:55:11 It'll be able to resolve addresses to word names in most cases 17:55:28 cool 17:55:40 inlined words will just be disassembled at this point 17:55:53 right 17:57:01 I get lucky in that most of my compiled code is just CALL, JMP, or RET instructions 18:00:31 I wrote resolve.name today, so the next step is figure out a good way to identify the end of a word's compiled code 18:34:55 : foo words cr . ; 18:34:55 inspect foo 18:34:55 foo: 18:34:55 call efd6ffff 18:34:55 call 9cd6ffff 18:34:55 jmp b3d6ffff 18:35:03 I'm making a bit of progress :) 18:52:29 nice :) 18:53:02 what's with them all ending in 6ffff? 18:53:11 That's backwards 18:53:16 oh good 18:53:17 should be fffd6ef 18:53:20 and so on ;) 18:54:59 that's nice code 18:55:24 I've looked at herkforth code disassembled, and it's uuuuugly 18:55:42 Do you do more optomizations than me? 18:55:59 no, it's just all the pushing and popping of the return stack and stack 18:56:03 Ahh 18:56:10 x86 is kind of nice there :) 18:56:11 ppc you have to explicitly push/pop the return stack 18:56:34 yup 18:56:48 and there's no special push/pop instructions, so it's all stores/fetches/adds 18:57:12 that's one thing that's holding me back from working on a PPC version of rf right now... 18:57:57 and so instead of a simple jmp at the end for the tail recursion thing, it has to pop the return stack, then branch 18:58:52 it's not that bad to implement. you only have to write dup drop ; : once 18:59:03 but looking at the dissassembly is not much fun 18:59:36 ppc is designed to be optomized 19:03:59 and I think it will be a lot of fun to optomize 19:05:00 I can resolve the first call to a name, but it segfaults on the second :( 19:05:15 : foo words cr . ; 19:05:15 inspect foo 19:05:15 foo: 19:05:15 call 424303 ; words 19:05:15 call 4242b0 ; 19:05:16 progress :) 19:05:29 yeah :) 19:31:21 : foo words cr . ; 19:31:21 inspect foo 19:31:21 foo: 19:31:21 call 424303 ; words 19:31:21 call 4242b0 19:31:21 jmp 404389 19:31:30 the second CALL is off by 5 bytes... 19:33:39 and the JMP address is way off 19:34:43 --- join: sk1p_ (alex@pD958C9AE.dip.t-dialin.net) joined #forth 19:39:26 --- quit: sk1p (Read error: 145 (Connection timed out)) 19:47:36 : foo words cr . ; 19:47:36 inspect foo 19:47:36 foo: 19:47:36 call 424303 ; words 19:47:36 call 4242b5 ; cr 19:47:36 jmp 4242d1 ; . 19:47:39 yay! 19:56:10 yay :) 19:57:31 man, now I'm thinking about optomizers again... 20:16:08 Herkamire: :) 20:19:56 I was thinking about at some point changing herkforth so it compiles to some intermediate format 20:20:25 which it can run 20:20:31 neat 20:20:40 and then when a word is called a lot, it is automatically compiled native and optomized 20:20:57 or perhaps when it is called 3 times... whatever 20:21:11 or it might be based on time rather than number of calls 20:21:39 that would also make it easy to have herkforth run on different architectures 20:21:52 http://www.retroforth.org/dasm.txt for my (still raw, ugly, and incomplete) x86 disassembler code 20:23:33 I haven't thought it through fully 20:25:49 crc: cool :) 20:29:10 I'll clean it up tomorrow, and then add support for the inlined instructions used by loops and conditionals 20:34:28 do you inline math stuff like + ? 20:34:34 no 20:36:17 I inline: drop swap nip 1+ 1- sf cf =if if <>if ?if r >r r> again until for next then 20:36:31 When I do the optomizer, more words will be inlined 20:43:18 what are sf and cf? 20:55:54 set flag and clear flag 20:57:07 ?if checks the flag 20:59:24 --- join: Raystm2 (~vircuser@adsl-69-149-62-183.dsl.rcsntx.swbell.net) joined #forth 20:59:30 --- quit: onetom (Read error: 113 (No route to host)) 21:10:44 --- join: Testament (CapStone@adsl-69-149-252-63.dsl.ltrkar.swbell.net) joined #forth 21:10:55 --- nick: Testament -> danniken 21:20:26 hmm 21:20:47 very interesting 21:36:25 --- quit: Fractal (Read error: 145 (Connection timed out)) 22:39:14 --- join: Fractal (jah@selling.kernels.to.linus.torvalds.at.hcsw.org) joined #forth 23:21:03 --- join: Sonarman (~cleetus@adsl-64-169-94-30.dsl.snfc21.pacbell.net) joined #forth 23:44:36 --- join: Sonarman_ (~cleetus@adsl-63-196-0-240.dsl.snfc21.pacbell.net) joined #forth 23:45:12 --- quit: Sonarman (Nick collision from services.) 23:45:17 --- nick: Sonarman_ -> Sonarman 23:59:59 --- log: ended forth/05.04.16