00:00:00 --- log: started forth/05.09.28 01:23:42 --- join: amca (n=plump@as-bri-3-187.ozonline.com.au) joined #forth 01:23:53 --- quit: amca (Client Quit) 01:23:59 --- join: amca (n=plump@as-bri-3-187.ozonline.com.au) joined #forth 01:42:12 --- join: YoyoFreeBSD_ (n=yoyofree@219.144.137.199) joined #forth 02:24:55 Hello 02:44:09 Hi. 02:44:31 --- quit: YoyoFreeBSD_ (Read error: 110 (Connection timed out)) 02:45:11 Robert: lol 02:45:15 Out of shower? 02:48:45 True. 02:49:05 With a highly interesting post card. 02:49:10 oh? 02:50:18 One minute, I'm looking up a reference page. ;) 02:51:28 http://spaceprojects.arc.nasa.gov/Space_Projects/pioneer/Plaque.gif 02:52:01 He printed that on the front of the card, and put his own picture (in black and white, looks really good) instead of the guy's head. 02:52:36 hehe sweet 03:33:50 --- quit: amca ("d34d") 03:35:02 --- quit: sproingie (Remote closed the connection) 06:08:49 Alright, which one of you guys drove me to work, sat me behind my desk, and woke me up? 06:19:57 --- join: PoppaVic (n=pete@0-1pool74-6.nas24.chicago4.il.us.da.qwest.net) joined #forth 06:20:14 Good Day 06:29:04 Good morning agent PoppaVic! You mission, should you choose to accept it.... will self distruct in 15 seconds! 06:29:12 Cool 06:29:24 Sorry, must of been a bug there. 06:29:47 "Missed me by > < THAT much.." 06:30:02 I'm gonna miss Don. 06:30:18 Yeah, I've missed the reruns for years.. 06:30:37 Losing "Gilligan" the week before was sorta' depressing too 06:30:51 this is also true. 06:31:29 Two shows I recall fondly, and two guys that never said or did anything I was ashamed of. *sigh* 06:31:48 Great point! 06:55:09 --- join: JasonWoof (n=jason@pdpc/supporter/student/Herkamire) joined #forth 06:55:10 --- mode: ChanServ set +o JasonWoof 06:55:25 morning JasonWoof 06:56:07 morning :) 06:56:17 Hiya ;-) 06:56:24 hi 06:56:55 What's new with fovium? ;-) 06:57:20 it has fewer bugs :) 06:57:33 Always a Good THing(tm) 06:57:43 I got an interpret loop going 06:57:49 cool. 06:57:50 it reads input up to a return 06:57:55 looks it up in the dict 06:57:57 if found executes 06:58:04 otherwise tries to interpret it as a number 06:58:17 if it succeeds it puts the number on the stack 06:58:25 otherwise it prints a question mark 06:59:15 heh.. I was running thru a few books last night, and noticed that conversion-to-number still screws with 'double' right off the bat.. (Well, "still" as of the 80's) 07:00:07 converting text to a double-cell number? 07:00:14 would certainly be a pain in base 10 07:00:19 yeah, bydefault. 07:00:24 should be fine in hex 07:00:34 well, it struck me as wasteful as hell. 07:01:03 I don't see doubles as useful on a 32-bit system 07:01:18 I will need to do some cogitation, but it only reflects the text-interpreter 07:01:47 JasonWoof: oh, long-long may have a place. I just don't suffer it daily, even in C 07:02:31 It's time for me to hack my cross-compiler so it spits out mist source in addition to fovium opcodes 07:02:38 Like the use of a C "double", it's pretty rare to bother (in my own experience). 07:04:05 cool ;-) 07:04:15 --- join: sproingie (i=foobar@64-121-2-59.c3-0.sfrn-ubr8.sfrn.ca.cable.rcn.com) joined #forth 07:04:24 hi sproingie 07:05:09 * sproingie waves 07:16:53 --- quit: madwork (Read error: 104 (Connection reset by peer)) 07:16:54 --- join: madwork_ (n=foo@derby.metrics.com) joined #forth 07:17:36 hey, mad 07:19:22 helloes 07:19:26 --- nick: madwork_ -> madwork 07:28:31 damn.. conceptual/structural maggots... Shitbags. 07:32:28 The Shitbags pattern? 07:32:35 * PoppaVic sighs 07:33:08 I've got a conceptual "issue" with modules vs images, and now gotta' decide how to resolve it. 07:33:52 I have a 10-sided die in my pocket to help me make such decisions. 07:35:20 lisp seems to do all right with modules and images both 07:36:12 a system where everyone's used to it being image-based tends to discourage modules. or at least not encourage them. smalltalk suffered this for a while 07:36:13 yeah, this is my fault - the structure is missing "something" which I need to cogitate and resolve. 07:37:37 * sproingie suggests resolve then cogitate. worst thing that happens is you have to go back to the old way, that's what we have version control for 07:37:54 Nah, a "module" is some dynamic-object (plugin) to load-up; an "image" is a file we definitely r/w that let's us load a previous "state" (in terms of what is interpreted/compiled: bytecode) 07:38:13 yeah, they're not at all antithetical 07:38:40 you could have a bare image that builds up its runtime from nothing but external modules, or an image where everything was tossed in 07:38:47 they're more or less orthogonal 07:39:06 Right. THe former suggests a true ABI to the platform; the latter is something you need to obviate interpret/compile over and over and ... 07:39:14 Right. 07:39:48 I think all I need do is list the fpaths to "modules at time of image-burn" 07:39:48 one big image is certainly faster to bootstrap and easier to keep state. the former manages replacement and upgrades better 07:39:57 Exactly. 07:40:19 modules don't necessarily have to be external. squeak has modules, they just dump code into the image 07:41:02 Yeah, I've never done so - certainly tis possible. But, to me: I figure objectfiles/libs and whatnot are not my porpoise. 07:41:50 the prob with code-in-image is, Joe can't throw Bob a solution to his problem - if they use different platforms. 07:42:14 yep, that's the choice of the person using an image 07:42:32 code-in-module merely suggests that they need to compile that source, or use a binary-release. 07:42:47 i guess it depends on whether you want binary-only modules to be supported and allowed as a primary method of distribution 07:42:54 (and that then many other images can use it) 07:42:59 right. 07:43:22 if it's source-only, then the problems are totally orthogonal, it's just a matter of developers choices 07:43:39 right - and platform differences. 07:44:19 allowing binary modules as a main distribution method raises all kinds of versioning issues 07:44:28 Trying to keep-out differences for generic "code" seems sensible, but it can make yer head spin 07:44:34 you could be like perl and just break binary compatibility whenever you feel like it 07:44:41 eww 07:44:48 perl! blech! ack! 07:44:49 hey it works for perl 07:45:00 hehe - and all it's enthusiasts ;-) 07:45:05 but perl isn't image based 07:45:32 well, I use "image" quite loosely. 07:45:38 when you have an image that's been built up over several years, you get all kinds of weird binary compatibility issues 07:45:59 I merely needed a term to differentiate binary plugins and save/load bytecode 07:46:25 sqeak smalltalk's image goes all the way back to smalltalk-76 07:46:37 there are bits in that image that no one knows what they do but no one dares change them 07:46:38 damn. 07:46:44 hehe 07:49:26 man, factor's turning into freaking fortran. slava's going off on ring algebra now 07:49:37 hehehehe 07:49:38 it already has an infix sublanguage for math 07:51:13 he seems quite unafraid of creating non-postfix DSL's within factor. it's refreshing 07:51:33 the FFI looks more or less like C function prototypes 07:51:46 look-ahead/infix DSL's? 07:52:06 Yeah, lord knows I love proto's, generally. 07:52:22 What url are you peering at? 07:53:07 FUNCTION: int setsockopt ( int s, int level, int optname, void* optval, socklen_t optlen ) ; 07:53:13 that's factor code 07:53:18 good 07:53:39 'course you still invoke it postfix style 07:54:06 http://factor.sourceforge.net/ 07:54:11 i'm just looking at my local copy 07:54:14 The only issue I see with C-type proto in a forthish world is: you can cover inputs, but not outputs. 07:54:44 well, that's a problem with C prototypes in general 07:55:49 C has return values, but no OUT/INOUT parameter declarations 07:55:59 right 07:56:11 C++ sort of does with const correctness 07:56:15 also, C is not _really_ stack-based 07:56:51 nope, not anything-based. that's actually a strong point 07:57:04 sort of. 07:57:29 The lack of a really decent method of ascertaining ABI is a serious bother. 07:57:30 forth for me works at two levels. on one, you have a stack machine that's hopefully mapped pretyy efficiently to your hardware 07:57:40 really efficiently if you have stack hardware like an ignite :) 07:58:09 on the other, you have a symbolic expression evaluator for linear combinators 07:58:36 and on the third hand, you have DSL's you create with parsing words, but those don't count 07:59:10 at the low level, the stack's a fine abstraction. at the high level, I think it gets in the way 07:59:56 I would agree 08:00:41 Similar comforts with C, but Forthish is more friendly and amenable to experimentation/tinkering. 08:00:44 strictly speaking the only linear combinator language is Joy, but the idea is there with forth 08:02:04 i may be the one heretic around here who wants to freely mix sexps and named args into forth code 08:02:33 I've been backburner-cogitating Gforth "locals" and the idea of "prototyping" as well as "types". I find myself bothered overall, but not sure where it leads. 08:02:42 "sexps"? 08:02:57 lisp expressions. (foo bar baz) 08:03:01 ahh 08:04:28 it wouldn't actually be that hard to do with forth, just write a little DSL to do it. named args would be trickier 08:05:10 trickier as in tedious, the implementation would be pretty straightforward 08:05:21 well, locals already play out as named-args. I just feel there is something wrong with them 08:05:35 locals only name the args within the definition 08:05:45 no 08:05:45 named args would let you use them in any order 08:06:01 gforth locals also mean the DS elements you plan to consume 08:06:13 e.g. :host 127.0.0.1 :port 6666 connect 08:06:23 yeppers 08:06:25 e.g. :port 6666 :host 127.0.0.1 connect 08:06:42 either of those forms should do exactly the same thing 08:06:51 they of course go perfectly with locals 08:06:52 oh, you are implying tying a 'label' to a stack-entry 08:07:14 ohhhhh... 08:07:16 wait. 08:07:20 they don't necessarily require locals, but they do go perfectly with them 08:07:44 Yer talking about nouns and adjectives, as in affecting-inputs ala' a structure 08:07:46 i just made up that syntax based on lisp's named arg syntax 08:08:08 yah, lisp 08:08:21 heck these could even be done purely at compile time 08:08:27 yep 08:08:28 no runtime penalty whatsoever 08:08:36 heck i might just do this 08:08:37 or interpret-time, anyway 08:09:56 FOOstruct( host: 127.0.0.1 port: 6666) connect 08:10:07 rf does something like that already 08:10:20 it should, it's pretty obvious 08:10:30 i'm not really into requiring all named fields be bundled into a struct 08:10:42 well, it was example. 08:11:01 maybe it should be connect( )connect 08:11:10 from the irc client: : freenode < server: 140.211.166.4 6667 > ; 08:11:13 or just ) 08:11:22 i think server: in this case is just a parsing word 08:11:23 but yer now mixing infix and postfix 08:11:36 and < > ... i don't remember what the hell that does 08:12:18 all i know is that rf is definitely diverging from classic forth now that it's overloading < and > 08:12:33 not that this is really a bad thing. just different 08:12:51 I still think that classic forth interpretation can be a real ass-biter, although simple-minded as hell 08:13:14 < and > are usually comparison operators 08:13:23 but clearly not in that rf example 08:13:32 I read about the irc client a bit 08:13:38 JasonWoof: yep. rf doesn't have comparison ops, it has comparison branch ops 08:13:44 JasonWoof: they used to be - like r> and <# - somewhat more twisted 08:13:53 "server: xxx.xxx.xxx.xxx PORT" is usually something you do at compile time 08:14:02 wrapping it in <> must be a way of putting it off until runtime 08:14:15 kinda like ." except it's interpreted instead of printed 08:14:33 could be. the client also uses some other words i'm not famliar with 08:14:41 like 'is' which i think sets vectored words 08:14:41 used to imply "to" and "from" or "left-side/start; right-side/end" 08:14:45 and double colon 08:14:52 IS is a standard word 08:14:59 ' foo is bar 08:15:07 makes it so when you call bar, it executes foo 08:15:19 you can compile all sorts of definitions that use bar. 08:15:22 how's that differ from alias? 08:15:23 and then change what bar does later 08:15:25 as in: defer bar ' foo is bar 08:15:54 difference is you can change a word with IS _after_ you've compiled stuff that uses it 08:16:01 as a rule, a defer is a forward; an alias just compacts alternative terms 08:16:04 alias would only affect things compiled after you called alias 08:16:08 ah so it's like alias for vectored words 08:16:30 yes 08:16:40 iirc the double colon defines a new word with no name 08:16:43 alias, iirc, expects the target to be compiled. 08:16:44 the use of 'vector' in rf really confuses me 08:16:51 and it leaves an XT on the stack for the new nameless word 08:16:53 since vector has a totally different meaning in every other language 08:17:13 "vector" is another term that's seen a lot of abuse over the years 08:17:15 * sproingie would have preferred "indirect" but forth terminology wins out 08:17:35 or even just "vectored" 08:17:37 so these would be mostly equivilent: :: x y ; and: : __useless_name x y ; ' __useles_name 08:17:49 except that the first doesn't put __useless_name in the dictionary 08:18:06 yeah, not identical 08:18:19 I don't think "vectored" is forth terminology 08:18:21 I never liked that 'nameless' junk 08:18:29 the forth terminology that I learned, it's called "defered" 08:18:32 so :: is the new syntax for here ] x y ;; ?? 08:18:41 I'd prefer they had a 'hidden' voc for them 08:18:43 * sproingie s/;;/;/ 08:18:56 sproingie: probably similar 08:19:13 sproingie: if an XT were just the CFA, but I don't know if that's the case in rf 08:19:41 hmm... probably is 08:19:51 dunno 08:20:16 I'm hesitant to assume that since my XTs are references to the dictionary 08:22:11 the irc client takes some serious liberties as a proof of concept 08:22:36 i don't think ready-for-prime-time code should actually redefine the meanings of the numbers 332, 333, and 353 08:22:51 : 332 2drop wsparse 2drop ." Title in " wsparse type ." is " NOTICE ; 08:23:37 I never liked the term XT - I think it made things worse instead of better, but I can't put my finger on it - other than I learned cfa/pfa/etc years ago. 08:24:16 XT is an abstract term that's implementation-defined. it's nice shorthand for what lisp calls a closure and scheme calls a procedure 08:24:36 yeah, and it doesn't play-well with cfa/pfa and others. 08:24:51 whereas cfa and company have more precise definitions 08:24:59 right 08:25:12 in rf, i think cfa and xt are one and the same 08:25:38 ok, gotta head to work. later everyone 08:25:43 laters 08:27:21 the irc client (at least the way it was yesterday) completely removes the dictionary and everything 08:27:41 back shortly, beerrun... 08:27:44 --- quit: PoppaVic ("Pulls the pin...") 08:27:49 so when he defines weird words, it's not to be words, it's to make an interface 08:27:59 eg /me would be a word 08:41:49 --- join: virl (n=hmpf@chello062178085149.1.12.vie.surfer.at) joined #forth 08:41:57 hi 08:43:29 JasonWoof -- IS isn't a Standard word, not the ANS '94 Standard anyway. It's a proposed extension, along with DEFER, ACTION-OF, DEFER! and DEFER@. 08:44:21 but I think after all that forth is dead, dead in the sense of not used as a mainstream language. 08:44:52 --- join: PoppaVic (n=pete@0-3pool158-98.nas24.chicago4.il.us.da.qwest.net) joined #forth 08:45:06 THat's better 08:45:40 and there isn't a standard where most forthers are happy with it when I look at other languages for example C there are more who are happier with it. 08:50:55 * PoppaVic watches the silence ;-> 09:12:47 * Robert breaks the silence. 09:12:54 *crash* 09:56:12 then write a void foo() 09:56:22 I see. 09:56:24 all functions return, somehow 09:56:47 non-return functions have gotta' be some half-assed API 09:57:18 ahh, yer writing metaC crap 09:57:43 Suffer the screams or warnings. Or, write better code 09:58:24 there is some sorta' dumbassed "metacompiler" __noreturn__ term. Good luck. 09:58:41 O_o? 09:58:55 shit - wrong channel 09:59:12 sorry, folks 09:59:36 Normally people say some odd lines in the wrong channel. You give entire rants. :) 09:59:49 I answered like 4 questions 09:59:54 OK, I've probably done worse. 09:59:57 ..in the wrong place 10:00:09 sheesh, I must be getting tored/burned-out 10:00:13 tired 10:01:10 Robert: too much going on, I guess.. My own code/vm, and watching a couple channels: it adds gray hair 10:02:09 I've about concluded I need a break, and then need to think top-down for awhile. 10:33:06 --- quit: PoppaVic ("bids everyone a Good Knight") 13:37:03 forthlike domain languages rule 13:55:32 domain languages? 13:55:57 Special-purpose languages? 14:01:09 oh.. where does someone cries after xell? 14:05:25 --- quit: madwork (Read error: 104 (Connection reset by peer)) 15:00:04 --- quit: virl (Remote closed the connection) 15:22:23 --- join: tathi (n=josh@pdpc/supporter/bronze/tathi) joined #forth 15:24:21 Hi. 15:32:25 Hi Robert 15:40:02 --- nick: Raystm2_ -> Raystm2 15:46:22 hi all 15:46:35 Hi. 15:56:36 Robert! where ya been! :) 15:56:56 Hmm... around here, somewhere. Doing Prolog homework. :/ 15:58:41 I been meaning to say hi all day but I was busy at work. 15:59:05 Don't worry, I've been at school as well. 16:06:08 :) 16:27:01 --- join: Ray_work2 (n=vircuser@adsl-65-68-201-174.dsl.rcsntx.swbell.net) joined #forth 16:29:01 --- quit: _ja (zelazny.freenode.net irc.freenode.net) 16:29:01 --- quit: Ray_work (zelazny.freenode.net irc.freenode.net) 16:29:01 --- quit: warpzero (zelazny.freenode.net irc.freenode.net) 16:29:01 --- quit: skylan (zelazny.freenode.net irc.freenode.net) 16:29:54 --- join: warpzero (n=warpzero@wza.us) joined #forth 16:30:25 --- join: _ja (i=1361@agora.rdrop.com) joined #forth 16:30:25 --- join: skylan (n=sjh@dialup-216-211-47-87.tbaytel.net) joined #forth 16:40:18 --- quit: skylan (zelazny.freenode.net irc.freenode.net) 16:40:19 --- quit: _ja (zelazny.freenode.net irc.freenode.net) 16:42:16 --- join: _ja (i=1361@agora.rdrop.com) joined #forth 16:42:16 --- join: skylan (n=sjh@dialup-216-211-47-87.tbaytel.net) joined #forth 16:42:46 --- quit: skylan (Remote closed the connection) 16:42:49 --- join: skylan (n=sjh@dialup-216-211-47-87.tbaytel.net) joined #forth 16:45:22 --- quit: _ja (zelazny.freenode.net irc.freenode.net) 16:45:27 --- join: _ja (i=1361@agora.rdrop.com) joined #forth 17:02:27 --- join: crcv (i=crc@pool-70-110-201-9.phil.east.verizon.net) joined #forth 17:02:27 --- quit: crc (Read error: 104 (Connection reset by peer)) 17:02:49 --- nick: crcv -> crc 17:02:51 --- mode: ChanServ set +o crc 18:24:28 --- quit: tathi ("leaving") 18:30:23 hey Quartus you awake? 18:30:44 you mentioned the standard having a sample implementation for CATCH and THROW 18:30:53 i'm looking for it in DPANS, can't find anything 18:32:53 though the ANS semantics of THROW look downright repulsive 19:04:48 --- join: OrngeTide (i=orange@rm-f.net) joined #forth 19:17:10 --- join: rrDog (n=stevia@67-136-98-247.dsl2.kgm.az.frontiernet.net) joined #forth 19:19:25 --- part: rrDog left #forth 19:37:39 aha, found michael milendorf's paper on catch/throw 19:51:38 --- quit: OrngeTide ("home") 20:12:59 linky? 20:32:37 --- join: LOOP-HOG (n=chatzill@sub22-119.member.dsl-only.net) joined #forth 20:34:33 hi 20:53:06 --- join: snoopy_16 (i=snoopy_1@dsl-084-058-132-026.arcor-ip.net) joined #forth 21:10:13 --- quit: Snoopy42 (Read error: 110 (Connection timed out)) 21:10:22 --- nick: snoopy_16 -> Snoopy42 21:30:09 --- quit: LOOP-HOG ("ChatZilla 0.9.61 [Mozilla rv:1.7.1/20040707]") 22:28:10 --- quit: sproingie (Remote closed the connection) 22:36:38 --- quit: JasonWoof ("off to bed") 23:59:59 --- log: ended forth/05.09.28