00:00:00 --- log: started forth/05.06.10 00:00:08 what are they called? 00:00:45 CNAMEs? 00:00:48 yeah 00:00:51 yah, they suck 00:01:04 I never even use them in my zone files 00:01:24 --- join: vitaminmoo (~vitaminmo@dsl-95-113.peak.org) joined #forth 00:01:27 I've never used them either, but they have caused problems at work 00:01:50 one customer had one on their dns server pointing to one of the domains we hosted 00:02:54 yah, there are all sorts of lame games you can play 00:04:10 well, have fun with your irc client 00:04:15 I'm getting very tired 00:04:20 thanks 00:04:21 later 00:04:37 later 00:04:40 --- quit: Herkamire ("off to bed") 00:17:03 --- join: ark1 (~arke@pool-71-109-104-243.lsanca.dsl-w.verizon.net) joined #forth 00:17:06 --- part: ark1 left #forth 00:42:11 --- quit: arke ("leaving") 00:44:17 --- join: arke (~arke@pool-71-109-104-243.lsanca.dsl-w.verizon.net) joined #forth 00:53:14 test 1 2 3 ... 00:53:16 alallaa 00:54:24 yoh 00:54:29 sup arke? 00:55:42 playing with Gaim instead of irssi for IRC 00:55:49 maybe I'll end up liking it better 00:55:51 :) 00:56:47 --- quit: LOOP-HOG ("ChatZilla 0.9.61 [Mozilla rv:1.7.1/20040707]") 02:17:06 --- join: Serg[ICQ] (~Miranda@212.34.52.140) joined #forth 02:44:46 --- quit: onetom_ (brown.freenode.net irc.freenode.net) 02:45:25 --- join: onetom_ (~tom@ns.dunasoft.com) joined #forth 02:48:02 --- quit: alexander_ ("Leaving") 03:55:49 --- join: nothingmuch (~nothingmu@yovalk.bb.netvision.net.il) joined #forth 03:55:56 hello 03:56:38 i'm trying to learn haskell, and as a toy project i'm trying to learn forth so I can implement a compiler 03:56:48 (how many times has that been said here before?) 03:57:26 so I was wondering about the lowest level semantics the host language must provide 03:57:33 specifically regarding branching 04:14:53 also 04:14:59 what control structures are hard to implement in forth based on primitives 04:15:23 and what is the state variable's nature? is state a word that points to an address, that you can write the state data to? 04:15:34 or is it something more "hard coded"? 04:35:16 is there a compilation time word that pushes the instruction pointer onto the stack? 04:39:15 --- quit: onetom_ (Read error: 54 (Connection reset by peer)) 04:39:23 --- join: onetom (~tom@ns.dunasoft.com) joined #forth 04:57:22 --- join: PoppaVic (~pete@0-2pool236-167.nas22.chicago4.il.us.da.qwest.net) joined #forth 04:58:05 Mornin' 05:01:01 good day 05:21:55 --- quit: Serg[ICQ] ("Miranda IM! Smaller, Faster, Easier. http://miranda-im.org") 05:23:14 --- quit: nothingmuch () 05:44:57 Dobry vecer! 06:04:23 --- join: nothingmuch (~nothingmu@CBL217-132-121-216.bb.netvision.net.il) joined #forth 06:24:11 --- join: nothingmuch_ (~nothingmu@yovalk.bb.netvision.net.il) joined #forth 06:25:05 morning 06:25:23 lo 06:25:35 --- quit: nothingmuch (Read error: 60 (Operation timed out)) 06:26:35 do you know of an illustration of the bare metal a forth machine must supply? 06:26:46 e.g. branching 06:27:14 heh.. I can't even find my f83 programmers manual 06:27:51 there are forth sites, certainly there are branching via forth colon-defs 06:28:25 background: i'm trying to learn haskell and forth, by implementing a compiler for the latter in the former 06:28:34 good luck 06:33:47 so now I'm trying to see what parts the haskell side will have to provide 06:33:48 --- nick: nothingmuch_ -> nothingmuch 06:33:48 --- quit: nothingmuch (Remote closed the connection) 06:37:16 --- join: nothingmuch (~nothingmu@yovalk.bb.netvision.net.il) joined #forth 06:37:17 --- quit: onetom (Read error: 54 (Connection reset by peer)) 06:38:06 =/ 06:38:18 my hands are blocking the wifi's antenna 06:51:38 --- join: danniken- (CapStone@ppp-70-249-186-85.dsl.ltrkar.swbell.net) joined #forth 07:00:16 --- quit: danniken (Read error: 145 (Connection timed out)) 07:00:59 --- nick: danniken- -> danniken 07:04:20 PoppaVic, F83 is my favorite. :) 07:04:36 Yeah, in the long-ago, she was nifty 07:04:46 anymore, I generally tinker w/i gforth 07:08:57 --- nick: nothingmuch -> someguy 07:09:06 --- nick: someguy -> nothingmuch 07:10:15 --- join: I440r_ (~mark4@216-110-82-203.gen.twtelecom.net) joined #forth 07:12:43 --- join: Herkamire (~jason@c-24-218-95-147.hsd1.ma.comcast.net) joined #forth 07:12:43 --- mode: ChanServ set +o Herkamire 07:29:02 why is : not defined more like << parse-word two_plus_two : [ 2 2 + ] LITERAL ; >>, as far as the user is concerned? does the switch to coimpilation state need to happen earlier for some reason? 07:29:43 I don't understand the question 07:30:01 well, the : word takes the next token and makes it into a word 07:30:05 yep 07:30:10 why doesn't it take the word name from the data stack instead? 07:30:12 starts compiling 07:30:26 it's a convenience and a convention 07:30:27 because the word isn't on the data stack 07:30:31 it's on the input stream 07:30:52 You COULD code like that, I suppose - before defining : 07:31:19 if you put the word before : then you'd have to quote it. 07:31:25 and why not "quote" it with : 07:31:31 right 07:31:34 " foo" : bar ; 07:31:40 is ugly and annoying to type 07:31:48 I was thinking of coding as ugly as using echo or cat 07:32:25 so does : taking a word off the input stream make it less flexible? or am I missing something? 07:32:30 The convenience of : is too high to suffer much of anything else 07:33:04 several words do parsing/look-ahead 07:33:35 It's part of Forth's language extension ability. 07:33:57 nothingmuch: it also has to do with trying to stay as RPN as possible 07:34:16 : FOO means less RPN than FOO : to mee 07:34:25 there have been modules that managed to deploy infix - but the code was just ugly 07:34:53 well, nothingmuch - you would be wrong.. I told you there were others 07:34:59 nothingmuch: you can't do FOO : because FOO would get compiled before it got to : 07:35:13 or, FOO would generate a word-not-found error 07:35:24 yeah, that was a silly example 07:35:46 which is more sensible: "10 constant decimal" or quoting 'decimal' to get to the stack, muck with the ten and then "constant"? 07:36:08 PoppaVic: please explain 07:36:22 PoppaVic: the former when a human is typing 07:36:24 under gforth, I type "see constant" 07:36:31 that is how it works, too 07:37:01 Remember, yer dealing with a language which is heavily RPN and mostly because it is stack-based 07:37:08 if you don't want a word parsed/executed/compiled as normal you have to put something before it. 07:37:29 you _have_ to, assuming you have a normal forth parser that just parses left-to right. no look-ahead 07:37:32 no "syntax" 07:37:37 right 07:38:02 no rewind, no backing-up... L->R input->stack 07:38:17 forth doesn't have an RPN parser. 07:38:24 it just ends up looking like RPN a lot of the time. 07:38:27 oh, well - I suppose there IS some "putback" ability 07:38:36 but it is not parsed as such, it just reads in one character/word at a time 07:38:48 then acts apon it before reading in more 07:38:48 sure, the math is almost always easiest to describe as RPN 07:39:13 data, data, op ... doodle, diddle 07:39:25 there are alternatives, but not with the normal forth way of reading input 07:39:31 eg, there's the colorforth method 07:39:42 iirc, that was nasty 07:39:46 put the word being defined in a unique color, and have no symbol at all 07:39:53 so suppose : is a word that is defined to be 'parse-word def-word', and def-word is defined as something like I asked about, is there a way to do it the other way? 07:40:10 nothingmuch: huh? 07:40:19 sure, you'd unfold it all - and it would be ugly shit 07:40:42 I'd recommend installing a forth with 'see' and friends.. Gforth is perfectly usable. 07:40:59 And, of course, the source is invaluable 07:41:06 PoppaVic: yes, i've been seeing gforth and minforth's ":", "constant", "create", etc 07:41:12 what is "unfold" in this context? 07:41:12 that's why i came here to ask =) 07:41:31 what 'see' does... what a sec, small paste in a sec... 07:41:45 see constant 07:41:45 : Constant 07:41:45 (Constant) , ; ok 07:41:45 see (constant) 07:41:45 : (Constant) 07:41:46 header reveal docon: cfa, ; ok 07:42:25 Herkamire: imagine ": : parse-word define-word-from-stack ; : define-word-from-stack ( just like : but from the stack instead of the input stream ) ;" 07:42:42 I peel into (unfold) constant, then (constant) - you want to mechanize this sorta' thing. 07:43:10 peel/peeR 07:43:24 i don't know what "peel" or "peeR" mean 07:43:41 peer-into look at scan read study examine 07:48:44 nothingmuch: yeah, that's how I'd implement it 07:49:09 nothingmuch: needs to switch to compile mode of course 07:49:20 Herkamire: so my question is what is the good reason for it not being this way? 07:49:31 because we have : ? 07:49:48 oh I get it 07:50:00 PoppaVic: he's not trying to change the usage pattern of : 07:50:06 just change the way it's factored 07:50:09 eg: 07:50:17 There is nothing that insists you NOT have such a word, nothingmuch 07:50:23 : : bl word $: ; 07:50:29 sure, I know he's refactoring 07:50:45 : $: add-to-dict COMPILE mode ! ; 07:50:49 Not sure what his goal or purpose is, though 07:51:06 you can still do: : foo bar ; 07:51:26 but you can also create words with $: with any string you can make 07:51:32 yep 07:51:38 this creates the possibility for cool stuff, like creating words that create 2 words 07:52:18 eg: 07:52:24 100 cells allot 07:52:29 oops 07:52:30 He needs to install something like gforth and do a lot of reading/tinkering 07:53:10 create foo 100 cells allot 07:53:10 cell-accessors foo 07:53:58 yep, done such many times 07:54:07 cell-accessors could create two words foo@ and foo! which would be equivelent to : foo@ cells foo + @ ; and : foo! cells foo + ! ; 07:54:33 I never could get into mucking with the details of gforth 07:54:41 could even create a voc/wordlist and allocate, then make voc current and all new defs specific to the allocated space 07:54:45 I had a hard enough time finding out how the basic features worked 07:54:53 I had a lot more fun writing my own 07:55:00 yeah, but then: I live in C 07:55:22 for me, c is getting very old 07:55:48 well, the alternatives don't do much for me 07:56:06 I'm old enough that C is fairly comfortable 07:56:59 Had the idiots at ANS and whatnot gotten serious long ago, and we'd had forth->.o and such, I'd have stuck with forth. 07:59:00 sorry, sister needed bike fudging 07:59:16 PoppaVic: i'm only asking because i'm curious, I don't want to actually achieve anything yet 07:59:27 well, that's how you would 07:59:29 I don't want forth pre-compiled 07:59:46 no, I wanted to incorporate working forth objects elsewhere ;-) 07:59:47 I really like being able to do things at compile time 08:00:07 I don't like objects 08:00:16 as I said, I live in C 08:00:18 Herkamire: I heard somewhere that forth people have a word for my kind 08:00:42 well, it's easy enough to write forths in C 08:01:01 nothingmuch: tinkerers? 08:01:10 as I said I'm learning haskell and forth together by trying to compile forth with haskell 08:01:13 hence the asking around 08:01:14 tinkerers? context please ;-) 08:01:24 oh, the word for people like me? 08:01:27 i have no idea 08:01:29 yeah 08:01:46 dunno if we have a word, just guessing 08:01:59 maybe you'd like this one? : foo bar ; 08:04:20 * nothingmuch is puzzled 08:05:52 --- join: sproingie (~chuck@64-121-15-14.c3-0.sfrn-ubr8.sfrn.ca.cable.rcn.com) joined #forth 08:12:30 newbie 08:13:09 yes, newbie 08:13:59 I can tell you, (from my ancient, rusty experience), that the best way to learn ABOUT forth is by getting the source, reading/compiling it and tinkering 08:14:23 * nothingmuch has just started to read minforth's C source, if that's what you mean 08:14:28 F83 was also a pretty nice "distro" 08:14:39 I dunno' minforth 08:14:47 http://home.arcor.de/a.s.kochenburger/minforth.html 08:15:08 chances are it's all in german, and that won't help me much ;-) 08:15:23 it's actually in english 08:15:31 german wouldn't have helped me either =) 08:15:32 the source as well? 08:16:10 yep 08:16:17 good deal 08:16:31 seems like a good impl to learn from 08:16:49 retroforth is also pretty good to learn from, proviso you aren't scared of asm 08:16:58 it's fairly readable for asm tho 08:17:07 sproingie: x86? 08:17:15 nothingmuch: yep 08:17:50 i'll have a look 08:17:55 i can read it, but I can't run it though 08:18:00 =/ 08:18:05 it's lavishly commented 08:18:13 There is a reason I use C ;-) 08:18:30 well retro has the advantage of being fairly simple 08:18:35 subroutine threaded 08:18:52 unfortunately, there are so damned many platforms and "standards" that the reason leaks a bit 08:18:53 but still laid out with a NEXT macro (in asm of course) 08:19:10 being subroutine-threaded, the NEXT macro is simply an alias for RET 08:19:49 There are pro & con for token-threading and subrot-threads 08:19:50 well retro conforms to no standard whatsoever, but for the most part lacks weird extensions 08:20:06 subr threading is smaller and simpler. rarely ever faster tho 08:20:18 small is rf's main goal 08:20:21 it should be faster and easier to debug as well 08:20:43 threading with tokens should be more portable and a trifle slower 08:21:05 in x86 assembler, are call/ret implemented with the stack that push/pop use? or is there a control flow stack as well? 08:21:29 same stack. i don't know what architectures have a separate data stack 08:21:47 many 08:21:56 return stack, though 08:22:10 oh, in ASM - no idea 08:22:14 forth needs 2 stacks 08:22:16 #TIBed for her pleasure... 08:22:16 data and return 08:22:26 nothingmuch: what architecture and OS do you have? 08:22:34 Herkamire: OSX/ppc 08:22:42 Herkamire: well, trying to live with one is interesting 08:22:51 ..and others also add a float-stack 08:23:12 nothingmuch: cool, you should try my forth. it's for ppc 08:23:28 Herkamire: sure 08:23:34 but I don't know PPC assembler ;-) 08:23:35 my osx port is still a little rusty, but... 08:23:37 it works 08:23:40 don't have to 08:23:54 nothingmuch: do you know the default dimentions of the osx terminal? 08:24:21 Herkamire: uhh, no clue... I think that's the first prefs setting I changed several years ago 08:24:40 and i've been lugging my prefs files since 08:24:58 nothingmuch: ah, you probably want herkforth 08:25:53 unless it only wants to run native ... wouldn't know, don't care to run pearpc 08:26:15 bochs is slow enough, i shudder to think of ppc emulation speed 08:26:26 wow! rf uses darcs! 08:26:33 nothingmuch: http://herkamire.com/jason/herkforth_for_mac_os_x 08:26:38 sproingie: RISC on CISC is easier than the reverse 08:27:05 nothingmuch: you sure? 08:27:12 nothingmuch: easier yes, faster no 08:27:20 I thought ppc emulated x86 faster than the other way around 08:27:26 ahh 08:27:33 cisc instructions aren't 1-1 with the clock, so they'll be damn pokey 08:28:05 actually, come to think of it, how are instructions like multiplications a 1 tick operation? 08:28:33 that might be an exception. or maybe they just have exceptionally zippy ALU's 08:29:11 what i can't get is how anything accessing mem could ever be 1-1 with the clock 08:29:13 nothingmuch: you have to do a couple little things (described on that page) to get herkforth adjusted to your terminal settings, but once you've done that it runs quite well under osx 08:29:19 well, minforth should interest him.. I dunno, looked odd to me. 08:29:41 or maybe i've just been fed an urban legend about risc, something that was true long ago but not now 08:30:05 most ppc instructions take one clock cycle. 08:30:08 not all though 08:30:22 shame chuck couldn't get the f23 mass produced 08:30:30 it sounded like it put the cell to shame for parallelization 08:30:38 sometimes certain instructions don't take any cycles 08:30:54 because of all those fancy features I forget the terms for 08:30:55 anybody know where crc's new documentation for learning retroforth is located? 08:31:02 branch-lookahead stuff 08:31:11 Herkamire: what's herkforth's original platform? aix? linuxppc? 08:31:27 nothingmuch: ppc linux 08:31:28 oh! I completely forgot I already have forth 08:31:33 OF =) 08:31:40 nothingmuch: heh :) 08:31:44 yah but it's hard to inspect sources in OF 08:31:59 i wonder how fun OF's is though 08:32:01 the UI ain't so hot tho 08:32:03 too bad apple is ditching it 08:32:15 maybe they'll use freebsd's bootloader 08:32:16 OF is good for poking around the device tree, and booting systems 08:32:20 that has bootforth 08:32:27 which is a stripped down FICL i believe 08:32:30 but I don't think you'll want to do much with it. there's no good way to save 08:32:42 and I don't think it has an editor 08:32:58 you could save ... just gotta write a device driver to do it 08:33:02 nothingmuch: where'd you here apple is ditching OF? 08:33:07 not the gentlist introduction to forth 08:33:11 gentlest even 08:33:21 wtf is OF? 08:33:24 Herkamire: someone told me that the intel switch means OF is going to the bin too 08:33:24 Herkamire: moving to x86, not likely they're using OF 08:33:31 PoppaVic: OpenFirmware 08:33:34 ahh 08:33:49 a bootloader type thingamabob whose environment is forth 08:33:50 #OpenBios is still around ;-) 08:33:50 i'd imagine they'll be using phoenix, award, or AMI 08:33:58 why wouldn't they use OF on x86? 08:34:09 why would they? 08:34:16 I still can't believe the whole damned world is goin' Intel 08:34:18 because it kicks ass 08:34:19 Herkamire: it's probably cheaper to get a PCish bios 08:34:25 switch to x86 means a switch to commodity hardware 08:34:32 cheaper? there's a free implementation 08:34:33 Herkamire: ppc kicks ass too. didn't stop 'em 08:34:39 I mean, hell - they coulda' collaborated with AMD fer cripes sakes 08:34:53 yeah, but they don't make ppc chips, and I understand they were having trouble buying them 08:34:58 problem is, ppc does *not* kick ass in notebooks, and apple felt like it was getting shafted there 08:35:11 ohhh... apple was buying ppc's elsewhere? I was unaware 08:35:12 motorola wasn't keeping up with g4 sales 08:35:21 ibm is totally disinterested in mobile anything, they only care about the POWER series 08:35:33 and mot doesn't even move computers 08:35:40 and I heard a rumor that IBM got less friendly with apple now that apple is competing with IBM on servers 08:35:49 oh they're hardly competition 08:36:01 apple does not manufacture chips 08:36:14 xserves are hardly anything you'd otherwise install a z-series for 08:36:27 and if xserves made it huge, then ibm would be more than happy to sell services for them 08:36:36 maybe it's because ibm isn't into mobile 08:36:46 their desktop roadmap was anemic 08:36:52 their mobile roadmap was *nonexistent* 08:37:08 Herkamire: how expensive is OF in HW? do you just have some bootstrap code and a forth in asm in some rom chip somewhere? 08:37:10 well, if and when they switch, let's hope their goddamnedcosts come down and they figure out how to install decent touchpads 08:37:26 heck that's probably why they chose intel over amd. that and fab capacity 08:37:39 amd's mobile offerings pale next to intel's 08:37:48 nothingmuch: I don't know. it's just a ram afaik 08:37:52 tho i like their desktop, happily running an athlon64 08:37:52 remember: a token-threaded forth in Eprom would be dinky 08:37:54 yes, intel makes wonderful celeron processors! 08:38:04 nothingmuch: I'm pretty sure the hardware is the same as other bios 08:38:08 celeron M will be quite something 08:38:23 nothingmuch: there's a project to make an OF-like bios for x86 machines. you can just flash your bios with it 08:38:32 #openbios or #openboot or something 08:38:39 that's nifty 08:38:43 /j #openbios 08:38:47 s/ram/rom/ 08:38:48 huh. bootforth makes OF kind of not required, i tend to think 08:39:00 whole thing fits on the part of a disk that any bios can read 08:39:05 but enough distraction... on to read minforth... ciao guys! 08:39:29 nothingmuch: try herkforth! 08:39:37 i guess it'd make for a genuine diskless PXE netboot machine 08:39:44 nothingmuch: it's not at all like the others 08:39:44 Herkamire: will do 08:39:45 without special cards 08:40:09 Herkamire: what's your design goal in a nutshell? 08:40:35 nothingmuch: ease of use. consistency to the point where you don't think about the computer 08:40:56 don't think about the interface that is. 08:41:03 if your programming, you'll think about that of course 08:41:12 sounds goo 08:41:15 d 08:41:36 how is it for learning about forth rather than learning just programming in forth? 08:41:58 to my tasts, it's the best programming environment I've used or seen ever 08:42:03 ABOUT is a lot more... "interesting" 08:42:34 nothingmuch: good I think. not excelent. I don't have any medium-level forth tutorials 08:42:51 I've books all over the house that delve into TIL and fig and F83 guts 08:42:51 nothingmuch: it's _great_ for browsing through the source 08:43:50 nothingmuch: if you want to learn about forth in general, I reccomend "starting forth" and "thinking forth" by leo brodie 08:43:51 --- join: onetom (~tom@ns.dunasoft.com) joined #forth 08:44:01 too bad you didn't set the termio stuff ;-/ 08:44:02 books or tut's? 08:44:12 they are books 08:44:12 both execellent books 08:44:29 tings' works are also decent, on f83 and even fpc 08:44:30 at least one is available free online in PDF and/or html 08:44:46 http://thinking-forth.sourceforge.net/ 08:46:38 hot damn, cold beer 08:47:48 Herkamire: I think both ^H and ^? delete from the buffer, but only ^? displays the change 08:48:06 * nothingmuch just found out that ^H actually works in OSX textboxes 08:50:45 nothingmuch: you runing it with ./run ? 08:51:04 nope... ./herkforth001 or something like that 08:51:10 that'll do it 08:51:16 much better 08:51:19 ./run sets up the terminal 08:51:24 and puts it back when you're done 08:51:28 no ^U though ;-) 08:51:36 what's ^U ? 08:51:37 weird 08:51:48 PoppaVic: what? 08:51:52 kill line or something like that 08:52:12 that would be more like using readline() 08:52:16 \ will kill the whole input line (or if it's empty, a word from the source) 08:52:27 nothingmuch: yer mixing shellisms and c'isms with forth 08:53:05 well, i can't help it, i've just taken my first serious look at forth today =P 08:53:26 culture shock takes a while to digest ;-) 08:53:38 forth is strange 08:53:42 fpc had, imnsho, possibly the best danged editor-debug interface I ever saw for console-forth. 08:53:46 ^U iirc is supposet to clear the rest of the line to the _right_ of the cursor, which can't happen in herkforth atm 08:54:04 Herkamire: that's ^K 08:54:05 herkforth is a culture shock from just about anywhere 08:54:07 nothingmuch: i suggest "starting forth". get it from the library if you can find it, otherwise get the online text 08:54:13 nothingmuch: google for "starting forth" 08:54:20 nothingmuch: why so it is :) 08:54:33 the online text isn't quite as nicely illustrated as the dead tree version 08:54:34 could map ^U if you like 08:54:47 tho they do remind me a tad of why's poignant guide to ruby ;) 08:55:09 don't know why. a bit surreal i guess 08:56:23 ^K is of course an emacsism 08:56:27 why's poignant guide was so fun to read, dunno why i stop 08:56:29 ped 08:56:40 i couldn't get into the guide. it is pretty bent tho 08:56:58 sproingie: if you use OSX you'll be glad to know that most of the stuff bash stole from emacs (i don't use emacs, so bash got me used to it) works everywhere 08:56:58 maybe forth could use a similar acid-inspired document 08:57:08 nothingmuch: this should add that keybinding: "comtDNed-init]$15[ w, S" (type exactly without the quotes) 08:57:13 every time I try to ^A in a URL box on windows I pull my hair out 08:57:15 nothingmuch: nope, no osx boxen here 08:57:23 nothingmuch: i just run cygwin 08:57:27 bash is nice to have 08:57:45 Herkamire++ 08:57:55 the output in the block browser thingy is scary, but it works =) 08:58:05 heh :) 08:58:15 anyway, food now 08:58:20 thanks all for a nice chat 08:58:41 there may be a better way to do it once I get better access to the keyboard, but it's very cool to be at the editor and interpreter at the same time 08:59:09 --- quit: sproingie (Remote closed the connection) 09:00:23 heh, every time I use windows at all I pull my hair out 09:00:45 --- join: PoppaVic_ (~pete@0-1pool64-172.nas22.chicago4.il.us.da.qwest.net) joined #forth 09:00:58 --- quit: PoppaVic (Nick collision from services.) 09:01:01 --- nick: PoppaVic_ -> PoppaVic 09:01:06 damned isp 09:02:53 hmm 09:17:57 FreeLSD loader(8) is not stripped. 09:18:26 I calculated Fibonacci numbers there. 09:19:04 It's even extended to accept 'set this=that' style commands. 09:25:40 --- quit: onetom (Remote closed the connection) 09:41:28 --- join: onetom (~tom@ns.dunasoft.com) joined #forth 11:04:02 --- quit: nothingmuch (Read error: 131 (Connection reset by peer)) 11:05:16 --- join: nothingmuch (~nothingmu@yovalk.bb.netvision.net.il) joined #forth 11:11:53 --- part: nothingmuch left #forth 11:13:41 --- join: nothingmuch (~nothingmu@yovalk.bb.netvision.net.il) joined #forth 11:14:45 the next time a weenie like me comes in here, point them to http://www.ultratechnology.com/meta.html 11:14:48 very nice read =) 11:15:22 lemme check 11:16:04 yeah 11:16:20 The term freaks other than forthers, though 11:16:43 eh? 11:16:47 I've been postulating similar ideas for 20 years and getting nothing but static 11:17:05 Yo! LSD IsForth! 11:17:26 I don't do lsd, and you never say anything worth the effort to decode 11:18:27 nothingmuch: my basic premise is we are bottom-line fucked: shit needs to be in ASM in one or another form to work anywhere. C was supposed to overlay that - and forth has in similar ways 11:18:48 So, I try to think in terms of translators - not metal-code 11:20:56 so, gcc xlates into asm into mc: to .o 11:21:11 something above that should translate to gcc. 11:21:13 =) 11:21:13 PoppaVic: how old are you? 11:21:13 wow, haskell looks über cool for a forth VM 11:21:15 slow, but fun 11:21:17 continuations instead of branch ops 11:21:17 and the list grows 11:21:19 all "calls" are just inlined, lists of more OPs 11:21:36 nothingmuch: I turned.. um ? 45 lately 11:21:51 do you like the ML family of languages? 11:22:03 I've been coding since 76 or 78 11:22:15 machine-language? motorola? what? 11:22:43 I gave up on asm shortly after the 286 was hot. 11:23:02 OCaml etc 11:23:05 You can't keep current and useful in asm, unless you are pigeonholed 11:23:17 oh. No. Not even interested 11:23:47 Two languages interest me - and have held that interest for decades: C and Forth 11:23:56 ..and both suffer from similar issues 11:23:59 nevertheless you might appreciate this: http://www.venge.net/graydon/talks/mkc/html/ 11:24:28 not that I know OCaml, but the concept seems similar to what you've just brought up, if I understood correctly 11:24:46 and what problems do forth and C suffer from? Although I know C, I haven't written anything real in it 11:24:50 just fixing bugs at work 11:25:36 C is plagued by "standards" and "committees" - as is forth - and both would be thrown out by "the world" (if they had a say in the matter) 11:26:14 I like to think C offers what forth does not - and neither will ever get together 11:26:26 ah 11:26:26 so the problem is not in the language, it's in the culture 11:26:27 I *like* object-files 11:26:37 language is a bad term 11:26:51 language means syntax/sematics.. parsers, etc. 11:26:58 I think this discussion is a bit over my head... =/ 11:27:08 the target is what I prefer to think about 11:27:24 C yields .o that work well with .a and .so and other things 11:27:38 Forth yields nothing I can plug right back in 11:27:45 i still don't know enough of either forth or C to relate 11:27:48 right 11:27:52 even ASM yields what C yields 11:28:02 (makes sense, since C calls asm) 11:28:11 what if you say "okay, from this moment on we cease compiling" 11:28:23 you can't 11:28:24 you take the compiled section in memory 11:28:33 Compiling is a fact of life - as is linkage 11:28:42 forth INTERPRETERS do it all 11:28:44 compile words you recognize into machine code 11:28:50 i mean in forth, PoppaVic 11:28:51 don't need to 11:29:10 what you would like is better interoperability between forth and C? 11:29:17 forth COULD generate either runtime-code or spew asm 11:29:28 and you are complaining that forth can't make object files to link with C? 11:29:42 link the output to a supertight-core, you have a new layer 11:30:21 nothingmuch: I'm not sure what I mean... All I know is the idea gets ridiculed, and both languages sink lower and lower 11:30:50 Should C generate forth? Should Forth generate C? Should BOTH generate asm? 11:31:11 what about JIT and decompilation? 11:31:20 if you have static byte code, which you can JIT into ASM 11:31:32 and then you decompile it back to bytecode when meta programming wants to intervene 11:31:39 JIT makes me ill because of the java-connection 11:31:48 JIT can be very beautiful 11:31:57 there is not much reason that Forth can't be a damned .so 11:32:24 JIT is a mess for several reasons 11:32:43 so cook up a version that can be =) 11:32:46 what will your FFI look like? 11:32:46 Basically, skip it and consider C/forth source somehow generating .o 11:32:56 okay, forgetting JIT 11:33:03 FFI? you mean TIL? 11:33:12 foreign function interface 11:33:17 ahhhh 11:33:26 Threaded Interpretive Language 11:33:46 No idea - no one has done more than ridicule the basic idea 11:34:04 so try it out, see how it works 11:34:11 make some mistakes 11:34:17 try it again 11:34:22 by then you must have something useful 11:34:27 I've nowhere near the manhours available for this effort - I already do well in C 11:34:47 do you want it for business or pleasure? 11:35:26 the prob with forth is that entire issue of "recompile-on-the-fly" (jit) versus "this is an .o like any other .o on the planet". 11:35:44 for interactive & scripting, JIT is groovy 11:36:31 okay, let's introduce a hypothetical command to forth 11:36:37 it does something like a core dump 11:36:38 ok 11:36:44 what forth? 11:36:48 interactive? 11:36:54 fine by me 11:36:55 (some are compilers) 11:37:11 core-dumps are well documented, I never use them 11:37:43 when you dump it the word dictionary is flattenned out into ASM 11:37:46 you lose compile time / immediate functionality 11:37:47 basically you lock the state of the interpreter 11:37:49 there is no more input stream 11:37:54 nope 11:37:59 a coredump is binary 11:38:11 i said "like a core dump" ;-) 11:38:16 gdb knows what they are 11:38:19 this is more of an AST serialization 11:38:22 oh "LIKE" 11:38:59 no need to lock up.. gforth does a throw/catch mess 11:39:00 anyway, say you've bootstrapped your forth code to the point where all the words are compiled, and then you save that 11:39:31 and make it available by simply providing C functions to find a word, and execute a word, and what not 11:39:34 and make this linkable 11:39:36 save WHAT? It's a binary-image that does not offer the chance to ever reload 11:39:57 oh... you mean a turnkey metacompile? 11:40:07 See, forth isnot hip to this mess 11:40:14 so your .o forth will instead keep tabs on the structure 11:40:19 nope 11:40:35 why not? self modification is too attractive? 11:40:39 .o are documented, so are .a and .so and elf and whatnot 11:40:52 right 11:40:56 self-modifying code is nothing I'd ever want to suffer 11:41:04 This is not cp/m 11:41:31 i still don't see the problem, 11:41:32 in the *nix world, I would be extremely leery of self-mod code 11:41:46 dump the forth dictionary/heap etc, into the data section of an object file 11:41:55 nothingmuch: I suspect you still view the universe as an interpreter 11:42:07 i think that might be true 11:42:12 the world is interp, compiler, translators, linkers 11:42:40 my claim is: 11:42:45 oh, in that case I don't think I do 11:43:05 interpreters run input like shells 11:43:09 or forth 11:43:21 with N man hours of input you can create a libforth that can take serialized representations of a forth environment, expose an interface for creating a stack, calling a word, and mining the stack 11:43:31 compilers are like assemblers - or C->asm:assemblers 11:43:45 translators convert one input to another form 11:44:15 linkers are the cursed glue between 'compiled objects' and 'objects awaiting compilation' 11:44:43 Yep, there was a forth-compiler as I recall: they soaked you for their mess. 11:44:44 right 11:44:54 gcc is free and has source free as well 11:45:17 Soooo... the issues PHD 11:45:28 so wait, if there is already a forth compiler thing, what is missing?, 11:45:36 anyway, I gotta' go get some cooking done... be back tomorrow. 11:45:48 missing? my willingness to pay for it 11:45:52 laters 11:45:55 oh! 11:45:57 --- quit: PoppaVic ("Pulls the pin...") 11:45:57 ciao! 11:46:11 That was a bit of a shock... =P 11:54:01 can I define a word while defining a word? 11:54:12 i'm struggling with the definition of if: 11:54:41 : allots an initial space, each subsequent word is looked up, it's address put in the list of words 11:54:46 that was just allotted 11:55:17 when if happens, it does a 'here', allots a cell, and compiles a jump not zero 11:55:37 when then / else is encountered it writes into the value on the stack, the new value of 'here' 11:55:56 sorry, a jz, not a jnz 11:58:25 sanity check anyone? 12:26:29 not sure that's quite right... hard to say 12:26:49 can I nopaste something? 12:26:49 firstly : allocates the space, then puts the parser into compile mode. and that's it. : is done 12:27:08 one question: 12:27:17 if i am an immediate word 12:27:30 if compiles something aliek "conditional branth to XXX" (leaving a blank spot XXX to be filled in later by then or else. 12:27:32 and I want to save the address of a certain word in a certain address 12:27:54 IF also leaves a pointer to XXX on the stack. 12:28:16 Because the address to branch to is not know until you reach THEN or ELSE. 12:28:31 THEN/ELSE fills in the correct branch address 12:29:18 i have a toy def 12:29:25 http://sial.org/pbot/10921 12:29:30 how far is it from the truth? 12:30:55 looks good 12:31:10 so how do i do the "inline jump on zero" etc? 12:31:20 it is a word that does get-word, and looks it up 12:31:24 and then writes the address to here 12:31:26 after allotting 12:31:32 I had never bothered figuring out ELSE, but that looks like it would work 12:31:33 but I don't know it's std name ;-) 12:32:35 I don't know either. implementation dependant 12:32:50 I compile to native, so I just compile a ppc conditional branch instruction 12:32:54 except in this case it will make it into a literal... hmm 12:32:56 =) 12:33:05 and THEN has to change the correct bits in it to patch it properly 12:33:23 for a token threaded forth, it's probably ?BRANCH or (IF) or something 12:33:51 i think this is the call threaded or whatever that's called 12:33:59 i.e. a word is compiled to a list of addresses 12:34:13 perhaps with the high bit set for builtins 12:34:27 or a null pointer used to denote that the next word is a builtin 12:34:37 right? 12:47:04 http://sial.org/pbot/10925 12:51:27 sorry gf having emotional emergencies again 12:52:32 heh, there's a word for "here cell allot !" it's , 12:52:38 sorry for bugging you 12:52:39 heh 12:52:42 : , here ! here++ ; 12:53:47 hmm, I see it doing something more 12:53:49 compared with : ALLOT DP +! ; ok 12:53:50 in minforth, anyhow 12:53:52 : , HERE 4 DP +! _STORE ; ok 12:54:00 unfortunately you can't see _STORE 12:54:05 i wonder what it does 12:55:26 whatever. , (comma) adds a word to the heap (ie at HERE) 12:55:39 okay =) 12:55:46 nice work on the code 12:55:58 here's another way to do it 12:56:08 ' (tic) gives you an xt 12:56:09 ' foo 12:56:14 will give you the xt for foo 12:56:17 what's an xt? 12:56:29 eXecution Token 12:56:33 ooh 12:56:37 some kind of reference to a word 12:56:41 so that's basically FIND_WORD? 12:56:54 in some threading models, the compiled code is a series of these 12:56:58 right 12:57:14 ' is not immediate however, but it has a friend ['] which is 12:57:22 so you can do: 12:57:36 : if ['] jnz , ... 12:58:02 that is you can do that _if_ your forth's compiled code is a series of XTs 12:58:47 that's how I plan to implement my forth =) 12:58:50 so basically ['] is what I called "INLINE" in my last try? 12:58:51 and presuming jnz works the way we expect 12:59:03 not quite. 12:59:07 JNZ is the atomic branch op 12:59:15 ['] puts the XT on the stack. above I used , to compile it 12:59:16 as far as I'm concerned 12:59:22 oh 12:59:23 I think you could do the same with POSTPONE 12:59:24 right 12:59:43 'see POSTPONE' is a bit much 12:59:48 I _think_ this would work: : if postpone jnz here 0 , ; immediate 12:59:49 what does it do? 13:00:52 it's a userfriendly word, basically it makes it so the following word (jnz in this case) get compiled at _run time_. that is when IF is run 13:01:02 what does 0 give us? 13:01:02 ah 13:01:06 i see 13:01:08 so, when you run IF like so : foo rnd if ... 13:01:15 a jnz is compiled into FOO 13:01:23 0 is zero 13:01:31 ... instead of into foo 13:01:33 err, if? 13:01:36 right 13:01:58 so what purpose does 0 serve in your code? 13:02:11 I prefer "0 ," to "cell allot" 13:02:14 does about the same thing 13:02:29 except that the former initializes the cell to 0 13:02:37 oh! 13:02:48 , stores the stack head in the cell 13:02:49 that's what the _STORE was 13:03:53 i'll try to grok postpone now 13:04:01 this is good guidance, thank you very much! 13:05:01 postpone is just shorthand. 13:05:51 "postpone foo" is the same as "['] foo ," is the same as: c" foo" find drop here cell allot ! 13:06:29 --- quit: skylan (No route to host) 13:06:36 gf again. bbiab 13:06:55 ciao 13:10:18 --- quit: arke ("Download Gaim: http://gaim.sourceforge.net/") 13:14:15 --- join: arke (f2@bespin.org) joined #forth 13:15:28 when a word is encountered during compile mode 13:15:34 it's basically treated as a string 13:15:56 and then the same find drop , is executed? 13:35:25 how do i view the return stack? 13:45:40 how do you do recursion in forth? what about mutual recursion? 13:53:49 --- quit: nothingmuch () 13:59:31 --- join: nothingmuch (~nothingmu@yovalk.bb.netvision.net.il) joined #forth 14:30:45 --- quit: OrngeTide ("┅") 14:34:47 --- join: orange__ (~orange@67.18.176.63) joined #forth 14:34:49 --- nick: orange__ -> OrngeTide 14:56:20 oh, c" ..." is a string in Counted format 14:57:13 find is a forth word that searches for a word. The drop is there because FIND also returns a true/false flag that I was ignoring 14:57:29 you generally don't view the rstack 14:57:41 not sure why you'd want to, it's mostly just addresses 14:58:15 useful to debug :) 14:58:20 recursion is normally done with RECURSE eg : foo forever recurse ; 14:58:36 some forths let you just have the word call it's self, eg: : foo forever foo ; 15:00:01 what about mutual recursion? 15:00:17 : foo bar ; : bar foo ; ? 15:00:24 tricky 15:00:56 there's various ways, I'm not sure what to reccomend 15:01:08 I didn't get that far before I started making everything up for my own forth 15:01:14 : foo c" bar" find.... goto ;? 15:01:20 no 15:01:29 because that will search the dictionary every time you execute foo 15:01:53 : -foo ... ; 15:02:13 no 15:03:16 here's a way to hack it: 15:03:16 : -bar bar-var @ execute ; 15:03:16 : foo -bar ; 15:03:16 : bar foo ; 15:03:16 ' bar bar-var ! 15:03:42 there's better, simpler ways of getting -bar to execute bar though 15:03:47 execute == jump to top of stack? 15:04:03 --- quit: vitaminmoo (Remote closed the connection) 15:04:09 masically, you pass an XT 15:04:29 basically. You pass an XT 15:04:42 uhuh 15:04:45 --- join: vitaminmoo (~vitaminmo@dsl-95-113.peak.org) joined #forth 15:04:56 c" bar" find drop execute ? 15:05:05 don't use FIND 15:05:12 ' bar 15:05:14 does the same 15:05:19 =) 15:05:30 only use find if you actually need to lookup something the user typed in 15:05:42 from the source you can use ' ['] create constant variable etc 15:05:57 DEFER would be useful for the mutual recursion thing. 15:06:01 I forget exactly how to use it 15:06:14 I gotta go, hopefully someone else will chime in 15:06:15 okies 15:06:16 what about rewriting foo? 15:06:30 sort of like the pascal hack 15:06:33 declare it 15:06:35 then write it 15:06:44 after the call to it 15:06:48 (god I hate pascal) 15:21:44 Herkamire, what do you think of this apple/intel thing? 15:49:49 --- join: Topaz (~top@sown-86.ecs.soton.ac.uk) joined #forth 16:39:19 --- join: slava (~slava@CPE0080ad77a020-CM000e5cdfda14.cpe.net.cable.rogers.com) joined #forth 16:56:31 --- quit: Topaz (Read error: 60 (Operation timed out)) 19:03:14 --- join: sproingie (~chuck@64-121-15-14.c3-0.sfrn-ubr8.sfrn.ca.cable.rcn.com) joined #forth 19:06:45 OrngeTide: kinda depressing 19:07:10 --- quit: nothingmuch (Read error: 113 (No route to host)) 19:07:32 have to switch away from conventional hardware sooner than I planned 19:08:05 yea. i feel the same way. 19:16:14 just not sure how to do graphics 19:35:55 graphics on what hardware? 19:36:08 I found a cute and somewhat affordable rs232->vga adapter. 19:36:25 I'm interested in pretty small hardware 19:36:42 but I'd like a nice high-res color display too 19:36:45 tough call 19:37:20 yea. gumstix has color LCD outputs. can go up to 640x480 because it chokes on bus bandwidth. 19:37:29 right 19:37:32 bandwidth 19:38:22 my framebuffer on this computer is almost 4MB 19:38:22 this board: http://www.dontronics.com/micro-vga.html .. plus an AT91 or LPC arm chip and an MMC card and you have yourself a slick little forth environment. 19:39:01 by "small hardware" do you mean physically small, or simple and inexpensive? 19:39:36 --- join: arke_ (f2@bespin.org) joined #forth 19:39:36 --- quit: arke (Read error: 131 (Connection reset by peer)) 19:39:53 my framebuffer is 22Mb. 19:40:47 i like 1-bit graphics. doesn't need a very big framebuffer. and I'd take 16x the resolution over having color 19:41:21 4096x3072 1-bit graphics sounds pretty ideal to me... :) 19:46:39 I'll take it! 19:47:08 yeah, I'm more interested it resolution and contrast than color 19:47:22 color is cool too though 19:49:18 most newer videocards don't really support interesting 1-bit video modes. some don't even support 8-bit video modes at anything but legacy timings 19:50:24 right. 19:50:35 people don't tend to manufacture hardware to my tasts 19:50:40 i've been thinking of writing a kernel module for linux to reverse engineer the nvidia driver. i think it would be possible to have the nvidia driver run in a protected memory space and catch exceptions for port and memory i/o. a self contained forth OS with 3d accelleration would be interesting, I think. 19:51:23 heh 19:53:04 Herkamire, I found a sparcclassic in a garbage pile here at work. it's videocard defaults to 1152x900 .. i dunno if can do 1-bit but I suspect it can. it does 8-bit grayscale really nicely (I have a Sun monochrome monitor I found in the trash too) 19:53:32 i'm thinking a cheap sparc is as good of a machine as any to devel for. 19:54:10 especially since SPARCv7 and SPARCv8 have open sourced cores available. (SPARC is a fully open platform, unlike ARM, PowerPC and MIPS) 19:54:47 really obsolete MIPS is free though. but the r12ks and other interesting MIPS are gaurded pretty agressively by MIPS, Inc. 19:56:15 here ya go. you can have it for $25 total today: http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&item=5780165149&rd=1&sspagename=STRK%3AMEWA%3AIT&rd=1 19:56:24 although if you are lucky you can find them for $0 to $5 19:57:41 heh 19:59:03 I'm actually very very happy with my apple flatpannel 19:59:18 but it takes some serious hardware to keep up with it 19:59:43 heh. 20:00:10 i might just wait and see if the playstation3 w/ linux turns out to be good. 20:00:21 it's going to have like a 3.2Ghz 64-bit powerpc. 20:00:37 * Herkamire drools 20:01:24 built in GigE, 802.11g, compactflash, dual HD video output. the videocard alone has 256MB 20:01:28 a gaming system + a bunch of storage often seems like the way to go 20:01:56 as long as they give a real linux and not some crippled one like on the PS2 then it would be neat. 20:02:17 maybe FORTH would be the answer to programming those SPUs in the Cell. 20:02:34 comes with a hard drive? 20:02:45 you add your own 2.5" 20:03:03 and they claim they will be selling harddrives with linux. 20:03:12 cool 20:03:17 people suspect they are putting linux on there for a desktop + webbrowser. 20:03:35 breaking into the desktop market I see 20:04:27 yea. the big thing was the Sony exec was saying that nintendo was dumb for calling these sorts of systems "toys". Sony feels that PS3 is a "supercomputer" 20:04:59 and it fits with their strategy. they want you to buy a sony TV and other devices. and use the PS3 as a central hub for managing all your sony devices. 20:05:21 the PS3 will spit out 1080p (that's better than 1080i!) 20:05:33 i wish my tv did 1080p. i'd use it instead of a monitor :P 20:06:17 but my acceptence of PS3 all hinges on how close to the bare metal I'm allowed to get with the linux on the thing. 20:07:42 what's 1080p? 20:07:54 1080 lines, progressive scan 20:08:17 nice 20:08:26 what about width? 20:08:26 the best DVDs do 480p. dvds of TV shows and lower quality dvds do 480i (interlaced) 20:08:53 well if you have 16:9 I think the width is usually 1920 20:09:04 damn 20:09:07 but analog isn't very picky about width. 20:09:09 I could live with that 20:09:16 right 20:09:46 I don't understand why people still use analog for video 20:09:56 cheap 20:10:16 digital to analog converters are cheap? 20:10:17 and with crts and read projection you eventually have to turn it into analog anyways 20:10:23 s/read/rear 20:10:32 analog -> analog "converters" are cheap:) 20:10:33 to generate the VGA wave or whatever it's called? 20:11:01 digital to analog is also very cheap. but analog to digital is kind of hairy. (it's why you can get 56K down but not up) 20:12:50 VGA is basically a 15 pin connector to all the important parts of controlling the synchronization of the sweep and the 3 electron guns. that's why VGA actually 1. looks fantastic even though it's been around forever 2. crt monitors are inexpensive 3. crt monitors are/were very future-proof 20:12:56 I've started contemplating the idea of multiple computers 20:13:03 i have too many computers 20:13:09 one main one for the house, and little tiny cheap ones to carry around 20:13:33 the big one does the cpu intensive stuff, handles the network, plays the music etc 20:13:44 mac mini, ibook, powermac g3, athlon, via c3, sparcstation 10, two sparcclassics, and god knows whatelse is in my closet i've forgotten about 20:13:48 the little ones just have your little forth, handle user interaction, and talk to the mothership 20:14:15 i use my mac mini and ibook g3 for 99% of things. my athlon is just a file server these days. even though it has the better videocard. 20:14:25 wait. i actually have two athlons. one is a windows box I never turn on. 20:14:51 nice to forget about windows eh? 20:15:01 yea. i rarely have a use for it. 20:15:24 i usually use it to try out friends apps that they write. or occationally play a couple old windows games i like. 20:16:06 people try to tell me that I still "run" windows because I have a windows box. but that's sort of like saying you run atari2600 becaue you still have one in the attic:) 20:16:57 heh 20:17:46 well i'm going back home (just popped into work to fix something) 20:17:57 ttyl. 20:18:17 later 20:18:51 OrngeTide: well obviously, you still run windows until you've sprinkled holy penguin pee and exorcised the windows demons from your home in the name of Saint IGNUcius 20:18:57 pop pop swap push push ;) 20:27:33 sproingie, so that's what i've been doing wrong! doh 20:27:50 * OrngeTide calls the zoo for some penguin pee 20:28:03 hopefully an open source rabbi is awake so he can bell the pee 20:28:10 s/bell/bless 20:30:40 * crc passes a blessing onto OrngeTide 20:32:55 when I setup my boot partition with yaboot it says something like "blessing with holy penguin pee" 20:48:47 --- join: LOOP-HOG (~chatzilla@sub22-119.member.dsl-only.net) joined #forth 20:49:29 hi 20:52:58 --- join: snoopy_1711 (snoopy_161@dsl-084-058-133-049.arcor-ip.net) joined #forth 20:54:08 howdy 20:54:18 hello all :) 20:54:25 howdy back at ya Herkamire :) 20:54:35 how you been ? 20:54:35 hah, me first! 20:54:40 good 20:54:44 great :) 20:55:01 Nan got a laugh from you the otherday. yesterday? 20:55:07 I updated my link site 20:55:20 yeah!! link please? 20:55:35 its pretty close to what it was before, its just that I cleaned up the links, and added descriptions to some of them 20:56:08 nice picture :) http://en.wikipedia.org/wiki/Image:Chrysantemum.x.grandiflorum1.jpg 20:56:16 http://members.dsl-only.net/~loophog/ 20:56:30 laugh from me? 20:56:44 http://www.retroforth.org/hog-space/ 20:56:53 Herkamire "arrg WOMEN " 20:58:09 If you have any links for me to enter, let me know 20:58:48 probably there are many, many for me to add, but I just haven't 20:59:27 Tim Neitz and Mark slickers on your forth peoples list is prob'ly a must along with Charles R Childers 21:00:13 and Don't for get HerkForth :) 21:00:19 I made a note 21:00:37 --- quit: Snoopy42 (Read error: 145 (Connection timed out)) 21:00:53 --- nick: snoopy_1711 -> Snoopy42 21:02:27 Raystm2: ahh yes, I am truely an eloquent speaker sometimes 21:06:49 ban, there sure are some funny looking creatures on this earch: http://en.wikipedia.org/wiki/Image:WeedySeadragon.jpg 21:10:18 its kind of pretty 21:12:14 can anybody recommend a free hosting solution? 21:12:41 it would be for my other link site 21:12:47 http://www.lunaroutfitters.com 21:14:22 its up on easyspace, and my year long contract is about to expire 21:14:48 * sproingie is actually looking for hosting too. cheap will do, doesnt need free 21:14:48 they want $24 to renew the doman registration, I'm thinking to just letting it expire. I think that might be for just one year 21:15:02 There are gobs and gobs for $5 solutions 21:15:05 LOOP-HOG: never let them own your domain 21:15:09 There are some $2 solutions too 21:15:28 LOOP-HOG: any $5 ones that i can trust? preferably ones i can prepay a year 21:16:40 I haven't had any problems with http://www.host4twobucks.com/ 21:18:26 If they don't just let the domain lapse, then I will probably just take out another domain name 21:18:36 nobody is linked to my space link site 21:18:43 except for one person 21:19:48 i guess til i have some real content, i'll just stick with blogspot. not that i update that either 21:20:01 never got into that whole intarweb thingamajigie 21:21:35 anybody have anything to say about doteasy? 21:22:45 free hosting is almost always a bait and switch 21:22:56 how do you do teasy :) 21:23:17 i think it's dote asy 21:23:27 not sure who asy is or why i would dote on him or her 21:23:45 maybe thats the tease 21:24:22 or maybe asy is descriptive of the doter? 21:31:27 --- join: alexander_ (~alexander@69.17.112.153) joined #forth 21:48:02 sproingie, linode.com is pretty good deal, imo. 21:49:46 not terribly cheap 21:50:25 --- nick: arke_ -> arke 21:51:02 no. but you get a lot for the $20/mo 21:51:11 me and a friend were debating once buying some IBM compatible big iron and running a virtual hosting business off that 21:52:02 a lot of people put a 1U redhat linux box up and pay the $200/mo for the colo. and then charge a bunch of people to host web and email on it. 21:52:15 market's saturated now 21:52:24 no way i'd do it now. back then it would have been pretty new 21:52:35 still no guarantee of success tho 21:52:47 having a good idea is only part of it. gotta have it at the right time 21:53:12 I have enough clients on my colo boxes, to pay for my connectivity, and admin time. 21:53:20 i designed a system very much like the current AJAX hype, but much more low-bandwidth than AJAX 21:53:51 it's not hard to convince people you know that they should have a website and a real email address (not some yahoo.com or aol.com junk) 21:54:01 what's ajax? 21:54:03 went nowhere, couldn't muster up development time ... it's hard to stay motivated when you're no longer being paid 21:54:05 sproingie: details? :) 21:54:32 asynchronous xml and javascript. basically a hype-filled buzzword around using the javascript XMLHttpRequest object 21:55:14 i like xmlrpc.. except I know a company that tried to do an NFS server using xmlrpc.. 21:55:28 it's not xmlrpc 21:55:44 i didn't think it was. but it reminded me that i lik xmlrpc :) 21:56:04 xmlrpc is a hack, though it's perhaps better that way 21:56:15 because SOAP started out good, then it came to depend on XML Schema 21:56:24 oh it's a huge hack. but it's fairly simple 21:56:42 and the XML Schema Definition Types are the worst thing I have ever seen inflicted on the web 21:56:44 soap turned bad :( 21:56:59 http://www.xml.com/pub/a/2002/07/31/wxstypes.html 21:57:03 read that 21:57:08 sproingie, san people ignore xml scheme and just use xml as if it were a flavor of sgml :P 21:57:23 there are NINE separate incompatible date types in XSD 21:57:29 and that's just the start of the horrors 21:58:01 i usually invent my own formats and protocols. I'm a big fan of just using Tcl syntax for config files and things 21:58:17 i mean, http started out as an ugly ugly hack, but look at it now ... it transports all this XSD crap 21:58:33 it's a more mature ugly hack now... 21:58:34 building up the hack that is xmlrpc sounds better in that respect 21:59:44 i tried converting some large structured data thing i had to xml, hoping by now i could find an editor that would do what seems like two simple things 22:00:15 microsoft xmlnotepad is the only editor i've tried. 22:00:24 one: show a tree navigator that doesn't consist of the names of tags. having 50 items on the left that all look like "[+] CHAPTER" does me no farking good 22:00:35 ahah 22:01:22 second: give me a simple GUI form interface for editing the data. the purpose is to get nontechnical techs to edit this, and i don't want to have to care about XML 22:01:51 yea. it should look like structured WYSIWYG 22:02:02 this is truly basic stuff, but it takes software costing over $1000 and gigs of disk like xmlspy with all its proprietary crap just to manage something like that 22:02:34 well i'm going to go hack some C code so I can gets paid. ttyl 22:02:38 there is an explosion of super-complex overloaded XML "editor" suites that are supposed to, i dunno, leverage your business synergies for ROI or something 22:02:44 (nobody pays for forth coding) 22:02:52 i cant help but think they're only solving the problems they're creating 22:03:55 * sproingie would actually expend less effort designing and coding a custom database app with a schema, code, and interface from scratch than he would wrangling one of these expensive editors into shape 22:10:10 heh 22:10:54 I'm getting tired 22:11:01 my brain is telling me it can't be that easy 22:11:16 and I keep telling it to shut up and write one line 22:11:23 4 lines later, it's pretty much done 22:19:10 lol 22:19:15 --- quit: vitaminmoo ("restarting x") 22:22:53 --- quit: sproingie (Remote closed the connection) 22:26:52 --- join: vitaminmoo (~vitaminmo@dsl-95-113.peak.org) joined #forth 22:30:04 anyone have any image encoding routines for forth? 22:36:21 i think somebody had something on clf 22:36:22 check there 22:38:21 hmm 22:38:26 I think I'm going to use targa 22:38:30 since it's brain dead simple 22:39:06 --- quit: vitaminmoo ("Leaving") 23:05:06 --- join: vitaminmoo (~vitaminmo@dsl-95-113.peak.org) joined #forth 23:13:27 --- quit: vitaminmoo ("Leaving") 23:13:33 --- join: vitaminmoo (~vitaminmo@dsl-95-113.peak.org) joined #forth 23:14:24 --- quit: Herkamire ("off to bed") 23:31:53 --- join: Sonarman_ (matt@adsl-64-169-93-54.dsl.snfc21.pacbell.net) joined #forth 23:32:17 --- nick: Sonarman_ -> Sonarman 23:37:35 --- quit: vitaminmoo (Read error: 54 (Connection reset by peer)) 23:38:58 cool 23:39:03 I just wrote my first TGA 23:39:55 --- join: vitaminmoo (~vitaminmo@dsl-95-113.peak.org) joined #forth 23:43:39 --- part: slava left #forth 23:53:03 --- join: nothingmuch (~nothingmu@yovalk.bb.netvision.net.il) joined #forth 23:53:51 --- join: Topaz (~top@sown-86.ecs.soton.ac.uk) joined #forth 23:59:59 --- log: ended forth/05.06.10