00:00:00 --- log: started forth/04.07.06 00:01:53 OK, well, I'm off to bed. 00:01:59 --- quit: kc5tja ("THX QSO ES 73 DE KC5TJA/6 CL ES QRT AR SK") 00:11:31 --- join: htp123 (~tehsux@S0106000d6151238b.gv.shawcable.net) joined #forth 00:13:42 --- join: Serg (~z@212.34.52.140) joined #forth 00:14:40 --- quit: Serg (Read error: 104 (Connection reset by peer)) 00:17:36 --- join: O3BEPH (~z@212.34.52.140) joined #forth 00:18:20 --- nick: O3BEPH -> Serg 00:19:10 --- quit: Sonarman ("leaving") 00:29:55 --- quit: jdrake ("Leaving") 00:30:00 --- join: foobar (fooboo@dialup-4.152.180.226.Dial1.Atlanta1.Level3.net) joined #forth 00:38:30 all your bugs are belong to us! 00:39:22 well, that was a bit painful, but I got it working 01:04:23 yay, this change went well 01:05:19 Change, from buggy to bug-free? 01:08:25 --- join: imaginator (~George@georgeps.dsl.xmission.com) joined #forth 01:09:11 --- join: qFox (C00K13S@cp12172-a.roose1.nb.home.nl) joined #forth 01:10:54 Hoi 01:11:03 To both 01:17:51 Robert: yeah. I'm changing my assembler, and the set of core words used to build it 01:18:07 first change I made took a long time to debug 01:18:18 it was the bigest, but still it shouldn't have taken me so long. 01:18:38 Hehe, congratulations anyway. :) 01:18:40 the next two changes went fairly smothely 01:18:49 (there was debugging involved, but it didn't take long) 01:21:21 --- quit: abcnew (Nick collision from services.) 01:21:23 oh, I'd like to make one more change, but I've finally managed to convince myself to go to bed 01:23:52 Heh. 01:23:54 Well, good night. :) 01:24:05 bubye 01:24:40 --- quit: Herkamire ("bed") 02:50:19 --- part: foobar left #forth 02:58:04 Robert: i looked up guard store - TV tx is illegal here ;(( 02:58:34 :/ 02:58:45 So part of the budget will go to the police? ;) 03:08:11 --- quit: htp123 (Read error: 104 (Connection reset by peer)) 03:37:09 maybe :( 03:37:49 really, all they can do is confiscate the TX, but i'm afraid they'll like digicam more 03:37:59 than TX 03:38:53 --- join: htp123 (~tehsux@S0106000d6151238b.gv.shawcable.net) joined #forth 03:56:04 --- join: SolarFire (SolarFire@pD9E592F8.dip.t-dialin.net) joined #forth 03:58:11 --- join: crc (crc@0-1pool176-9.nas6.philadelphia1.pa.us.da.qwest.net) joined #forth 04:00:38 * SolarFire greets 04:01:06 * crc greets SolarFire 04:01:19 :-) 04:02:32 crc: current figures are around 5%, only the major, most known events in 20th 04:02:38 Ok 04:04:16 that equals around the non-risk shareholder profits. strange, but fact.. 04:04:59 hrmm, and now back to forth... :-) 04:11:58 * crc continues browsing the #forth logs to see what he missed while away... 04:47:03 --- quit: crc (Client Quit) 05:06:46 --- join: Murrlin (murr@dialup-207-218-218-11.ev1.net) joined #forth 05:11:54 --- quit: Murrlin ("Mischief managed! ....Nox.") 05:14:51 --- quit: imaginator (".") 05:22:23 --- join: skylan_ (~sjh@206.186.187.183) joined #forth 05:33:04 * Serg is fighting w/ CSS page design, and almost gave up 05:33:22 i _hate_ the idea of returning to tables 05:38:03 --- quit: onetom (orwell.freenode.net irc.freenode.net) 05:42:25 --- quit: skylan (Connection timed out) 05:42:25 --- join: onetom (~tom@novtan.bio.u-szeged.hu) joined #forth 06:05:47 tables are better than frames 06:05:50 dont use frames 06:05:52 use tables! 06:05:58 --- join: chandler (~chandler@chandler.registered) joined #forth 06:06:05 beep 06:06:19 Hi chandler 06:08:36 Hmm... 06:08:45 * Robert notes a GlobalMessage from lilo about clonebots. 06:09:18 A guy once used a shell I provided, to use a bot I had written to attack a channel here on Freenode... 06:09:22 That was pretty lame. 06:09:25 yea, saw some in #emacs 06:20:45 --- join: MorgothDc (~morgoth@gw-bdi-3.ticom.pl) joined #forth 06:21:51 http://www.udc.es/dep/lx/cac/indexeng.htm 06:23:00 --- quit: I4_wrk (Read error: 104 (Connection reset by peer)) 06:23:16 --- join: I4_wrk (~mark4@168-215-246-243.gen.twtelecom.net) joined #forth 06:27:28 --- quit: I4_wrk (Read error: 104 (Connection reset by peer)) 06:28:09 --- join: I4_wrk (~mark4@168-215-246-243.gen.twtelecom.net) joined #forth 06:58:33 --- quit: MorgothDc (Read error: 54 (Connection reset by peer)) 07:09:53 --- quit: Serg (Read error: 104 (Connection reset by peer)) 07:37:36 wow i just realised something about my ?: construct 07:37:59 i can do an if ... elseif .... else... then !!!! 07:38:28 ern no. scratch that. its not an elseif hrm 07:38:50 ?: ?: xxx yyy <-- xxx gets executed if the top two stack items are non false. otherwise yyy does 07:39:03 it would be like and ?: xxx yyy 07:39:16 which is probably more efficient than two ?:'s 07:39:20 Heh 07:39:26 ignore me. im going insane 07:39:28 bleh 07:39:31 :D 07:39:36 We know, we know.. 07:47:49 shaddap 07:47:55 * I4_wrk thwaps robert with the isforth manual 07:48:14 Ouch, it's getting bigger. 07:48:18 i know :) 07:48:32 are you reading it ??? 07:48:41 im only writing it for YOU ya know :P 07:48:49 Reading the manual is for people who can't read the sources ;) 07:48:52 Hehe 07:49:01 Well, you got a couple of other users ;) 07:49:32 err... who ? 07:49:33 lol 07:49:48 tathi will be soon :) 07:49:51 he is porting it :) 07:50:35 Oh, cool. 07:50:52 Well, there was some other guy who used IsForth because he said gforth was too bloated :P 07:51:02 So your efforts haven't been in vain ;) 07:52:55 --- join: Herkamire (~jason@h000094d30ba2.ne.client2.attbi.com) joined #forth 07:53:07 cool. err who was that ? 07:53:14 Don't remember anymore 07:53:21 lol 07:53:41 actually when i do a release on freshmeat my graph goes balistic hehe 07:53:48 i get about 600 hits when i do a release 07:54:07 Ah 07:54:09 Topaz 07:54:36 That's the guy. 07:59:25 --- join: warpzero (~warpzero@mi015.dn178.umontana.edu) joined #forth 08:00:41 yea? cool :) 08:05:40 cool :) I'll have to put a notice up on freshmeat sometime :) 08:07:07 --- join: wossname (wossname@HSE-MTL-ppp73309.qc.sympatico.ca) joined #forth 08:10:00 --- join: Sonarman (~matt@adsl-64-169-92-181.dsl.snfc21.pacbell.net) joined #forth 08:10:52 err if i say ... @ execute.... the execute is an implied unnest or not ? 08:11:37 unnest? 08:11:40 exit 08:11:47 don't think so 08:11:55 can i do ... @ execute foo blah bam ? 08:11:57 : foo @ execute 1 . ; 08:12:15 ok. thats what i thunked but i had to make sure lol 08:13:04 gforth works that way 08:13:38 so does isforth but i had to get it straight in my head here, im not able to run isforth here :) 08:13:47 yeah execute is a call not a jump 08:13:55 well i could download it but im too lazy 08:31:46 --- join: tucknip (~Huck@170.141.109.33) joined #forth 08:35:59 lol cute nick :) 08:36:36 Hehe 08:37:12 is tucknip someones bot or someone new in #forth ? 08:37:28 i doth not knowest 08:37:37 knoweth 08:37:43 knowest. 08:37:47 :p 08:38:05 my spelling are much more correcter than what your spelling are! 08:38:06 someone new, I think 08:38:21 cool :) 08:38:30 your spelling might, but what about your grammar? :p 08:38:35 so how did you discover our top secret hideaway ? 08:38:46 grammar? bleh 08:38:48 * qFox mumbles about that damned lock 08:38:56 and my spelling SUX lol 08:39:10 sucks 08:39:11 ;) 08:39:18 told ya :) 08:39:22 hehe 08:40:07 i'll bet robert stole the lock! 08:40:42 >:) 08:40:59 tucknip how did you discover #forth??? (and welcome to #forth :) 08:41:09 Memnonio (loop-hog) site 08:41:30 o_0 ads! 08:41:40 he pays me well 08:42:03 ? 08:42:10 hey we could all go around busy chans on all servers and spam #forth on freenode 08:42:11 :p 08:42:21 do you code forth or are you beginning ? 08:42:35 I code some 08:42:49 I440r> loophog has a site with lotsa forth linkies, its in topic 08:43:23 he does? cool 08:43:37 so loop-hog pays for his web space there ? 08:43:41 is that what you mean ? 08:43:52 tucknip what forth do you use ? 08:49:58 --- quit: chandler ("Reconnecting") 08:52:42 --- quit: I440r (Excess Flood) 08:55:53 currently using a spreadsheet program i wrote in gforth 08:55:59 --- quit: madwork (Excess Flood) 08:57:43 --- log: started forth/04.07.06 08:57:43 --- join: clog (nef@bespin.org) joined #forth 08:57:43 --- topic: 'FORTH programming language. Info: http://forth.bespin.org/resources/introduction ANSI: http://www.taygeta.com/forth/dpans.htm FIG83: http://forth.sourceforge.net/standard/fst83/ Links: http://members.dsl-only.net/~loophog || Kestrel project weblog: http://www.falvotech.com/weblog || Note: this chan is publicly logged.' 08:57:43 --- topic: set by kc5tja on [Thu Jul 01 21:50:42 2004] 08:57:43 --- names: list (clog wossname I4_wrk Robert fridge_ harm^kuvo madgarden I440r cmeme tucknip Sonarman warpzero Herkamire onetom skylan_ htp123 qFox [Forth] lalalim @ChanServ ianp Klaw slava SDO Fractal) 08:58:06 --- log: started forth/04.07.06 08:58:06 --- join: clog (nef@bespin.org) joined #forth 08:58:06 --- topic: 'FORTH programming language. Info: http://forth.bespin.org/resources/introduction ANSI: http://www.taygeta.com/forth/dpans.htm FIG83: http://forth.sourceforge.net/standard/fst83/ Links: http://members.dsl-only.net/~loophog || Kestrel project weblog: http://www.falvotech.com/weblog || Note: this chan is publicly logged.' 08:58:06 --- topic: set by kc5tja on [Thu Jul 01 21:50:42 2004] 08:58:06 --- names: list (clog wossname I4_wrk Robert fridge_ harm^kuvo madgarden I440r cmeme tucknip Sonarman warpzero Herkamire Fractal SDO slava Klaw ianp lalalim [Forth] qFox htp123 skylan_ onetom @ChanServ) 08:58:32 --- quit: Herkamire ("out") 08:58:50 oh yeah, freenode is going fubarrrr 08:58:58 --- join: SolarFire (SolarFire@pD9E592F8.dip.t-dialin.net) joined #forth 08:59:47 --- join: mur (~mur@128.214.123.8) joined #forth 08:59:49 lol 09:02:17 it's easier for me to type "foo" instead of "foo @" 09:04:13 i notice on comp.lang.forth that Marcel Hendrix has added "+to" to his Forth 09:04:17 its also faster to execute 09:04:35 another reason 09:04:41 ugh i hate that shit its not "to" and "+to" its !> STORE-TO and +!> PLUS storeto 09:05:18 TO is a politically corrected name so that non forthers who are used to object obfuscated c++ can handle forth 09:05:28 ... so instead of "foo 99 + to foo" it's "99 +to foo" 09:05:33 much shorter 09:06:21 FUCK them. if you cant look at ! and see STORE or you can look at > and see TOO then you shouldnt be using forth 09:06:21 ANS controls all 09:06:21 yes 99 +!> foo 09:06:21 ans doesnt control me 09:06:21 isforth.clss.net <-- look here 09:06:30 i hate what the ans NONFORTH standard is doing to this language 09:07:37 Linux only 09:07:37 i'm one of the sheeple who still uses windoze 09:08:48 :/ 09:09:03 dont worry 09:09:04 :p 09:09:07 it's very restrictive in some ways 09:09:14 so bite the bullet. you might as well, everyone will eventually be running LINUX!!!! 09:09:19 resistance is futile 09:09:22 nnnnnnnegative 09:09:24 I hope so! 09:09:37 topple the wintel beast! 09:09:48 you h8s intel? : o 09:10:00 billy gates wants a monopoly 09:10:35 he has it 09:10:42 well. close enough to one 09:10:43 :) 09:11:08 the motorola 68000 series seemed superior to the 80x86 family 09:11:57 hah, 8 registers is enough for anybody 09:12:14 eight 32-bit date registers (D0-D7), eight 32-bit address registers (A0-A7); no segmented memory 09:13:36 segments aren't such a terrible thing 09:13:52 "data" not "date" 09:13:53 no segmented mem is good :\ 09:14:57 but no segments is better :) 09:15:03 or at least easier 09:15:14 the Intel registers look confusing: Ax Bx H whatever 09:15:23 right 09:15:47 ;( 09:16:58 --- nick: harm^kuvo -> kuvos 09:20:18 anyway, i like words like +!> or +to that make programming faster and easier 09:20:50 it's stupid to have to type "foo 99 + !> foo" 09:22:24 or worse foo @ 99 + foo ! 09:23:26 right. One good thing about old variables: they're easy to increment: 99 foo +! 09:23:38 thanks to +! 09:24:21 but one of the creators of Gforth disagrees! 09:25:15 I sent him code for +TO and he said it wasn't needed, that "foo 99 + to foo" is, and I quote, "good"! 09:26:05 he wants programming in forth to be as tedious as possible, i guess 09:26:13 were you here yesterday under a different nickname? 09:26:42 very late last night 09:27:15 what did you call yourself again? 09:27:41 may have been foobar 09:29:29 right 09:32:29 create +to_pad 128 allot 09:33:07 hmm? 09:33:51 implementaion of +to in ANS Forth 09:36:33 so "99 +to foo" compiles what "foo 99 + to foo" would, exactly 09:38:16 :noname ' >body +! ; 09:38:22 :noname ' >body postpone literal postpone +! ; 09:38:27 interpret/compile: +to immediate 09:38:46 :-) 09:39:00 no need for a psecial pad 09:40:15 i also hate postpone 09:40:26 use compile and [compile] dammit! 09:40:27 :P 09:40:42 --- quit: ChanServ (kornbluth.freenode.net irc.freenode.net) 09:40:53 i'll try it 09:43:03 ANS makes it warmer and fuzzier 09:43:25 :) 09:44:18 --- join: ChanServ (ChanServ@services.) joined #forth 09:44:18 --- mode: irc.freenode.net set +o ChanServ 09:45:25 It works! Sonarman may be a guru. 09:47:07 you'd need to define interpret/compile: outside of gforth 09:47:08 correction: works for VALUEs, but not for self-fetching local variables (Gforth won't let you tick them). 09:47:27 ah 09:47:36 Very good try, however. 09:47:48 I'm not used to using ">body". 09:48:22 self fetching local variables... you mean constants? 09:48:50 no; : try 99 { foo } foo 100 + . ; 09:48:55 prints 199 09:49:00 { } ? 09:49:10 { } are comments in win32forth 09:49:19 dont know what they are in gforth 09:49:19 the curly braces indicate local variables 09:49:25 ehr 09:49:26 k 09:50:59 my +to definition is very long-winded; i tried using [compile] and postpone in it, but they didn't work; don't know why 09:53:03 { } aren't comments in win32forth 09:53:18 i think they are in SwiftForth 09:53:22 well, after then -- they are comments 09:53:26 s/then/the 09:53:52 --- quit: warpzero (Excess Flood) 09:54:58 --- join: warpzero (~warpzero@mi015.dn178.umontana.edu) joined #forth 09:55:19 * SolarFire greets warpzero 09:57:26 : testit { 2 . } 3 . ; ok 09:57:27 testit ok 09:57:28 eh 09:57:29 yes. : foo { xx -- xx*2 } xx 2* ; 09:57:49 in gforth 09:58:51 --- quit: Sonarman ("Lost terminal") 09:59:01 has anyone ordered from Offete Enterprises? 09:59:04 : testit4 2 . { 3 . } 4 . ; ok 09:59:04 testit4 2 ok 09:59:10 --- join: Sonarman (~matt@adsl-64-169-92-181.dsl.snfc21.pacbell.net) joined #forth 09:59:29 ok so i dont know what { means in win32forth, perhaps it works like \ or something :\ 10:00:44 newbie question: my IRC client always shows that clog is in the room, but he never talks. Why? 10:00:52 oh, loolks like they are lcals after all 10:00:57 clog is a 'bot' 10:01:06 oh 10:01:23 clog logs this channel and publishes it online 10:01:34 and tehre are also just people who idle ;) 10:01:50 the logs are published at http://tunes.org/~nef/logs 10:01:59 onetom is also a bot 10:02:00 very handy 10:02:08 there are acutally two or three loggers here 10:02:10 SolarFire: what does it od? 10:02:13 do 10:02:31 it's an aibot, analyzing 10:02:59 forth.tech.nu says: 10:03:04 does it make those statistic graphs? 10:03:11 very clever bot. sometimes speeking too 10:03:15 and the 'who said what the most' things? 10:04:00 clog great coder, rumored to be the next Chuck Moore, /whois him for more info 10:04:09 oops 10:04:31 i guess they were joking 10:04:40 hehe 10:05:21 jk nm. onetom is our always industrious thomas ;-) 10:06:06 yeah, and the same site says he's a "top forther" but talks weird 10:06:22 just wanted to tease him out of his hawt working day.. 10:07:18 has anyone ordered books from Offete Enterprises? 10:07:41 run by Dr. Ting, i think 10:08:04 yep was closed for sometime 10:08:49 mail thefox and ask.. 10:09:30 i've sent them a check for "Seeing Forth" by Jack Woehr 10:09:45 Jeff Fox 10:10:11 w/ or w/o prior contact? 10:11:03 no contact 10:11:15 just visited the web site 10:11:48 check still hasn't cleared, so i wonder if they're inactive 10:11:58 SolarFire: no, im absolutely not :) 10:12:08 :-) 10:12:10 it's alive! 10:12:33 see see onetom is still here ;-) 10:12:44 a sort of Eliza intelligence built into him! 10:13:11 u know i use irssi & it notifies me about the sentences containing my by coloring the irc window number w a different color 10:13:36 onetom sees colors? 10:13:47 ic that's the way to wake you up.. 10:13:49 he may be the next Chuck Moore! 10:13:56 (colorforth, you know) 10:14:14 we call that mechanism a highlight 10:14:24 tucknip: :)) 10:14:42 he has no words for me :( 10:14:53 tucknip: i actually have my own color editor 10:15:40 the web site for Stoical (forth-like), says that Moore is clinically insane! 10:16:43 color3 words16 for11 tucknip6 to8 make5 him14 happy!8 10:16:58 lol 10:17:10 MY EYES 10:17:17 haha 10:17:18 dont. do. that. 10:17:31 the yellow is unreadable 10:17:36 i mad(e) it w my editor and its irc-color-converter word 10:17:45 dont forget some people have a black background tucknip 10:17:50 tucknip: on a white bg, it is of course 10:17:59 (he's mentally challenged) 10:18:10 all irc clients should have an option to strip colour codes 10:18:21 he know what i said! 10:18:21 black bg rlz 10:18:59 Uncanny! He puts Eliza to shame! 10:19:00 fridge_: or convert them to font styles 10:19:04 tucknip: :p 10:19:08 too much white on the screen hurts my eyes 10:19:21 I should write a custom css for my browser some day 10:19:24 fridge_: and too much love will kill u? ;) 10:19:33 haha 10:19:44 fridge_: come out of the dark! 10:19:52 onetom: it would make you very sore, at the least 10:20:36 It may soon become impossible to tell the bots from the humans! 10:20:56 fridge_: it was just a quote from some lyrics 10:21:02 :)) 10:21:03 tucknip: isn't it already? ;-) 10:21:14 yes 10:21:24 fridge may be a bot 10:21:48 and you, SolarFire? 10:21:59 hrmm no comment 10:23:48 i looked at kc5tja's website (Kestral computer) 10:24:19 tucknip: bugger all, i dunno 10:25:24 it was sad to see that his previous job was at a burger joint??? 10:25:42 or maybe he was an executive for the company 10:25:50 I'm feeling about as employable at the moment 10:26:03 good luck 10:26:11 well, I have a job in IT already, but I want another one that doesn't require me to work upside down hours 10:26:58 ie, its 3am and I'm at work =( 10:27:29 fridge_: don't we need wise and peaceful people just everywhere? 10:30:36 I'm sure someone else could do it 10:30:51 and be equally as caring 10:30:58 and nuturing to the internet as I am 10:32:03 fridge_: do what only you can do 10:32:25 got an interview on thursday 10:32:28 =D 10:32:51 :-) thumbs up ;-) 10:34:22 The Hand That Rocks the Cradle 10:34:26 ez nincs meg vkinek? 10:35:22 what language is that? 10:35:50 hungarian 10:36:01 gnarly 10:36:24 well, takes time to get in tune.. 10:36:45 but is well rewarding 10:41:24 ooops :) 10:41:25 sorry 10:43:31 whoever programmed this guy had some sense of humor 10:44:12 now I'm starting to think tucknip is a bot who disguises his botiness by making the same accusation at others 10:45:37 now i'm starting to think fridge is bot who disguises his botiness by accusing others of disquising their botiness by acusing others 10:46:55 elll me what you think about fridge is bot who disguises his botiness by accusing others of disguising their botiness by accusing others . 10:48:40 wossname: lol 10:49:07 ps i am disguising my bothood by mispelling common and short words 10:49:55 If you were a bot, would you know it? Or would you think you were human? 10:51:13 antivirus update is underway, hold on. ;-) 10:51:15 i'll deal with my existential angst by hunting down and retiring other bots 10:51:30 Bladerunner. 10:51:52 you're not supposed to come out just like that, you're supposed to keep the whole thing going :( 10:52:40 Check out stoical.sourceforge.net/summary.php 10:52:53 --- join: jdrake (irc_user@CPE00045afdd0e8-CM014410113717.cpe.net.cable.rogers.com) joined #forth 10:53:04 He says that Chuck Moore is insane. 10:53:07 wossname: who told you that? ;-) 10:53:10 moore is clinically insane? 10:53:15 solarfire: ;~ 10:53:31 that's a good website :D 10:53:31 http://stoical.sourceforge.net/summary.php says so 10:53:48 i wish i could see his twisted and terrifying dreams 10:54:11 i can imagine no better recommendation for a programming language than that cthulu himself inspired its construction 10:54:21 tucknip: that happens if you project yourself on others.. so, take care ;-) 10:54:29 Yog sothoth! 10:54:56 In R'lyeh, dead Cthulu lies dreaming. 10:55:42 Lovecraft rules. 10:56:05 remembers his father's mail: forgive him, he doesn't know what he says 10:56:16 good ol' lovecraft 10:56:33 chuck moore will be eaten first if he completes his masterpiece 10:56:47 lol 10:57:38 The Old Ones will return; Moore prepares the way. 10:59:27 Lovecraft was a fan of Poe. I think that Poe was the first to propound the "Big Bang" theory, in his "Eureka". 11:01:26 unfortunately i'm not that well read in old horror :( 11:01:29 haha 11:02:34 * fridge_ looks for some stoical syntactic examples 11:02:38 Eureka was non-fiction, describing the birth and growth of the universe, starting with a "big bang" (all matter was originally concentrated at the center). 11:03:43 the old-time radio program "Suspense" did a good rendition of Lovecraft's "Dunwich Horror". 11:08:58 Mr. Liles writes interesting stuff: 11:09:14 For reasons that I've yet to fully appreciate, both Hewlett Packard calculators and Reverse Polish computer languages appear to have an unhealthy effect on the human psyche. Luckily, however, they also happen to stimulate the pleasure centers of the brain. Take note; You have been warned, and yet you have also been encouraged. 11:14:21 those RPN calculators were never understood by one of my math teachers in years past. There was only one person with one in the class, but stumped him :p 11:18:11 i've had an HP calculator for many years; built like a rock and i never had to change the batteries 11:19:13 batteries? what are they 11:19:21 LOL 11:24:41 --- join: Murrlin (murr@dialup-207-218-234-139.ev1.net) joined #forth 11:37:25 how would I give a string to ficl without having memory problems? 11:39:24 or.. if I allocate a memory location for it, will it be automatically freed once it is off the stack? 11:40:49 if the string was allocated by malloc in C, then you could probably free the memory with FREE in Ficl 11:41:20 as long as Ficl's FREE is just libc's free() 11:41:45 i won't have control of when the actual thing is done being used 11:43:17 this looks kind of interesting: http://www-personal.umich.edu/~williams/archive/forth/strings/smodel.html 11:43:21 anyway 11:44:09 you could export a functino from C to ficl that notifies the C code that a string is done being used, and then the string's memory could be freed from C 11:44:30 that is just messy 11:44:45 ficl would have to deal with this situation in its design 11:44:51 what is it you're trying to do withstrings, exactly? 11:45:01 i want to make sure I don't have memory leaks 11:45:12 i am giving strings to forth 11:45:29 i guess I will have to ask the mailing list 11:46:03 if I can find it, as it was mentioned yesterday 11:46:26 ficl should handle the memory itself 11:46:44 so if I malloc memory will it handle the rest itself? 11:47:23 don't know 11:51:54 should have kept my mouth shut 12:01:21 sounds ficl to me 12:12:33 i just sent an email off John Sadler 12:18:41 onetom may know the answer 12:25:12 --- quit: Murrlin ("Mischief managed! ....Nox.") 12:29:37 :/topic #forth 12:38:56 --- join: tathi (~josh@pcp02123722pcs.milfrd01.pa.comcast.net) joined #forth 12:53:16 --- join: Bullrush (~Bull@196.44.2.197) joined #forth 13:04:10 --- part: Bullrush left #forth 13:07:11 hi tathi - you done yet ??? :) 13:14:40 Nope. Got sidetracked by a couple of other things. 13:15:26 :/ 13:15:35 cant be as important as isforth :P 13:15:44 bah. 13:16:02 it's not like I actually need it for anything. ;) 13:16:13 !!!!!!!! 13:16:15 lol 13:16:36 but look at all the cred points you get for doing it! 13:16:38 hehe 13:16:42 :) 13:17:34 I got bogged down in double-cell math, actually. 13:17:54 PPC isn't designed with full multiple-precision integer arithmetic in mind. 13:18:18 You can add and subtract easily enough, of course. 13:18:28 --- quit: jdrake (Read error: 110 (Connection timed out)) 13:18:43 And there are instructions to get the high 32 bits of a multiply. 13:18:56 But dividing... 13:19:17 I finally just decided to leave that stuff out for now. 13:20:42 I get the impressions that the PPC architects decided that 32 bits was big enough for most stuff. 13:20:57 it is 13:20:58 And were more interested in concentrating on floating point than integer math anyway. 13:21:04 fridge_: yeah :) 13:21:28 ahh 13:21:44 I need a break from work to pursue wholly unprofitable ventures in computing 13:21:44 isforth wont support fp till it has an assembler 13:21:51 lol 13:21:55 in fact, I ran a few tests once -- floating point math appears to be *faster* than integer math on my machine. :( 13:22:53 tathi: you're porting isforth to PPC? 13:22:58 tathi it is on most modern machines but thers absolutely NO reason for that 13:23:42 I4_wrk: well, it took me totally by surprise :) 13:23:48 Sonarman: yup. 13:25:21 ya could be finished by now :P 13:25:43 I know, I know. 13:26:11 thats ok, i cant run ppc code anyway :P 13:26:49 I can't run x86 code on my machine ;) 13:26:59 Though, interestingly enough, nasm works great. 13:27:19 I built a bootable copy of ciforth for qfox the other day :) 13:29:09 lol 13:30:06 that's some uuugly code, let me tell you. 13:30:23 I'd be ashamed to release something that kludgy. 13:30:41 albert's code or your bootable code? 13:31:59 albert's code. 13:32:09 I just built the thing. 13:32:30 ok 13:32:51 I had to hack the Makefile a bit to get it to work, so I was looking around a bit. 13:33:15 It just looks like someone's personal, hastily thrown together Makefile. 13:33:25 Not something you'd expect to find in a decent piece of software. 13:33:32 But whatever. 13:35:39 tathi: have you been able to build gforth 0.6.2 with fflib onPPC? 13:35:56 yup. 13:36:11 Had to hack the configure script slightly. 13:36:36 And then, for some reason, my autoconf was screwing up, so I reinstalled auto* and m4 several times before I got that fixed. 13:36:37 what changes did you make? 13:36:56 There's lines in configure.in saying that long long is broken under gcc-2.95.* 13:37:05 on ppc 13:37:26 so he disabled long long on ppc, so it uses emulation. 13:37:32 Which doesn't work, apparently. 13:38:09 I e-mailed kc5, he said he might get to putting it up on his site last night. 13:38:24 yup. 13:38:41 http://www.falvotech.com/kestrel.html 13:38:46 i've found the line; what did you do? did you comment it out? 13:38:52 yeah. 13:39:01 though you could just as well delete it. 13:39:39 Sonarman: you running a PPC box then? 13:40:05 yes 13:40:38 I always forget who is. 13:41:01 :-) 13:42:29 shit 13:42:36 i've completely ran out of HD space again 13:42:43 gah. I hate that. 13:42:46 rm -rf / 13:42:57 rm -rf /usr/portage/distfiles :) 13:43:06 rm -rf /var/tmp/portage 13:43:07 erm make that ...distfiles/* 13:43:16 I4_wrk, tathi: already did both :) 13:43:18 lol noooo 13:43:24 :) 13:43:42 var tmp portage is never left full of unpacked sources 13:43:46 Gentoo has an annoying habit of leaving unpacked sources in /var/tmp/portage 13:43:51 heh. 13:43:51 it cleans them all out on successfull build 13:43:54 it doesnt 13:43:58 on a *successful* build, yes. 13:44:02 oh 13:44:03 right lol 13:44:06 ! 13:44:33 Last time I ran out of hd space, it turned out I had four different copies of the mozilla sources, one glibc, and a gcc or two. 13:45:01 lol 13:45:10 lol 13:45:28 well, last night i discovered that i had three copies of the eth oberon sources :) 13:45:39 plus a tarball 13:45:42 though admittedly I probably left the glibc and gcc there on purpose so I could look at them 13:46:17 err why ever would you even consider looking at that gobbldegook 13:46:30 I forget. 13:46:37 Oh. 13:47:06 I was looking for some usable math routines. 13:47:48 And I was trying fix the assembler, I think. 13:48:19 There _is_ some useful stuff in there, it's just near impossible to find. 13:48:26 I'm getting good at grep :) 13:55:30 Actually, I take that back. Most of the useful stuff is in the kernel and binutils. 13:55:53 glibc is mostly a pile of #ifdefs and confusing macros. :) 13:56:09 haha 13:56:16 I hear a lot of people decry glibc 13:58:04 its easier to reverse engineer the object files than it is to read the soruces 13:58:13 tells you alot about the "so called" coders 13:58:21 I haven't found (or written) a good disassembler for PPC yet. 13:58:59 And unix has good text tools. 13:59:13 I find it's easier to search the sources than to mess with gdb. 13:59:47 tathi, did you pass any arguments to configure when compiling gforht? 13:59:54 Sonarman: nope. 14:00:03 what's happening? 14:01:15 --- quit: SDO ("Vision[0.9.6-0203]: i've been blurred!") 14:01:25 --- join: SDO (~SDO@68.64.143.12) joined #forth 14:02:47 seems to be working, actually 14:02:57 * Sonarman keeps his fingers crossed. 14:03:30 the lines for ffcall are 14:03:41 "checking for ... in -lcallback" 14:03:48 "checking for ... in -ltrampoline" 14:03:55 there's one more. 14:04:37 and the sizeof long long should be 8, not 0. 14:07:05 ah, the compilation has gotten farther than it ever has before, and it hasn't stopped with failure yet 14:07:08 thank you, tathi!! 14:07:32 cool. 14:07:57 glad to help. 14:08:35 you're trying to play with the Kestrel emulator? 14:08:43 or just wanted the ffcall stuff? 14:11:43 nothing in particular, actually 14:12:40 i just thought it'd be good to have if i ever wanted to use the emulator or do ffcall stuff, and when i saw that you had gotten it to work, i decided i may as well try again 14:13:10 ah, ok. 14:14:09 to use the emulator I had to manually load libpthread, BTW. 14:14:33 mine isn't statically linked into SDL. 14:14:38 (don't know how normal that is) 14:15:29 mine is 14:19:29 ciforth by Albert van der Horst. It seems slow for a forth written in assembly language. 14:21:06 maybe its being ITC is a factor. 14:21:13 and it uses m4 bleh :) 14:25:12 what does it use m4 for? the build scr ipts? 14:25:14 scripots 14:25:18 grech 14:26:47 it's designed to be customizable 14:26:49 16/32 bit 14:27:03 asm files for masm/nasm/gas 14:27:20 uses bios/linux for underlying services 14:27:34 uses m4 to customize the asm files appropriately. 14:28:19 wow, the emulator appears to be working 14:28:31 :) 14:28:32 but the colors are off in the color test. must be an endianness issue 14:28:45 yeah. 14:28:48 simple enough to fix. 14:33:40 here's what I have (in emu.fs) 14:33:42 : field $E0 and ; 14:33:42 : >red clrbyte 24 lshift ; 14:33:42 : field $1C and 3 lshift ; 14:33:42 : >grn clrbyte 16 lshift ; 14:33:45 : field dup $03 and 6 lshift swap $20 and or ; 14:33:47 : >blu clrbyte 8 lshift ; 14:34:33 laters (food) 14:35:16 grr why did they call it lshift and rshift - might as well have just gone ahead and called it "shift-the-data-left" and "shift-the-data-right 14:35:25 can you say "verbose! 14:35:32 << == shift left 14:35:36 >> == shift right 14:35:42 u>> == unsigned shift right 14:35:48 much easier on the eyes 14:35:56 god i hate ans forth 14:36:35 perhaps they wanted to keep it from looking like C 14:36:58 but your way does look pretty good 14:40:34 i find throw and catch helpful 14:45:17 :) 14:45:31 where as i find catch/throw to be iky heh 14:46:23 but abort and abort" are insufficient 14:47:27 right. when you are several levels below the initiating word, throw-catch lets you bail out easily without aborting 14:48:58 i like things that make it easier for me to program; i'm lazy and my brainpower is rather limited. :) 14:49:37 simpler == better code 14:50:01 if you dont have 2084652398465294892074569 things to juggle in your mind 14:50:18 yep 14:52:10 of course, when you catch, you've got to clean up the stack 14:52:45 drop the things that would have been used 14:53:01 if there hadn't been a throw 14:53:50 i couldn't understand how to use catch-throw by reading the ANS docs 14:54:16 had to read the docs for chForth (another Dutch forth, by Coos Haak) 14:56:24 lol thats albert, coos and marcel 14:56:26 any more ? 14:56:39 :) 14:56:52 Holland is a hotbed of forthing 14:56:54 i think they are all the same guy with 3 personalities :) 14:57:14 he's got a real problem, then 14:57:17 hehe 14:57:23 not reall all of him code forth :) 14:57:58 i'm thinking about buying Marcel's iForth; $99 14:58:07 yes 14:58:15 that guy is damned impressive 14:58:33 and thats damned cheap for what it does 14:59:29 DOS, Windows, and Linux for 1 price; very fast programs, too 15:01:07 i mean the programs his forth produces 15:01:24 about like VFX, which is $400 15:02:08 --- join: doublec (~doublec@coretech.co.nz) joined #forth 15:03:17 from New Zealand? land of Bruce Hoyt 15:04:01 heh. I like having lots of registers 15:04:11 tucknip, Bruce hoult? 15:04:35 he wrote English docs for Smal32 15:04:35 oops, nope, hoyt from c.l.f 15:04:42 a Russian forth for DOS 15:04:44 doublec: ignore the bot 15:05:05 heh, ok :) 15:05:06 i.e., ignore fridge 15:07:01 anyone use a DOS-box under Windoze? 15:09:29 is cmeme the author of Meme? Has anyone here used Meme? 15:11:27 err...cmeme is the recommended replacement for clog, isn't it? 15:11:39 beats me 15:12:07 Meme is a forth-based virtual reality 3D system 15:12:13 it's free 15:12:49 neat. 15:12:56 i downloaded it but haven't used it 15:13:43 Loop-Hog's site has link to it: www.immersive.com 15:13:57 whois meme gives meme.b9.com - Meme is a web application which displays IRC logs. Currently, Meme is logging select channels from freenode. 15:14:30 oh right. 15:15:02 I've seen that site before. Never really looked into it though. 15:15:49 i've glanced at the docs, but didn't attempt to come to grips with it 15:16:58 i was just looking for a Forth that could do simple 2D graphics 15:18:36 gotcha. 15:22:04 --- part: tucknip left #forth 15:28:50 hmm, someone want to quick tell me what the x86's scasd instruction does, or should I go read the docs? 15:29:38 Oh wait. It checks dwords starting at address esi to see if they match eax, I bet. 15:31:30 and increments are decrements edi 15:31:39 and ecx if you used a rep prefix 15:32:15 and it checks the dword at edi not esi 15:32:19 oh, edi. 15:32:20 thanks 15:32:27 no 15:32:36 er, np rather 15:33:09 :) 15:33:28 I haven't done any x86 asm since...oh...1996 or so. 15:33:37 hehe 15:33:40 --- join: Topaz (~top@spc1-horn1-6-0-cust217.cosh.broadband.ntl.com) joined #forth 15:33:44 done any other? 15:34:47 yeah, at that point I bought myself a 68K Apple laptop. 15:34:59 And shortly thereafter, a PowerMac desktop system. 15:35:22 I've mostly done PPC. 15:35:57 ah ok. yah they're quite different 15:36:00 Oh, and I bought a TI-86 when they first came out, so I spent about 6 months reverse engineering and writing Z80 asm code. 15:36:29 I did x86 for about 4 years, it's just that I haven't touched it since. 15:36:58 cool 15:37:18 it's not a good instruction set to remember either 15:37:22 lots of implied things 15:38:26 yup. 15:38:52 I remember thinking PPC was very weird when I first learned it :) 15:40:49 --- join: aum (~aum@port-204-54-210.fastadsl.net.nz) joined #forth 15:41:30 hmm, i want a non-x86 machine 15:41:50 i'm getting an SGI O2, but they're not exactly efficient :D 15:42:11 i'll trade it for my x86 :) 15:42:37 actually, ain't too ba 15:42:37 d 15:42:40 170W apparently 15:42:47 (the max rating for the PSU) 15:42:51 so i guess the actual machine is far less 15:46:46 hmm... "mov edi, esi" sets edi, right? 15:46:48 hrm, my O2 is 20 miles away :/ 15:47:28 --- join: Tomasu (~moose@d66-222-216-222.abhsia.telus.net) joined #forth 15:53:57 i think i'm going to nuke IRIX and stick on debian instead 15:54:42 --- quit: tathi ("volleyball") 16:04:07 ." debian is heaven" cr 16:20:56 --- quit: Tomasu (Read error: 110 (Connection timed out)) 16:40:21 --- quit: Topaz (Read error: 110 (Connection timed out)) 16:51:05 --- join: Tomasu (~moose@d66-222-216-222.abhsia.telus.net) joined #forth 16:56:32 hey 16:57:07 hey 16:58:16 --- quit: Tomasu (Read error: 104 (Connection reset by peer)) 17:00:01 --- join: Tomasu (~moose@d198-53-171-40.abhsia.telus.net) joined #forth 17:04:35 doublec: ping 17:08:13 --- join: lalalim_ (~lalalim@pD95EAFBB.dip.t-dialin.net) joined #forth 17:21:29 --- quit: lalalim (Read error: 110 (Connection timed out)) 17:37:14 slava: ping 17:37:18 hey 17:39:51 how's the cfactor going? 17:40:13 nice weblog posting btw 17:40:37 i'm working on the gc 17:40:58 is it easier or harder than you expected? 17:41:09 about what i expected 17:41:16 i'm implementing a stop and copy collector 17:41:29 --- quit: qFox ("meh ircii's netsplit detection appearantly sux ^^") 17:41:31 ok 17:41:55 how's the to do list? 17:42:00 can i try it out? 17:42:20 good. I got sidetracked last night reading some papers on continuations but I'll be back at it tonight. 17:42:51 can you put it on a server somewhere? 17:43:10 I don't have the latest code here (I'm at work) but I can bring up a demo tonight. 17:43:17 ok 17:44:45 doublec: tonight i'll probably blog about the cross-compiler. 17:44:59 cool, I look forward to reading about it. 17:45:01 oh did i tell you the text interpreter in cfactor works? 17:45:08 fsvo "works" 17:45:10 Nope, that's great news! 17:45:13 :) 17:45:15 it can do "Hello world" print 17:45:22 however there is no way to input numbers. 17:45:25 you can input lists though 17:45:38 but not print them either, only string output is done. i need to implement . in terms of print 17:45:43 previously . was in java 17:45:51 There's a lot of blog talk at the moment about Python being in 'beta' for Symbian cellphones. I'd like to try and get CFactor running on it. It'd make a great 'in-phone' development system. 17:46:00 yeah. 17:46:12 i'll be doing more work on jedit-factor integration using the factor 'telnetd'. 17:46:21 plus you can cross compile and just send the image to the phone. How big is the image at the moment? 17:46:26 57kb. 17:46:35 however, for a 'turnkey' app you can strip the text interpreter from the imgae. 17:46:45 cool, that'll easilly fit on the phone. 17:46:54 you can also strip the vocabulary hash and word property lists, leaving only code -- so minimum is really 20-30kb 17:47:02 nice 17:47:08 how much store does the phone have? 17:48:01 The series 60 phones have a maximum of about 3MB of run time memory. But that's shared across all apps so really only 1-2MB to be a nice behaved app. Storage is about the same although some have SD and MMC card slots. 17:48:22 It's the run-time memory requirements that are usually the limitation. 17:48:59 well the final image will be 300 kb maybe, once everything cross compiles 17:49:10 once gc works, the next step is to get the cfactor running the cross compiler 17:49:11 --- 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.") 17:49:24 i still haven't figured out how to get the namespace? predicate to work 17:49:34 Sounds like it'll be fine. If Python can run on it I'm sure Factor can! 17:49:47 does it have FP? 17:50:22 No, it emulates FP operations. It also doesn't have a hardware divide instruction. The OS emulates that too. So for high performance you avoid floats and divides. 17:50:34 i haven't added anything but the integer type to cfactor yet but i will soon. 17:50:52 nothing uses / or * in the course of normal operation. 17:51:02 cool 17:51:30 i'll upload a new build tonight. 17:51:46 i'll rearrange the source tree so that c and java backends are in the same archive 17:51:55 ok 17:51:59 i requested an SF.net project so i'll be moving to SF cvs soon. 17:53:31 does the phone have graphics apis? 17:54:09 yes it does. 17:54:17 there are even 3D engines for it. 17:55:30 I've quickly set up a server with the older version of the cont-responder code but which has the responders split out: 17:55:35 http://factor.modalwebserver.co.nz:8888/counter2/ 17:55:55 ALso /counter1/, /test1/, /test2/, /test3/ 17:56:05 at some stage i'd like to hook up opengl or sdl to native factor. 17:56:10 and /todo/ 17:56:24 but /todo/ doesn't have anything beyond the login screen as I haven't registered any users :) 17:57:17 lol 17:57:25 counter1 is different from counter2 in that counter1 has the counter 'backtracked' if you use the back button and copy the url. The number is independant from all the copies of it. In counter2 there is only one number that when incremented and backed, retains its value. 17:57:38 cool 17:57:45 i'm browsing the code 17:57:56 basically it uses the ui state is backtracked id that avi mentioned on irc 17:57:58 cool 17:58:12 http://factor.modalwebserver.co.nz:8888/inspect/global'vocabularies'todo-example'button 17:58:14 nice 17:58:38 value= rot <-- do the tag words use the datastack? 17:58:52 yes 17:59:01 they should use the namestack instead IMHO 17:59:10 By the time a 'value=' is done there are two items on they stack. hence the rot to get the data under it. 17:59:21 that's confusing 17:59:26 yeah, I think you are right. it's a bit unintuitive the way it is at the moment 18:03:34 doublec: do you think the workspace code in the java interpreter should stay? 18:04:01 slava, I'd actually like it too if possible. It would make storage for web apps much easier. 18:04:13 the image concept in the C interpreter is much more elegant and simpler, but in theory the db is more scalable because parts can be loaded/saved selectively. 18:06:08 can you save a running image? 18:10:13 yes 18:10:39 What happens with things like file handles? I assume they go invalid or something? 18:13:08 yes 18:13:28 when an image is loaded, a 'relocation' is done where it iterates through each object in the heap adjusting pointers 18:13:35 of a handle is found, it is nulled 18:13:39 cool 18:14:14 I'm going to change the html tag words to not leave the tag on the datastack and instead add it to the namespace stack so there's no need for the 'rot' trickery to get at items. 18:19:07 cool 18:22:35 whoa 18:22:45 i reduced the startup time of the java interpreter from 5.7 seconds to 3.5 seconds 18:23:54 nice, how did you do that? 18:25:42 make the compiler a bit faster 18:28:19 --- join: foobar (fooboo@dialup-4.154.43.140.Dial1.Atlanta1.Level3.net) joined #forth 18:33:44 --- join: poingie (~chatzilla@64-121-15-14.c3-0.sfrn-ubr8.sfrn.ca.cable.rcn.com) joined #forth 18:46:06 --- join: Herkamire (~jason@h000094d30ba2.ne.client2.attbi.com) joined #forth 18:49:57 I440r: I4_wrk is still connected! 18:50:27 he is an imposter 18:50:29 im the real me 18:50:32 * I440r stands up 18:51:39 will the real I440r please stand up 18:52:03 All the other I440rs are just immitating 18:52:11 his double or doppleganger is using his computer at work 18:52:49 you shouldn't leave your work computer on all the time. they waste a lot of electricity 18:53:19 if cpu is idle, it draws less power, right? 18:53:58 when my cpu runs at full tilt on my laptop, the fan comes on 18:54:17 like when a chess program is continuously thinking 18:55:37 --- quit: slava (Read error: 104 (Connection reset by peer)) 18:56:26 Herkamire, i believed it when i read that clog was rumored to be the next Chuck Moore 18:56:39 then i was told it's a bot 18:58:29 hehe 18:58:34 didn't try /whois? 18:58:45 nope 18:59:05 then onetom started talking to us in color 18:59:18 trippy ;) 18:59:42 I found out how to do colors recently 18:59:47 when I complained that the yellow text was unreadable, he replied that was only with a white bg 19:00:02 he said black bg rulez 19:00:07 How? 19:00:13 I find it much nicer 19:00:25 especially with dim room lighting 19:00:40 like a good old DOS prompt 19:00:45 white bg sometimes makes me feel like I'm staring into a light bulb 19:00:51 yep 19:00:58 like a good old GNU/Linux terminal 19:01:48 i use the CLI for almost everything, even though it's only DOS; copying, deleting, renaming, running programs 19:02:03 --- mode: ChanServ set +o I440r 19:02:10 I've never used dos 19:02:18 except once experimenting 19:02:29 figured it out a bit 19:02:32 made a couple batch files 19:02:46 it's a POS if you ask me 19:03:23 it's crude, but better than nothing 19:04:06 and amazingly, MS has improved it over the years. 19:04:20 so how do you print in COLOR?? 19:04:27 as onetom did? 19:04:52 I don't see the point of using DOS now that there's GNU/Linux 19:04:52 this is blue? 19:05:16 you may have to look at the docs for your irc client 19:05:21 ok 19:05:22 anyone here code for fbsd ? 19:05:24 at all ? 19:05:46 in mirc it's ^C then a number for the color 19:05:59 in irssi it's ^K then the number 19:10:54 the 4red1 fox 19:11:05 --- quit: wossname (Read error: 110 (Connection timed out)) 19:11:08 ^k works in HIRC 19:11:10 1test 19:11:15 4test 19:11:22 ^C in irss 19:11:23 i 19:11:38 5hehe 19:12:01 hey, no black 19:12:09 7PAIN 19:12:14 whoops 19:12:16 8PAIN 19:12:27 ok, i'm done. sorry :) 19:12:28 9green1 black is 1 19:14:48 i guess colorforth's easy to chat about on irc 19:15:51 tried out retroforth .. am i right in guessing it doesn't check for underflow? 19:15:54 poingie: yeah, you just put in symbols. 19:16:19 poingie: I'd be suprised if it did 19:16:57 i guess it's overhead 19:17:54 unless you can setup something fancy with memory protection... I'd guess checking for stack underflow and overflow would cut your speed at least in half. 19:18:21 maybe down to a quarter or less 19:18:22 Gforth uses the MMU,per Bernd Paysan 19:18:57 wonder what bigforth uses 19:19:17 perhaps MMU also, since it's by Bernd 19:19:24 bigforth seems the only forth that runs on win and linux and has a working ffi 19:19:34 ffi? 19:19:40 foreign function interface 19:19:42 call to dll's 19:19:47 gforth 19:19:54 ffi doesnt work on win 19:19:58 --- join: jdrake (irc_user@CPE00045afdd0e8-CM014410113717.cpe.net.cable.rogers.com) joined #forth 19:19:58 oh 19:20:38 i hope bernd doesnt lose interest in bigforth and go gforth only 19:21:01 i wish someone would write docs for bigForth 19:21:01 I guess not that many forthers are terribly interested in ffi 19:21:08 I'm certainly not 19:21:17 foobar it's got great docs. sprechen sie deutsch? ;) 19:21:39 you mean they're in German?? 19:21:50 ffi lets me get at sdl. i'm sorta disinclined to write video drivers 19:22:09 heh :) I was just thinking that the only thing I'd want to use would be SDL 19:22:15 Mit donnerstimme geb ich die antwort: nein! 19:22:45 --- join: slava (~slava@CPE00096ba44261-CM000e5cdfda14.cpe.net.cable.rogers.com) joined #forth 19:23:28 i gotta get motivated to work on my bigforth sdl bindings again 19:23:37 efficient corporation... " you can unsubscribe by emailing your iREWARDS number to iRunsubscribe@indigo.ca. Please allow up to 7 business days for your request to be processed." 19:24:02 is the problem with me and projects these days. getting started. 19:24:22 heh, that's an unusual problem 19:24:32 mostly I have trouble finishing 19:24:40 oh i never finish anyway 19:24:45 except herkforth... progress pregress pregress 19:25:36 i guess i just need a hobby project that interests me 19:26:09 work projects are heavy on gluing text processing, db, network, etc. so i use python (actually pyrex) 19:26:43 hey herk, do you know stuff about ficl? 19:28:36 jdrake: no 19:29:13 poingie: yeah, I really like having one project that I'm really into 19:29:42 just in case anyone knowledgeable happens to be around - how would you give a string to ficl without having memory leak problems? Knowing that you would not be able to free it your self later on, I am not sure if it actually would free a malloced memory block for you. 19:30:17 jdrake: you want garbage collection?? 19:30:40 maybe i should write a mud in forth 19:30:45 Herkamire, well i figure ficl would have had to deal with this problem somewhere, so I want to know if there is any special rules about 19:31:34 jdrake, if you are pushing a c-string allocated from C on the forth stack you could write a word like 'free' that frees it. It would be up to the forth code to do that though. 19:31:35 jdrake: nm, I don't know enough about ficle to talk about this intellegently 19:32:17 doublec, exactly, which is why I can't do that. I can't guarantee that users will do that. 19:32:50 where i get stuck with the sdl bindings is wondering if i should be using the awkward struct package or just roll my own accessors with create does> 19:33:27 jdrake, does it need to be the exact pointer? Can you convert to a Forth counted string and copy to an area in Forth memory (a static buffer or something)? 19:33:28 or if i should go whole hog and use some OOF 19:33:59 doublec, that might be possible 19:34:21 i am still waiting for a reply from the author of ficl, hopefully I shall receive instruction from that 19:34:32 if I could find a few examples around it would be nice, but I don't know of any 19:34:43 jdrake, that's the approach I tended to take. Unfortunately I had to wrap C++ interfaces so I often had to write words to delete/free the memory. Painful. 19:42:05 There is a Forth garbage collector you could try also: http://www.complang.tuwien.ac.at/forth/garbage-collection.zip 19:53:15 wtf would anyoen want with garbage collection in forth 19:53:20 thats a C ism 19:53:22 :) 19:53:26 c is garbage. forth isnt 19:53:27 ! 19:53:28 gc is good 19:53:42 it simplifies code with very little performance cost 19:54:36 I440r, many cases garbage collection is good practice because memory management is not part of the problem domain you are trying to solve. 19:54:50 I440r, a common idiom is to copy string information to a temporary buffer and use it. Sometimes you want that buffer to live for a longer time. Garbage collection allows managing that buffers lifetime automatically rather than manually freeing it and making mistakes. 19:55:21 --- nick: Tomasu -> AngelChildIsHot 19:56:19 --- nick: AngelChildIsHot -> Tomasu 19:56:38 --- nick: Tomasu -> AngelChildIsHot 19:56:52 so the ANS committee should have added garbage collection 19:57:13 objective C has a method that isn't too horrible, it is a reference counter along with functions alloc, retain, release, and autorelease. Alloc allocates said memory with a retain count of 1, retain increases that count, release decreases it. Then autorelease decreases it and it will be deallocated later. 19:57:33 reference counting is silly 19:57:38 it doesn't work with circular structures 19:57:45 object cycles become a problem 19:57:46 exactly 19:57:47 and if you miss a ref/unref in 1 place in the code, the whole thing is fucked 19:58:09 slava, actually for how objective C works it isn't too bad, but I do prefer automatic memory management 19:58:18 --- nick: AngelChildIsHot -> Tomasu 19:58:31 i don't like mark and sweep either because it requires objects have headers 19:58:49 and complicates alloc/free since you have to maintian a free list. 19:58:56 i was just thinking on an objective c wrapper for forth :-) 19:59:19 a copying collector is the closest to forth philosophy 19:59:23 * foobar says 3Tomasu is now known as an Idiot 19:59:26 no object headers, simple collection algorithm 19:59:34 but I think i will be satisfied for now getting an opengl binding going for ficl 20:01:55 slava, a stop and copy moves objects in memory right? So do you have to go back and relocate original object references? Or do you use some form of indirection in the first place? 20:02:19 foobar, uh? we were just playing around in another channel :) 20:02:20 --- join: wmg (~weldon@bgp02689673bgs.flrdav01.dc.comcast.net) joined #forth 20:02:28 doublec, no, direct pointers 20:02:36 doublec, since everything is copied all pointers are updated 20:03:58 slava, so when you do the copy you adjust the pointers? 20:05:14 oh, of course, all live objects are copied so all pointers are eventually updated. 20:05:39 yes 20:06:10 --- part: foobar left #forth 20:08:25 doublec, when I get the SF project approved I'll give you CVS access too 20:09:03 jdrake obviously hasnt looked at the isforth memory manager 20:09:10 :) 20:09:27 doublec, new java&c factors are up. 20:10:32 I440r, the what? 20:10:49 src/ext/memory.f 20:10:55 a memory manager 20:10:58 alloc and free 20:11:00 etc 20:11:04 your platform will be jealous that you're trying to manage memory for it 20:13:23 i wouldn't be able to run isforth even if I wanted to, so I would never have had any chance of seeing it 20:14:04 --- part: wmg left #forth 20:15:35 slava, that'd be great, thanks. 20:15:45 I've never heard of gc in C 20:16:04 ? 20:16:26 i'm writing one :-P 20:16:33 boehm demers weiser conservative gc is popular with c 20:16:43 one reason being that it's free and works pretty well 20:17:12 gcj uses it 20:19:09 slava, got them, thanks. 20:19:27 doublec, check out library/platform/native/parser.factor 20:20:55 slava, nice and short! 20:21:05 its not complete yet 20:21:11 missing a bunch of parsing words and str->num 20:25:58 I like reference counting, it's simple. 20:26:14 slava, It's nice to see "hello" print working :) 20:26:51 --- join: poingie_ (~chatzilla@64-121-15-14.c3-0.sfrn-ubr8.sfrn.ca.cable.rcn.com) joined #forth 20:27:04 doublec, its even nicer than the parsing of that line, and the vocabulary lookup of the 'print' word is done in factor code 20:27:26 --- join: Typosu (~moose@d66-222-216-222.abhsia.telus.net) joined #forth 20:30:35 yep 20:30:50 did you see native/namespaces.factor? 20:30:50 It's doing lots of work in factor now which is great to see. 20:31:00 not yet, I'll take a look. 20:31:50 --- join: poingie__ (~chatzilla@64-121-15-14.c3-0.sfrn-ubr8.sfrn.ca.cable.rcn.com) joined #forth 20:31:52 even get/set are library functions now. 20:32:05 slava, what does 'getenv' and 'setenv' do? 20:32:08 --- join: poingie___ (~chatzilla@64-121-15-14.c3-0.sfrn-ubr8.sfrn.ca.cable.rcn.com) joined #forth 20:32:24 doublec, the interpreter lets the library store values in 8 environment slots with getenv/setenv 20:32:28 --- quit: poingie___ (Client Quit) 20:32:30 --- quit: Tomasu (Nick collision from services.) 20:32:34 doublec, this is to get around the chicken and egg problem of where to put the global namespace. 20:32:35 --- nick: Typosu -> Tomasu 20:32:39 doublec, i didn't want special accessor primitives 20:32:47 ok, makes sense 20:32:52 doublec, also 0/1/2 getenv is the standard file descriptors 20:33:03 its wrapped in a to give the normal stream API to it in native/streams.factor 20:39:14 --- nick: skylan_ -> skylan 20:40:14 --- quit: poingie (Connection timed out) 20:45:25 --- quit: Tomasu (Read error: 104 (Connection reset by peer)) 20:45:39 --- join: Tomasu (~moose@d66-222-216-222.abhsia.telus.net) joined #forth 20:48:19 --- quit: poingie_ (Connection timed out) 20:50:37 --- quit: poingie__ (Connection timed out) 21:23:14 --- quit: I4_wrk (Read error: 104 (Connection reset by peer)) 21:24:16 --- join: I4_wrk (~mark4@168-215-246-243.gen.twtelecom.net) joined #forth 21:24:33 --- quit: I440r (Excess Flood) 21:24:45 --- join: I440r (~mark4@216-110-82-1.gen.twtelecom.net) joined #forth 21:32:43 --- quit: jdrake (Read error: 60 (Operation timed out)) 22:13:44 --- quit: doublec ("Leaving") 22:23:44 --- join: lalalim (~lalalim@pD95EAAF4.dip.t-dialin.net) joined #forth 22:25:31 --- join: htp1234 (~tehsux@S0106000d6151238b.gv.shawcable.net) joined #forth 22:26:15 --- quit: htp123 (Read error: 104 (Connection reset by peer)) 22:27:04 --- join: Serg (~z@212.34.52.140) joined #forth 22:36:19 --- nick: htp1234 -> htp123 22:40:22 --- quit: lalalim_ (Read error: 110 (Connection timed out)) 22:59:56 --- join: SolarFire-| (SolarFire@pD9E5939E.dip.t-dialin.net) joined #forth 23:01:03 I440r: hi - are you there? 23:04:27 aum lol no 23:04:29 :) 23:04:34 was about to go zzz again 23:04:41 whussup? 23:06:00 I440r: just looking at isforth 23:06:06 :) 23:06:14 I440r: how hard would it be to replace the assembler kernel with a c kernel? 23:06:29 why the hell would i even want to 23:06:44 the whole point in doing isforth in the first place was so i could stay the hell awayu from c 23:06:57 and i mean literally. thats wny i wrote it 23:07:04 I440r: not all processors understand x86 binary 23:07:13 ans forth == c 23:07:17 c == ans forth 23:07:22 ?? 23:07:28 therse a ppc port in the works 23:07:36 im also working on a fbsd port 23:07:51 when i read c i eventually see nothing but 23:07:54 b;ah 23:07:57 blah 23:07:59 b;ah 23:08:06 blah 23:08:10 blah 23:08:13 blah 23:08:15 b;ah 23:08:27 i get the same reaction to ans forth 23:08:38 you're not a fan of ans forth? 23:08:49 im about as ANTI ans forth as you can get 23:09:00 which forth model does isforth follow? 23:09:11 the isforth model :) 23:09:25 im not being constrained by a "you cant do this here" bullshit standard 23:09:47 and before you say it 23:10:07 portabity is a COMPLETE and UTTER myth 23:10:09 at least ans provides some sort of norm though 23:10:23 err. and we need this why ? 23:10:24 to measure your own ideas against if anything 23:10:31 ans also gives hope that forth written on one box might have a ghost of running on another 23:10:31 lol 23:10:43 ill put isforth up against gforth ANY day 23:10:56 aum bullshit 23:10:56 heh, gforth is massive 23:10:58 gforth beats isforth in recursive fib, but not by much 23:11:21 show me portable code in any language and ill show you myuultiple versions of the same source files all interleaved into the same source files 23:11:36 with inordinate ammounts of bullshit visual clutter red tape 23:11:39 I440r: say that on #java, I double dare ya! :p 23:11:46 #ifdefined xyzzy 23:11:48 do this 23:11:53 blah blah bla 23:12:34 java is also not portable. 23:13:01 therse microsoft java 23:13:16 well, about as much as ans forth 23:13:17 sun ? 23:13:18 err 23:13:26 'microsoft java' is an oxymoron 23:13:31 aans forth is in no way what so ever portable 23:13:33 java is just a stack based virtual machine, so it's sort of like a bloated forth 23:13:39 its a crock of BULLSHIT 23:14:01 thers no fucking such thing as code that will run in all operating systems on all processors 23:14:21 i agree, i'm just pointing out that java is really not much different from a forth system interpeting tokenized forth 23:14:24 aka source code 23:14:49 aum, java implements the same stuff several times for each platform (native code generator, I/O libs, etc) 23:14:50 neway code written for isforth x86 will run on isforth ppc and there wont be any red tape 23:14:52 python written with slight discipline is every bit as portable as java anyway, and vastly less bloated 23:15:03 because i refuse to add any form of conditional compilation 23:15:04 what so ever 23:15:28 heh, yah that's nasty 23:15:38 isforth is a backlash against all the bullshit yousee in c and ans forth 23:15:58 aum, python is much slower than java though 23:16:00 it's awesome when you read C code and you not only have to cross reference a dozent files to figure out what what means, but also what will actually be compiled 23:16:21 no. u just compile it and reverse engineer it 23:16:24 slava: pretty much the same, or faster, with psyco 23:16:42 i can reverse engineer the whole of libc before i could ever make head or tail of millionth of its sources 23:16:49 --- quit: SolarFire (Connection timed out) 23:16:51 hehe 23:16:56 yah probably quite true 23:17:14 aum, i doubt it. python has a really crappy gc with reference counting and high overhead per object 23:17:39 slava would you call java absolutely portable 23:17:47 89% ? 23:17:52 90% i mean ? 23:17:59 portable unless you write bad code 23:18:04 eg, if you hardcode file paths or something 23:18:17 err 99.999999999999999999999999999% of all coders in all languages write very bad code 23:18:20 i rest my case 23:18:22 yes 23:18:35 but i've written java that 'just worked' on win/mac and i only use *nix 23:18:44 most of the java programs I've tried did not work on my system 23:18:48 your not a bad coder hehe 23:18:53 we already knew that 23:18:55 this makes me think java isn't as portable as people say 23:19:04 its more portable, than, say C 23:19:21 c is totally not portable 23:19:31 Herkamire, that's because you're using linux-ppc which only 10 other people use ;) 23:19:44 lol 23:20:01 i think its 10 total isnt it ? 23:21:03 slava: I had the same problem on mac 23:21:16 aum i want lots of versions of the isforth kernel out there, i want code compiled on any to work on ALL with only very very very minor mods 23:22:16 but it is highly questionable weather isforth app code will be 100% portable 23:22:19 why is the java VM so freaking hard to implement? 23:22:54 Herkamire: because Java is the PL/1 of the 1990s-2000s 23:23:03 lol 23:23:14 plm 0 - false 23:23:16 1 = trye 23:23:18 a java VM is easy to impleemnt, its the class libraries that are hard 23:23:21 2 = false 23:23:21 because they're so huge 23:23:29 3 = true 23:23:31 lol 23:23:31 pl/m-86 was nice though 23:23:32 lol 23:23:50 no switch statements 23:24:00 lots of nested/sequential if;s tho :) 23:24:04 neway time for zzz 23:24:23 i've pretty much finished adding python object support to FICL, so FICL progs using python objects should be 100% portable 23:24:37 aum err is ficl yours ? 23:24:40 no 23:24:43 ok lol 23:24:50 oh god... I just wrote a forth word who's definition is 30 words long. 23:24:57 lol 23:24:59 I'm more tired than I thought. 23:25:01 refactor! 23:25:23 hmm i really want to get this gc to do at least 1 collection before segfaulting b4 i go to sleep 23:26:29 I'll pick this up later when I can think straight. 23:26:46 the 5 hours of sleep last night are catching up to me 23:27:00 what are you coding? 23:27:13 a "find next" feature for the herkforth editor 23:27:29 it will find the next occurence of the word under the cursor 23:27:43 hehe 23:28:05 i remember coding that in jedit, about 5 years ago :) 23:28:10 whenever I find myself using GNU/Linux to help with my herkforth programming, I take it as a sign that I need to add a feature to my editor 23:28:38 your editor edits tokens not text right 23:28:59 the only unix thing I seem to use on any regular basis is grep (usually to find all calls to a word) 23:29:04 right 23:29:15 i have a word usages. which does that. 23:29:36 it searches the parsed word defs in memory 23:31:14 this is for a CLI? it just lists them all? 23:31:59 yup 23:32:25 I was thinking that after I got my zooming interface going, I'd write an app to list search results like that. 23:32:48 if its running in the graphical interpreter, the results come back as a list of links 23:32:52 click a link to view the definition 23:33:31 nice :) 23:33:46 although most of the time i just use search and ctags in my editor 23:34:13 tags are cool. 23:34:19 I set that up to work with herkforth in vim 23:34:41 i find it easier to just search for : foo tho 23:34:44 to go to foo's definition 23:34:48 * Tomasu is away: night 23:34:59 but tags work across files 23:35:04 --- nick: Tomasu -> TomasuDlrrp 23:35:13 Herkamire, directory search in editor ;) 23:35:16 I've got definitions in 59 files 23:35:23 I don't know how to do that in vim. or if you can 23:35:52 --- quit: Sonarman ("leaving") 23:35:57 i have 120 files, theyre searched instantly 23:35:59 anyway, I hardly use vim for herkforth anyway 23:36:10 good editor 23:36:46 well, good feature anyway 23:37:34 you should try it, it will work unlike those other java apps ;) 23:38:09 how is it better than vim? 23:38:25 i won't claim that it is 23:38:50 not that it's overall better, but something that it could do better (one point for the recursive search) 23:39:06 I don't want to start an editor war, I'm just looking for reasons to try it 23:39:49 it can edit files over ftp and sftp with a plugin 23:40:49 you don't have to edit a config file to customize it (but i doubt you care about this) 23:42:08 I don't like editing remote files 23:42:17 like that anyway. 23:42:31 I run vim on the server, or copy the file, edit, and copy back 23:42:57 or, actualy, more commonly, the original is on my computer already, and I edit away, then rsync 23:43:12 in-editor preferences is cool though 23:43:25 is it graphical? 23:43:42 is the interface fast? 23:44:08 does it start up instantly? 23:44:15 the main 'interface' is the text area control which is custom and pretty fast 23:44:17 the rest is swing 23:44:30 no, takes about 5 seconds to start 23:47:41 *&@*#&$ 23:47:55 5 secconds?? 23:48:35 its not my fault. most of the time is the JVM loading and compiling classes 23:49:04 takes about as long as xemacs to start 23:50:06 I don't remember xemacs taking That long 23:50:13 maybe a seccond or two 23:50:29 what sort of CPU do you have? 23:50:34 p4 1.8ghz 23:50:42 maybe its compiled funny on freebsd 23:50:50 but yeah, jedit (and xemacs) are sort of bloated ;) 23:50:53 crap. would probably take 10 secconds for me then 23:51:00 i leave it running for days on end though... 23:51:15 how long does firebird take to load the first time for you? 23:51:23 (although, that's mostly disk access) 23:51:26 i don't use firebird but mozilla takes like 7 seconds 23:51:29 but yeah its mostly disk 23:51:53 the seccond time I start firebird it probably takes 1/4 as long. maybe less 23:52:52 in general i appals me that all apps are so bloated and slow these days 23:53:07 I'm timing vim... "time vim" and hitting q (which I mapped to quit) as soon after enter as I can. 23:53:20 it's reading about 100ms (that's for startup and shutdown) 23:53:33 not bad 23:53:38 slava: then why do you use java? 23:54:11 130ms for opening a small file and doing syntax highlighting 23:54:38 because sometimes ease of development is more important than raw performance 23:54:52 note that i use the right tool for the right job though, which is why i'm redoing factor as a native app :) 23:55:07 :) 23:55:51 I don't use any program that takes more than a seccond to load, unless there is no alternative that does the job (decently) 23:56:00 like moz? 23:56:05 including moz 23:56:21 I only load firebird when I come to a site that doesn't work in w3m or dillo 23:57:04 w3m has a very cool feature where it can invoke other browsers on the current url (or the url of the link you're on) 23:58:06 it admits that it can't do everything :) 23:59:24 --- quit: aum (Read error: 60 (Operation timed out)) 23:59:59 --- log: ended forth/04.07.06