00:00:00 --- log: started forth/06.12.04 00:12:51 --- nick: arke_ -> arke 00:26:11 --- join: ecraven (n=nex@eutyche.swe.uni-linz.ac.at) joined #forth 00:40:00 --- quit: cmeme ("Client terminated by server") 00:41:57 --- join: cmeme (n=cmeme@boa.b9.com) joined #forth 01:55:57 --- quit: Shine (Nick collision from services.) 01:56:02 --- join: Shine_ (n=Frank_Bu@xdsl-81-173-179-104.netcologne.de) joined #forth 01:56:14 --- nick: Shine_ -> Shine 02:04:56 --- quit: Cheery (Read error: 110 (Connection timed out)) 02:05:11 --- join: Cheery (n=Cheery@a81-197-54-146.elisa-laajakaista.fi) joined #forth 04:24:38 --- join: tathi (n=josh@pdpc/supporter/bronze/tathi) joined #forth 04:24:38 --- mode: ChanServ set +o tathi 05:04:59 --- nick: crest_ -> Crest 05:11:00 --- quit: tathi ("leaving") 05:26:54 --- nick: TreyB_ -> TreyB 05:51:14 --- quit: ecraven ("bbl") 06:12:15 --- quit: segher (Nick collision from services.) 06:12:27 --- join: segher (n=segher@dslb-084-056-203-200.pools.arcor-ip.net) joined #forth 06:12:51 --- join: Ray_work (n=Raystm2@199.227.227.26) joined #forth 06:13:32 Good morning. 06:29:57 --- join: tathi (n=josh@pdpc/supporter/bronze/tathi) joined #forth 06:29:57 --- mode: ChanServ set +o tathi 06:40:05 --- nick: Raystm2 -> nanstm 06:56:14 --- join: virl (n=virl@chello062178085149.1.12.vie.surfer.at) joined #forth 07:55:41 --- join: zpg (n=user@user-514d7663.l2.c2.dsl.pol.co.uk) joined #forth 07:55:47 Afternoon. 07:56:43 z! how's life treating you. 07:58:19 My windows colorForth problems I caused for myself... Not so bad a problem as I thought. 07:59:05 I have copies of just about eveything. AND the last few weeks of work was mostly re-arranging things so that comments could be added inline to make the work read like a book. 07:59:39 True self-documenting code, was what I was going for, and getting there. 07:59:41 --- quit: Quartus_ (Read error: 104 (Connection reset by peer)) 08:03:39 Good stuff Ray. I'm well thanks, albeit a little headachy. 08:07:02 I might try my hand at quicksorting a list without further abstraction this afternoon. Depends on whether I can muster the courage! 08:10:26 --- join: jackokring (n=jackokri@static-195-248-105-144.adsl.hotchilli.net) joined #forth 08:14:33 quicksorting a linked list? 08:14:39 yes 08:14:53 in-place? 08:16:11 why should one sort a linked list? use a "better" searchable data structure ;) 08:18:17 for an in-place quicksort of a list, I'd suppose that you would start by walking it and storing the addresses in a structure at HERE. 08:18:57 list>hash-table>list ;) 08:19:28 what for do you need this linked list? 08:20:28 i'm using lists in a number of places as flexible structures 08:20:36 and yes, going via a secondary medium might be wise 08:20:44 but i'm quite keen to get the list sorted in-place as a test. 08:21:08 just for the hackvalue? 08:21:16 good luck 08:21:47 exactly. 08:22:05 you don't need to create another structure, you just want to not call NTH or NTH! that need to walk the list; consider my suggestion about indexing the addresses up-front. 08:22:19 * zpg nods 08:23:12 The partitioning routine will need to walk the list each time; slow that way. You'll do much better to make an array of pointers, sort that, and then re-arrange your list. 08:23:59 hmm, as you suggested yesterday. yes, i probably ought to scrap this plan. 08:24:02 Really slow that way, in fact, now that I think of it. And you'd need to walk the list in two directions, swapping elements as you go. Ugh. Definitely go with the external array. 08:24:41 hmm okay, i'll set up the starting point for that then. 08:27:18 So your problem breaks down into writing a general-purpose cell-based quicksort with a configurable comparison routine, and then after that, a wrapper to apply it to your specific data structure. 08:29:54 yep 08:30:00 for some reason my pointer array is way to large 08:30:02 better debug this word 08:32:17 better, i needed a "cell /" 08:32:45 : >faux-array ( list -- a ) here >r 0 , [,] swap mapcons here r@ - /cell r@ ! r> ; 08:33:39 that is, ['] , -- now just write mapcons! :-) 08:33:50 : pointer-array ( list -- array len ) 08:33:51 here >r 08:33:51 begin dup while 08:33:51 dup , cdr repeat drop 08:33:54 r@ here r> - cell / ; 08:34:10 i could place length in the first cell of course 08:34:42 but this works rather nicely 08:34:57 from that, mapcons should be simple. 08:35:16 well, eachcons. 08:35:16 i have mapcar somewhere 08:35:28 : mapcar ( xt list1 -- list1 ) 08:35:28 dup >r 08:35:28 begin dup while 08:35:28 2dup tuck car 08:35:29 you don't want the car, though. 08:35:30 I think you're starting at the wrong end -- you need a quicksort that can sort an array first. 08:35:32 rot execute rot car! 08:35:34 cdr repeat 2drop r> ; 08:35:38 08:35:46 yeah, well i've now generated an array of cons pointers 08:36:15 mylist @ list. [ '1' '2' '3' '4' '5' '6' '7' ] ok 08:36:16 mylist @ pointer-array parray. 1049376 1049408 1049440 1049472 1049504 1049536 1049568 ok 08:36:49 this is what we were discussing, surely? i've created an array from a list, the array being 7 cells of pointers 08:37:01 i mean, parray. is just: 08:37:02 : parray. ( array len -- ) 08:37:02 0 do dup @ . cell + loop ; 08:37:05 yes. 08:37:12 Right, but you're complicating the problem-solve by trying to solve both parts at the same time. 08:37:19 i am? 08:37:23 this is all i've done 08:37:36 from a list, create an array of pointers 08:37:51 Looks that way from here. You need a quicksort routine that can sort anything, which is actually the larger part of the problem. Later you need to worry about copying node pointers. 08:37:54 i'd written mapcar previously; i'm not considering mapcons yet. that's ayrnieu's suggestion. 08:38:28 of course. but quicksort will work on this list of strings or a list of doubles, depending on what comparison i apply. 08:38:34 my string lists and numerical lists are both double-based. 08:38:40 you've already written a mapcons, you just haven't factored it out. 08:39:07 Sure. But if you start by writing a quicksort to sort a list of integers, you'll find it easier to write and debug than if you're starting by writing one that does a string compare from a list node. 08:39:09 this is true. 08:39:11 er, not *map* anything. Sorry for using the wrong term. 08:39:45 my cons cells are double by default. i don't see how the problem is too compounded though. 08:40:03 *shrug* just my advice. 08:40:06 k 08:41:22 If i might be allowed to make a freshman suggestion, for what it's worth... Maybe try the forth solution first, then work from that to this lisp/forth solution? 08:42:18 Just to have something to everybody understands that you are working towards. 08:42:24 to=so 08:42:30 well i'm sorting a list of elements 08:42:34 that=what 08:42:42 this is by its nature an extension 08:42:55 but the list>array proposal seems to simplify matters 08:45:52 aye, it allows you to apply familiar array-sorting algorithms, with very little cost. 08:46:02 indeedy 08:46:20 You could write a partitioning algorithm for a doubly-linked list, but it'd be ugly and slow and pointless to so do. 08:47:56 yep 08:48:02 i'll stick with the array idea 09:04:01 eww, nightmare. 09:09:52 ? 09:13:03 bad code. 09:16:40 It's not officially bad code until _I_ write it! :) 09:16:58 I've done some work on quicksort for my book. 09:18:15 cool. 09:22:03 Quartus: Do you use any "book creation" software? 09:22:37 No, though I may investigate index-generators later, depending on how well my manual indexing efforts come out. 09:24:28 Indexing, yeah, that's bound to be a bit of a bear if you try to list every usage... 09:24:47 .../. 09:24:48 Well, I doubt I will; such an index would be larger than the book. 09:24:53 :) 09:25:04 That one got a giggle out of me. 09:25:26 Indexing is a bit of an art. I don't know what's available to help, been quite awhile since I surveyed the field. But I'll likely have a glance around. 09:25:36 use some index creation software as an example in the book ;) 09:25:40 my array-swap is buggy still, but less so :) 09:26:12 zpg, I use a common-usage name 'exchange' ( addr1 addr2 -- ) 09:26:19 d'oh 09:26:27 bug ridden: 09:26:28 : array-swap ( array len x y ) 09:26:28 rot drop ( a x y ) 09:26:28 >r over r> ( a x a y ) 09:26:29 exchanges the contents of two cells 09:26:30 cells + -rot 09:26:35 cells + ( aY aX ) 09:26:37 2dup >r ( aY aX aY ) 09:26:39 @ swap ! r> 09:26:44 @ swap ! ; 09:26:45 i'll use exchange then. 09:27:01 Yikes. I'm not even sure what that word is supposed to do. 09:27:32 Oh, are x and y indices? 09:27:50 yes 09:27:54 it's a mess. 09:27:54 That way lies madness. Work with the pointers instead. 09:28:11 my-array @ 2 3 array-swap 09:28:13 is the idea 09:28:22 giving ( array length 2 3 ) 09:28:36 then ( array 2 array 3 ) 09:28:40 which means you're calculating the addresses every single time, and schlepping around the array start and length. 09:28:56 true 09:29:09 So work with the addresses directly. Trust me, it's better. 09:29:09 time for tea, need to clear my mind :) 09:29:17 okay, shall do 09:30:54 Cool, I'm thinking about creating some T-shirts : "I'm a Forth >r over" -- hehe 09:34:49 >r over ? 09:35:26 push over, not funny if I have to explain it to someone who should know, cancel t-shirt order. 09:35:38 oh. I don't equate 'push' with >r 09:36:03 I do. I speak it as push and r> as pop. 09:36:15 to-r and r-from for me 09:37:02 Ya, I should be saying to and from as I do for other "g-than, l-than" words. 09:37:23 I have 'push' and 'pop' as actual words in a stack module I use. 09:37:47 as in 20 stack foo 5 foo push 6 foo push foo pop . foo pop . -> 6 5 09:37:48 Right. I suppose most implementors see push and pop as asm. 09:41:38 I suppose I learned colorForth first and don't have a >r r> just push and pop. 09:42:58 --- join: timlarson_ (n=timlarso@65.116.199.19) joined #forth 09:44:23 Quartus: would one benefit from RAII in forth? 09:46:43 Isn't RAII involved in constructor and destructor functions in an object-based system? 09:47:14 yes, It's a c++ concept. 09:48:06 Forth isn't an object-based system by itself; if you built an extension, the technique might be of use on top of that. 09:48:11 RAII is a method where your class allocates stuff in initialization or method, then destructor frees it, when things goes out of scope. 09:49:27 Quartus: well... I found out it is one of the few things I actually like in c++ 09:50:16 I don't think it has general applicability outside of C++, or another similar system where exiting scope triggers deconstruction. 10:03:13 --- join: marble (n=glass@cpc1-bolt6-0-0-cust18.manc.cable.ntl.com) joined #forth 10:06:27 --- join: Cheer1 (n=Cheery@a81-197-54-146.elisa-laajakaista.fi) joined #forth 10:07:41 --- quit: Cheery (Read error: 110 (Connection timed out)) 10:41:46 --- quit: neceve (Remote closed the connection) 10:43:23 Almost all of the object-enabled Algol descendants fall into this category. Off the top of my head I can't think of one that doesn't. 10:45:21 If the destructor is called by the GC in a GC language, you don't know when it's going to happen, so you'd have to explicitly trigger the finalization action. 10:46:47 --- quit: timlarson_ (Read error: 145 (Connection timed out)) 10:49:15 GC throws a whole other snake in the pit. 10:49:26 So Java, for instance. 10:50:19 --- join: Quartus_ (n=Quartus_@209.167.5.2) joined #forth 10:50:19 --- mode: ChanServ set +o Quartus_ 10:53:03 Java doesn't have anything like malloc though, does it? 10:54:14 --- join: snowrichard (n=richard@12.18.108.162) joined #forth 10:55:05 --- join: timlarson_ (n=timlarso@65.116.199.19) joined #forth 10:56:59 Malloc isn't a required underpinning of RAII, as far as I know. I'm no expert in this stuff, though. 10:58:14 I only use Java if no alternatives are available. 10:59:42 well what do you know, i come back and within 2 mins solve that swapping problem :) 10:59:57 this look okay for exchange? 10:59:59 : exchange ( add1 add2 ) 10:59:59 over @ over @ >r 10:59:59 swap ! r> swap ! ; 11:00:50 --- join: jackokring[1] (n=jackokri@static-195-248-105-144.adsl.hotchilli.net) joined #forth 11:01:09 RAII? 11:01:14 zpg, looks like it'll work! 11:01:19 and it does :) 11:01:47 for some reason, this sort of hacking is really pleasing. concise factors are appealing. 11:03:30 --- quit: timlarson_ (Read error: 145 (Connection timed out)) 11:05:14 --- join: Snoopy42_ (i=snoopy_1@dslb-084-058-104-027.pools.arcor-ip.net) joined #forth 11:06:00 Quartus_: if you can't allocate arbitrary storage, then the GC can trace everything through implementation defined object pointers. At that point you only have to deal explicitly with non-RAM resource reclamation. 11:06:14 zpg, which sort of hacking? 11:06:25 treyb, sure. Question isn't how, but when. 11:07:19 Yeah. Things like file handles and such might need closing before the object gets GC'd. 11:08:17 My gut feeling says that in cases like this the language has failed to completely make good on the GC abstraction. 11:10:43 --- quit: jackokring (Read error: 113 (No route to host)) 11:12:26 --- join: timlarson_ (n=timlarso@65.116.199.19) joined #forth 11:12:32 which language TreyB ? 11:13:19 --- quit: Snoopy42 (Read error: 145 (Connection timed out)) 11:13:38 --- nick: Snoopy42_ -> Snoopy42 11:13:40 --- quit: Quartus_ ("used jmIrc") 11:13:47 Quartus_ and I had Java in mind, but it might apply to others. 11:13:57 --- join: Quartus_ (n=Quartus_@209.167.5.2) joined #forth 11:13:57 --- mode: ChanServ set +o Quartus_ 11:14:19 I have join/leave notification turned off in this channel, so I don't know when you came in. 11:14:57 sorry. Mobile. Last I saw was 'gut feeling'. 11:15:17 My gut feeling says that in cases like this the language has failed to completely make good on the GC abstraction. 11:15:29 Got that. 11:16:02 Quartus_: I replied to a question by virl about which language. 11:16:19 --- quit: snowrichard ("Leaving") 11:16:46 Ok. I don't know, gc is much-beloved by some, but I've managed to avoid it for the most part :) 11:17:24 Yeah. I've always encouraged writing code that doesn't leak. 11:18:26 --- quit: cmeme (Excess Flood) 11:19:40 --- join: timlarson__ (n=timlarso@65.116.199.19) joined #forth 11:20:20 --- join: cmeme (n=cmeme@boa.b9.com) joined #forth 11:20:49 anyway RAII is an OO thing, so its applicability to Forth would depend on what kind of OO you were using in Forth. 11:20:49 virl: oh, defining nice, simple words. 11:20:58 elegant. 11:22:43 act/view/sleep/wake 4 op OO seems best 11:25:23 --- nick: jackokring[1] -> jackokring 11:25:28 --- quit: timlarson_ (Read error: 145 (Connection timed out)) 11:35:26 dup @ >r 11:35:26 over @ swap ! 11:35:26 r> swap ! 11:36:23 does the same thing (I hope) -- what's it like for style? 11:37:00 i had a variant that used dup and over, but found the version i pasted in more intuitive. 11:38:28 it does have a different feel to it... 11:39:13 2dup @ >r @ swap ! r> swap ! 11:39:14 yep. i find that having the 'over over' idiom is clearer. saves having to think to much about the stack. 11:39:48 @<>@ os a good name for it 11:40:10 os ==is 11:40:16 jackoring, that has to rank among the worst names I've ever seen. 11:40:33 swaping the @ values? 11:40:41 seems intuitive to me 11:41:16 it's unpronounceable and it looks like line noise, and <> already has a 'not equal' connotation. 11:41:21 @swap 11:41:22 ?? 11:41:31 exchange. 11:42:07 heh. 11:42:16 but swap has the right conotation, exchange sounds like a financial conversion 11:42:25 @swap looks like @ swap. 11:43:11 : @swap @ swap ; would be such a bad use of factoring 11:43:12 swap is a stack word, not a memory word. Existing connotation, again. 11:43:21 hence the @ 11:43:44 @ is pointer ref, therefore @ swap is dereferanced swap 11:43:47 except the action is not @ swap. 11:44:50 yeah, but @@swap!! is way to long as a common factor name 11:44:53 exchange seems intuitive to me. a string of @'s and !'s or swap doesn't. 11:45:21 jackokring: and unintuitive. if you simplify it by stripping it down to @swap, it means nothing. 11:45:36 pointer dereferanced swap 11:46:01 that reads "at swap" 11:46:11 exchange reads "exchange" 11:46:31 "at swap" suggests stack manipulations, "exchange" does not. 11:46:49 and in english many word are not quite as expressed e.g. review 11:47:03 pardon? 11:47:04 @@swap doesn't sound two bad -- each of the @s refers to something to be swapped 11:47:05 good naming means sticking with human words as much as possible. 11:47:18 and the definition had stack manipulations ;) 11:47:38 marble, again, it's not a swap. Swap is a stack operation. 11:47:41 jackokring: yes but the exchange is between two cells in memory. 11:47:51 jackokring: not two stack items. 11:47:52 ffswap might swap two things on a float stack, for example 11:48:06 i'd agree swap is swap two top stack items yes 11:48:15 on a stack, right. 11:48:43 but also it is exchange top two stack items, so @exchange may be better ;) 11:49:26 it's not good naming to put implementation details in the name. 11:49:46 why not? 11:50:16 i suppose it matters not as a local definition 11:50:38 good naming always matters. 11:51:13 only on global reuse issues, for compaction single letter names are better 11:51:29 TRADE sounds good to me. 11:51:47 nice 11:51:51 i like that 11:52:06 exchange normally being taken. 11:52:53 exchange is normally used for exactly what we're describing. 11:52:53 i thought the common usage of EXCHANGE is as evidenced above? 11:53:13 In that case I'd go with EXCHANGE. 11:53:16 heh 11:53:18 implementation hints do go a long way for remembering whats available for reuse 11:53:27 tea-time. 11:53:39 good naming is always important. 'Source compaction' is a nice way of saying 'deliberate obfuscation'. 11:54:05 but exchange has no context of whats exchanged as a word on its own 11:54:17 I was thinking exchange would be used in the assembler, but thats xchg really, isn't it? 11:54:45 jackokring: in context you will have the two addresses. 11:54:56 on x86, yes -- don't know about others 11:55:02 addr1 addr2 exchange blah blah... 11:55:07 marbles @@swap seems best compromise to me, but its just a personal pref. 11:55:28 jackokring: I thought there was already a word for this? 11:55:42 there is. It's exchange. 11:55:42 refswap 11:55:57 itemswap 11:55:57 Quartus: where i was heading. :) 11:56:09 daftname. 11:56:17 jackokring: Kick that dead horse. :) 11:56:20 cellswap 11:56:43 it's not a swap. Swap is for stacks. 11:57:03 bricks are for walls, and I may as well be talking to one. I'm out. 11:57:21 i'll swap this conversation for another, as per the meaning of swap 11:57:25 see ya later Quartus_. 11:58:58 COMMUTATIONAL_ARRANGEMENT_BETWEEN_TWO_DISTINCT_ADDRESSES_IN_RANDOM_ACCESS_MEMORY is good, no? 11:59:44 ramswap 11:59:54 ;) 11:59:56 commutationalArrangementBetweenTwoDistinctAddressesInRandomAccessMemory ? 12:00:14 CABTDAIRAM ? 12:00:24 :) hehe 12:00:35 very nearly pronounceablt. 12:00:46 unlike my last word. 12:01:04 why distinct anyhow ;) ? 12:01:15 hmm, that's a word name, other coders would hate you... 12:02:32 jackokring: because, while you could use the same address for destination and source, Distinct speaks to the actual usage of the word. 12:03:12 but doesn't that limit factoring opertunity through remebering name? 12:03:30 Lord, I hope so. :) 12:05:33 oh jackokring: I get it, but what you didn't know is that commutationalArrangementBetweenTwoDistinctAddressesInRandomAccessMemory is built with commutationalArrangementBetweenTwoAddressesInRandomAccessMemory 12:06:21 should that be TwoValuesOnTheStackPointingIntoRandomAccessMemory ? 12:06:34 I suppose it should! 12:06:42 Damn! foiled again. 12:07:23 no no, the word does have a stack comment of ( a1 a2 -- a2 a1) 12:07:32 it's implied. 12:07:57 wait it doesnot. 12:08:10 ( a1 a2 -- ) 12:08:23 XD 12:15:26 --- join: PGR (i=opera@213.179.252.64) joined #forth 12:15:30 hehe 12:16:59 yes some people would use handlederef, i would use @@ 12:19:46 --- join: ellisway (n=ellis@host-87-74-241-174.bulldogdsl.com) joined #forth 12:22:30 --- join: I440r (n=spam@70.102.202.162) joined #forth 12:28:23 I might use @@ if I had an address that was a pointer to another address. 12:29:31 naming is for abstraction. 12:29:52 @@ does not abstract, it implements. 12:29:55 how would you swap a value on the stack with one that was in memory? you need to mention which parties are involved in your name 12:30:02 Quartus: nice point. 12:30:50 marble, swap does such a thing, when say eax is TOS and the address in another register points to the rest of the stack in memory. 12:31:06 he he 12:31:21 another version of exchange: 12:31:24 dup r> @ swap 12:31:24 dup @ r> 12:31:24 ! ! 12:32:30 I suppose I have to have been programming forth for at least a few months before I can have any feeling on which of these 4 variations feels nicest... 12:32:33 marble? 12:33:17 dup followed by pop the last return address and @ from it crash. :) 12:33:35 oops :) that first r> should be a >r 12:33:45 Ya, I knew, but I just had too... 12:34:06 It's as much for me. I'm still learning this stuff as well. 12:34:53 We, the irreverant Forthers-TNG. 12:38:23 --- quit: PGR (Read error: 110 (Connection timed out)) 12:54:53 Ray_work: >r and r> exist in colorForth, right? 12:55:08 yeah, but they're named push and pop 12:55:34 what tathi said. :) 12:56:32 (colorforth's character set doesn't have < or >) 12:57:08 ah i see. 12:57:14 what do you use for comparison? GT, LT, GTE, LTE, etc ? 12:57:20 no 12:57:48 if is non consuming so... 12:57:56 this minimal character set business seems pretty limiting. 12:58:00 yeah 12:58:05 there are several methods. 12:58:20 IF uses the x86 processor's flags instead of the top value on the stack 12:58:45 ? does a compare, sets a flag and if takes it's course from the flage. 12:58:51 ya. what he said, again. :) 12:59:00 Less is available. 12:59:11 if you want greater than, swap less. 12:59:29 and you probably use - for = 12:59:39 sounds like assembly programming 12:59:41 - is ones compliment. 12:59:53 er 13:00:04 sounds quite a bit more annoying than assembly programming, in fact. 13:00:22 tathi, in my 'math' program I use the word 'is' for the equal sign. 13:00:38 ya, I'd rather use a decent assembler any day 13:01:21 You'd be supprised what you can do without. 13:02:08 does one document what flags a word modifies? 13:02:34 it's just whatever the x86 instructions do 13:02:35 tathi, its more to the point to say that < > while currently not in the 'icons' is easilly added with the icon editor. 13:02:55 usually it's basically a compare against zero 13:03:21 jnz :) 13:03:34 Ray_work: no, the huffman encoding only allows you to use 48 different characters in the source code 13:03:37 ray, I'll stick with at least the character set the ASR-33 had, thanks :) 13:03:38 < and > are not in that set 13:03:40 that colorforth 13:03:42 infact, any symbol, pictograph, that will fit in a 16 x24 pixel grid is codeable. 13:04:38 marble: exactly, in fact :) 13:05:42 Ray_work: yes, of course you can display whatever you want. But for word names, you're limited to only 48 characters (AFAIK). 13:06:24 why 48? You'd be surprised what you can do without. Why not 11? 13:06:41 hell, 3! 13:06:43 that's how the huffman coding works out 13:07:02 think of the compression possibilities! And the tiny keyboard! 13:07:27 you could use the pirate keyboard -- R, Avast! and space. 13:07:38 :) 13:08:48 Quartus: I use an old rotary phone, not the rotary mind you, just the clicks. 13:09:44 harder to do that on a mobile. 13:11:18 you could input the whole thing with a morse keyboard 13:12:46 one thing I'm sure I can do without is reductio ad absurdum approaches to Forth, which is already considered minimalist to start with. 13:13:47 forth minimalism? 13:26:27 hehe good thing this is logged, I'm too lazy to make a note of that, Quartus. :) 13:27:27 The Pirate Keyboard? http://static.flickr.com/29/44753311_a9270c41ac_o.jpg 13:29:24 lol 13:29:28 that's great. 13:29:48 too much plastic. Take apart and put wires and contacts to fingers... 13:29:50 It'd be more convincing with parrot crap on it. 13:30:01 lol again! 13:30:04 --- join: timlarson___ (n=timlarso@65.116.199.19) joined #forth 13:31:16 ideal keyboard for chuck? 13:31:36 ya, that's what i was thinking. 13:31:54 Though, at one point, he said he needed 7 keys/contacts. 13:32:07 Luxury. 13:32:13 then chuck would become Le Chuck 13:32:14 hehe. 13:32:25 --- quit: timlarson___ (Client Quit) 13:32:40 --- quit: Cheer1 ("Download Gaim: http://gaim.sourceforge.net/") 13:32:51 * Ray_work hears Terry Jones say "Luxury" from "Hole in the road sketch" or what ever it was called. 13:33:11 That's the one. 13:33:37 I've always loved that sketch. 13:34:10 And I think it was Graham that said it, now. Vasilating here. 13:40:42 Monty Python's Flying Circus - 13:40:42 "Four Yorkshiremen" 13:40:52 http://www.phespirit.info/montypython/four_yorkshiremen.htm 13:41:01 for them that ain't initiated. 13:44:42 --- quit: virsys (Read error: 104 (Connection reset by peer)) 13:47:05 --- quit: timlarson__ (Read error: 110 (Connection timed out)) 13:50:30 64 keys best 13:50:56 or 16 with double stroke shift sets 13:51:06 =16*15 chars 13:51:14 get a midi keyboard and a set of pedels? 13:51:16 240 by my count 13:51:41 127 keys on midi, so with chords ? 13:51:44 you gots your chords *and* you gots your shifts 13:51:50 yeah, hell, anything to be different for the sake of it, eh? 13:51:52 yep :) 13:52:43 Then when you accomplish nothing, you can blame it on the establishment's failure to understand your individualistic far-out self. 13:53:05 a nice redef of those lower 32 ascii would go a long way toward useability, CR is not a character in my view 13:53:14 I was thinking earlier that you might be able render some aspect of a forth word in sound 13:53:42 (eg: the 4 variations of exchange would sound different because they seem to me to have different rhythms) 13:54:30 wouldn't it be better to sound them as the stack effect then you could tell them as identical 13:54:38 if you've got a string of successes to point back to, then yes you can blame the establishment 13:54:49 but with different tempo ;) 13:55:08 marble, those that do blame the establishment never have the string of successes. 13:55:28 we're not talking about chuck ? 13:55:50 Never heard him blame anybody. 13:56:07 chuck did no wrong 13:56:23 ok :) so we're talking about no-one in particular 13:57:00 I was talking about people who want to use their midi piano as a keyboard substitute, in fact. 13:57:00 Really. And anyway, Chuck doesn't see Forth as a programming language, hence his problem with established practice. To him, more of a problem solving approach. Or so I gather. Can't hardly speak for the man. 13:57:07 i would have thoughy 16 by 16 icons would be more speed orientable 13:57:16 Quartus: are there such people? 13:57:25 are there? I didn't bring it up. 13:57:49 I did -- as a joke 13:58:06 anyway, that frog's dead now :( 13:58:41 ascii midi is a good idea though, with 32 left hand function keys 13:58:47 101 keyboards are standard. They work fine. Use'em. Likewise we have more than 48 symbols in the standard character set, thank heavens. Use those. 13:59:20 if the machine is different, then is should *sound* different... 13:59:28 but they consume excessive plastic, i only use the keypad for ocassional games 13:59:56 maybe the a-g music notation would confuse 14:01:59 --- join: Raystm2 (n=NanRay@adsl-68-93-115-120.dsl.rcsntx.swbell.net) joined #forth 14:01:59 --- quit: nanstm (Read error: 104 (Connection reset by peer)) 14:02:20 Modern minimalist forth will have a voice activated on switch and then the machine will anticipate your every requirement from that point on so ... no keyboard required. 14:02:46 bad news if you can't sing ;) 14:03:03 Modern minimalist Forth will do no such thing; you'll be lucky if you can get it to boot on your hardware. And that's not speculation, that's fact. 14:04:50 Realist! 14:05:29 FIG was a minimalist Forth; at least it had the virtue of being relatively easy to port to other CPUs, and provided basic facilities like, oh, access to the full character set. 14:05:44 Whacky, crazy things like that. 14:06:02 Such extravagance. 14:06:52 colorForth FAQ question #1: How do I display < and > ? A: You don't, unless you draw them yourself. Really. No kidding. 14:07:45 It's like computing in 1960, only without the ease-of-use. 14:12:08 Oh btw when that VocACT minimalist forth will be 5 times larger then ANS is now so... 14:13:17 --- quit: Shine (Nick collision from services.) 14:13:22 --- join: Shine_ (n=Frank_Bu@xdsl-84-44-131-75.netcologne.de) joined #forth 14:13:34 --- nick: Shine_ -> Shine 14:16:41 --- join: fik (n=fik__@200.181.84.119) joined #forth 14:23:03 --- quit: jackokring (Read error: 110 (Connection timed out)) 14:24:06 Quartus: The official answer to the FAQ question is: #1: What do you need < and > for, anyway? 14:24:35 It's the answer to about half of the FAQ, I suppose. 14:24:43 Right. In fact, sell your computer and take up button-collecting. 14:25:11 What do you need for, anyway? 14:26:04 Befunge, Brainfuck, colorForth, False, INTERCAL. 14:26:29 Pick your favourite blunt instrument. 14:28:30 You know, I've never INTERCALed before... 14:28:40 I'm partial to the old-fasioned wooden club myself 14:28:54 You'd find INTERCAL familiar, Ray_work, it's deliberately designed to be hard to use. 14:29:22 ColorForth is not deliberately designed to be hard to use, that's a feature! :) 14:29:58 Ray_work: true, but it is not designed to be easy to use either 14:30:08 Ray_work: wasn't even designed to be used by others at all 14:30:24 Somewhere, I have a paper: "The high cost of entry: ColorForth" 14:30:45 Subtitled "How to blame your tools for your lack of productive output." 14:30:53 JasonWoof: that's where you might be wrong. If you can get it running, it's very easy to use. 14:31:58 Quartus, may I use that subtitle in the paper? 14:32:12 If it's intended to warn others away from colorForth, sure. 14:33:00 Well, not that I intended that, but that _will_ be the effect, I'm certain. 14:34:05 I don't have a problem with the truth. 14:35:13 Dang it, I keep wanting to say "You've never used it! nany-nany-boo-boo" but your extensive forth experiance limits me. :( 14:35:38 I've run colorforth 14:35:40 I haven't used it. I have only seen it. 14:35:43 not a recent version though 14:35:55 I tried it before it had any documentation 14:35:58 Quartus: you don't need to run it, you know of what you speak. 14:36:01 and before it had any search features 14:36:20 I had to go on IRC to ask how to start the editor 14:36:24 without it crashing 14:37:06 Not me! I put in the time, figured it out. But I did have problems with a lot of the machine language. 14:37:06 perhaps there is some sort of ease with colorforth once you get trained, but I see no viable way of getting trained 14:37:44 JasonWoof, as I've said before, it involves reading the mind of a reclusive genius who doesn't care to teach. 14:38:04 Quartus: that might work :) 14:38:20 JasonWoof: that's my point. If I sat with you and wasted your life by instructing you, Half hour, you'd know everything. 14:38:41 easy in person. 14:39:40 Ray_work: do I have to know x86 asm? 14:39:52 yes, but not those pesky mnemonics; you'll need to know the octal. 14:40:08 Not intimately at first, but it helps. 14:40:36 I have a strong desire not to learn x86 asm 14:40:40 Very rare you need something more then the ones already defined. Those are easily explained. 14:40:43 it's a stupid stupid language 14:40:45 hehe :) 14:40:53 JasonWoof, no worries then. What you need for colorForth is the machine language, not the assembler. 14:40:56 :) 14:41:03 hehe :) 14:41:08 :) 14:41:19 Ray_work: ok, so after my half-hour instruction, what could I do? 14:41:22 Nothing as extravagant as an actual assembler in there. 14:41:44 the "Genius' " assembler is in his head. 14:42:02 He coded the thing in windows debug in hex. 14:42:16 chuck is an odd duck 14:42:28 ya. He's from wayback. 14:42:45 As far as I follow the history, we wouldn't even have Forth if it hadn't been brought into public view by people other than Moore. 14:42:54 I have a hard time figuring out what to do with the fact that chuck and Jeff fox use windoze 14:43:06 JasonWoof: you could do anything with it. It's forth, afterall. 14:43:16 Ray_work: hardly 14:43:24 No, really. 14:43:43 you mean the linux/windows war? 14:43:58 you could code a "real" forth compiler for it. Heck, have you ever seen ENTH/FLUX. 14:44:05 It is, by my estimation, less than Forth; less than assembler. Barely more than machine language, and in a far more restrictive environment (witness the hardware requirements, limited keyboard configuration, restricted character set). 14:44:14 That's colorforth and better then Chucks if you ask me. 14:44:32 Ray_work: why would I want to build a forth compiler on top of colorforth? 14:44:41 Ray_work: would be much easier in 10s of other environments 14:44:47 only because you personally would need it. 14:45:24 marble: linux would be a start, but I'd really like to see them using systems they wrote themselves 14:45:55 they bitch on and on about software bloat, and then go using the most bloated nasty operating system I know of 14:46:58 one of these years I'll put another 20 hours into fronds and get the editor to a usable state 14:47:08 then you can compare that to colorforth, and tell me what you think 14:47:35 right now it only works as a browser 14:47:49 Quartus you need to aim your estimation over to the point that it's not the machine that it is on, it's not even it's current configuration: ColorForth is an approach to a problem as a whole, just like forth. Those other things you mentioned are hardly problems, just not the colorforth you'd like. You'd do it differently, all things equal. 14:47:52 you can't type source in 14:48:35 Ray_work: for me I don't think colorforth makes the machine any easier to deal with 14:49:08 Ray_work, forgetting that the use of colour as decoration means you can't easily use non-coloured communications channels to even share source, colorForth is defined by what it lacks, not what it offers. 14:49:10 you would make it easier. 14:49:14 I'd rather write an operating system from scratch in asm for my machine than try to write in colorforth 14:49:17 Chuck don't need easier. 14:49:22 and I have done the former 14:49:27 :) 14:49:58 as far as I can see, chuck takes forever and a half to write anything 14:50:29 hehe. 14:50:30 ya. 14:50:31 I would most certainly not create a programming environment that redefined the keyboard and character set and required the use of a compiling editor, and that's just for starters. 14:51:14 color, could have been anything really, Howerd Oakfords colorForth switches views from color to traditional with a keystroke. 14:51:16 I would boldly go on to not make it hardware bound to a particular video-card and motherboard setup. 14:51:39 Windows colorforth has qwerty. 14:51:40 Then I'd extravagantly waste, oh, 3K, and build in an actual assembler. 14:52:09 :) 14:52:22 I'd continue down the list of not doing things, like not having all the character strings freaking HUFFMAN ENCODED. 14:52:25 Quartus: those hardware bounds, pointers. 14:52:57 Cool. Can't wait to see your version. 14:53:01 I'd use it. 14:53:05 Till then... 14:53:07 Ray_work: it's called quartus forth 14:53:10 Ray_work: try it 14:53:14 Ray_work: it's quite good 14:53:41 I've got that. Love it. 14:53:56 You can't go wrong with ANS forth. 14:53:57 the thing that gets me (and this goes for retroforth too) is that people put raw opcodes into their forth source, instead of adding it to the assembly language source file that they ALREADY HAVE. 14:54:04 Or just about any other Forth written in the last ten years, including the ones Moore himself wrote before he decided everything had to be inscribed onto a single molecule. 14:54:39 tathi: ditto 14:54:51 tathi, agreed. I had to use a few opcodes in the retroforth ANS layer because rf doesn't have an assembler in it. 14:55:08 well, "had to", I could have worked around it, at a cost. 14:55:10 yah, that I can see 14:55:29 but some of the core retro words are assembler 14:55:33 Yes. 14:55:36 and some are in "forth", but raw opcodes 14:55:44 I don't get that at all. 14:55:49 Thanks for the intervention. Gotta put this place to bed. See ya from home. :) 14:55:50 I agree. 14:56:05 yeah, I think herkforth has a few (literally a few, maybe only 2) raw (hex) instructions in the source. But this is for good reason, and there is no existant asm file that they could be in 14:56:36 hey, my cat likes cashews. :) hee hee 14:56:41 lol 15:10:34 sniper: Ya, I don't need anything Chuck has invented, especially lately, just a couple things, that's all. Bye, see ya from home. 15:10:45 --- quit: Ray_work (Read error: 131 (Connection reset by peer)) 15:11:09 sniper? 15:30:32 Enth/Flux was quite nice, for colorforth-like systems, although nicer after I painstakingly converted the system blocks into actual blocks of code, and not an uneditable file. It also didn't bother with many design decisions of ColorForth. 15:31:31 aside, the reflexive derision of Chuck Moore has risen to equal the reflexive praise of Chuck Moore. This is some kind of Cold War sense of equilibrium. 15:35:18 If you're referring to my comments, they are not reflexive. 15:38:17 --- join: Snoopy42_ (i=snoopy_1@dslb-084-058-104-027.pools.arcor-ip.net) joined #forth 15:43:08 of those, I'd choose befunge :-) It has several generations of specifications, precise notions of extensibility, multiple considered geometries, and a number of fascinating, esoteric suggestions, such as time-travelling. I could also spend much more time talking over its design with sake. 15:43:43 --- quit: Snoopy42 (Read error: 145 (Connection timed out)) 15:43:44 --- nick: Snoopy42_ -> Snoopy42 15:53:34 --- join: nighty_ (n=nighty@sushi.rural-networks.com) joined #forth 15:55:25 "Beware of the Turing tar-pit in which everything is possible but nothing of interest is easy." -- Alan Perlis 15:57:45 that's fun, but inappropriate. 15:58:04 I believe it's entirely appropriate. 16:00:14 it isn't, because I don't need to beware of enjoying myself with nonproductive proramming. 16:13:34 The quote makes no mention of enjoyment. 16:13:57 --- part: mbishop left #forth 16:17:14 ayrnieu: I don't see that much derision or praise of chuck 16:17:43 the only thing I said about him is that he doesn't seem to code fast 16:18:06 my issue with colorforth is not that it sucks, but that people are taking it out of context 16:18:20 colorforth is not inharently badly designed as what it is 16:18:31 it's badly designed as a general purpose IDE for the public 16:18:35 horribly so 16:18:35 I worry about it driving newcomers away, as it'd be very effective in that capacity. 16:18:41 but that's not what it was written to be 16:19:03 it was written to be one man's experiment in creating a computing invironment that he enjoyed hacking in 16:19:39 Quartus: me too 16:19:47 the trouble is not chuck or colorforth 16:19:53 the trouble is people claiming that it's nice to use 16:21:21 nobody has ever claimed that, I'm quite sure :-) 16:21:29 Raystm2 does 16:21:39 frequently 16:22:45 Quartus - I don't have anything polite to say about your observation on that quote. 16:22:59 less than 2 hours ago right here Ray said "If you can get it running, it's very easy to use." 16:23:13 ayrnieu, if you think I personally insulted you by quoting Perlis, you're on your own. 16:23:36 I don't think that. 16:24:09 I think the quote is quite appropriate too 16:25:00 I think bf is utterly useless except for an hour of amusement and some conviction that being turing complete ain't worth two bits. 16:25:41 --- part: ayrnieu left #forth 16:25:48 heh 16:30:25 I agree with that. 16:36:33 I played with Intercal for at least an hour once. 16:36:41 20 years ago, but still. 16:37:32 most languages don't change much over the years 16:38:07 What I mean is that it's the sort of thing you look into once or so, and come to the same conclusions you cited above. 16:38:37 I see. 16:38:40 only less amusing? 16:38:59 Of course I don't have droll conversations about time-traveling programming constructs over cups of sake while puffing on tobacco that is kept in the Persian slipper on the mantle. 16:39:16 drat 16:39:35 what do you do for fun then? 16:39:51 Eat cashews with my cat. 16:40:12 Who sends his regards. 16:44:01 lol 16:44:28 :) 16:44:58 wish I had some cashews 16:45:04 I'll pass on the cat though 16:45:10 He's an excellent cat. 16:46:46 is it furry? 16:46:53 Extremely. 16:46:56 s/it/he/ 16:47:09 some cats are very cool 16:47:24 but I generally don't want them in my roob because of hair getting everywhere 16:47:32 He's a Maine Coon, 22 years old. A lot like a dog. He sheds less than he used to. 16:49:21 cool 16:49:25 that's pretty old 16:49:28 He sheds less than a short-haired cat, paradoxically, but there's still shedding. Unavoidable with a beastie. 16:49:32 Yes, he's very long-lived. 16:53:01 The trick is not giving them digital watches, then they don't know what day it is. 16:53:07 So they have no idea they're old. 17:03:35 JasonWoof: While I stand by my statment, mearly because it's true ( being easy to use if you can run it ), you won't find me trying to get newbies to try it. I know better. BUT otoh, I will answer questions about it to the best of my ability. 17:04:54 It is what it is. It requires competent people to explain it because, face it, it's very interesting. People are talking about it even today. 17:05:35 And, while fun to play with, you don't see anyone being very productive with it. Well, very few. 17:08:22 I think it's the Emperor's New Clothes. Only in this case, they are talking about how really nude he is. 17:08:26 anybody, except maybe chuck himself 17:08:39 Raystm2: I believe that it's easy to sit in front of it and press buttons 17:08:53 and make it do something 17:09:09 I don't believe that it would be easy to do something considerably useful with it, like say write an irc client 17:09:20 or an html renderer 17:09:28 or "Hello World". 17:09:49 (Seriously.) 17:10:30 Quartus: yeah, it's kinda sad 17:10:52 Really. It's a computer language in which it is difficult to write "Hello World". Think about that. 17:11:29 Besides, we are speaking of the history of colorForth here, a historical artifact. The real thing is being used by a team of guys in CA, on both windows and linux machines, and it's doing everything. 17:11:31 I if "Hello, World!" would be shorter in bf or colorforth... 17:12:44 herkforth doesn't do inline strings... but it does do strings, so it comes out nicely. You just have to name your string: : hello-world s-hello ctype ; 17:12:54 I don't know what team of guys would deliberately use such a crude implement. 17:12:56 and s-hello has the text in it 17:13:01 IRC client should be atleast as easy to do as crc's. 17:13:15 crc's uses ffi. 17:13:17 Raystm2: without strings? 17:13:23 Quartus: you only see the artifact. 17:13:31 hmm? 17:13:44 Raystm2: what do you see? 17:13:52 JasonWoof: strings are available. I point you to Howerd Oakfords cfdos4. 17:15:07 Oakford's stuff, I think I looked at that last week. Page full of stuff that claimed colorForth as an ancestor, but seemed to just be Forth. 17:15:14 I see Chuck and a team of guys providing everything they need to get their tasks accomplished. 17:15:32 yeah, Oakford has moved on IIRC 17:15:39 Raystm2: do you? I thought they used windoze 17:15:45 Really? Like Intellesys's stuff that all runs under Windows? 17:15:50 Everyone but me has, really. Oh and the CA team. 17:17:06 JasonWoof: no, they are using both machines and the same colorForth on each. The promised update has code for several machines, i'm told, or have heard somewhere. 17:20:14 Not your cup-o-tea, certainly understand and can't blame you. What I got out of it, and continue to get out of it, is an education on how things work, using a system I can get my head around. 17:20:38 CA team? 17:21:09 Intellasys in California, right? 17:21:11 oh. 17:21:17 or so I thought. 17:21:21 Ya it is. 17:21:23 presumably 17:21:43 with a released simulator that requires Gforth (or, as I recall, SwiftForth). 17:21:49 yeah 17:21:57 I have the impression that chuck is still using it for chip design 17:21:58 "colorForth, The kind of thing you expect coming from California!" :) 17:22:24 and Jeff implied that he and some other guys are using it for some simulator stuff, but I never know whether to believe him. 17:22:41 I know whether to or not. 17:22:43 Lot of truth there, tathi. 17:23:24 but they're trying to be a serious company -- they'd hardly release a colorforth version :) 17:23:46 but even if they have code in it, colorforth still sucks 17:23:50 Heck, a Windows and Linux binary would be fine. Just a Windows, even. 17:23:54 --- quit: crc ("Leaving") 17:24:03 :) 17:24:35 well, really. it's very poorly coded. 17:25:02 The simulator code? Haven't looked at it. 17:25:09 no, colorforth 17:25:18 there is that. 17:25:34 tathi: I recall you doing some fixing there. 17:27:10 intellasys has an office here in tempe arizona 17:29:06 --- quit: ellisway (Read error: 54 (Connection reset by peer)) 17:46:50 I'd need backing up on this, but i only see 4 defined system calls in the netclient portion of retroforths irc client. I don't see any ffi work here. Please verify. http://retroforth.org/projects/darcs/RetroIRC/ 17:47:14 I'd ask crc... 17:47:56 system calls, ffi -- six of one, half doze of the other. 17:47:59 He's got here: read, write, poll, and socketcall. 17:48:08 okay, thank you sir. 17:48:17 Right. In that case the net functionality is part of the kernel. 17:48:31 Not splitting hairs here with you, sir, just learning. :) 17:48:34 It's calling external functions, at any rate. 17:48:39 Okay. 17:48:56 I get that. 17:49:08 I consider the calling mechanism unimportant. 17:49:21 I understand that, as well. 17:49:45 I needed the definition tho, for me. 17:50:09 Raystm2: it isn't calling any library functions though, just kernel functions (syscalls). 17:50:26 I get that as well. 17:50:38 I also consider the location of the foreign functions (library vs kernel) unimportant. 17:50:47 Still, like Quartus says, the point being that there is support software in the chain. 17:51:15 yah, sorry. wasn't sure what you were asking for verification on. 17:51:48 Quartus could mearly substitute syscall for ffi, in a statement above and be just as strong a statement. 17:51:53 --- quit: fik (Remote closed the connection) 17:52:10 And I argue to learn, so thank you all. :) 17:52:12 heh 17:52:40 Meanwhile I'm making barrels. 17:53:04 barrels for what? 17:53:16 Replica plastic toy barrels, to make Tom Servo puppets. 17:53:45 $80-$90 bucks each, who could blame you. 17:53:46 http://nealbridges.com/bots/servo 17:53:46 ah 17:53:55 There's a sale on, Raystm2. :) $64.99. 17:54:38 If i had 65 bucks i'd unlock QuartusForth at the student rate! :) 17:54:50 Save those nickels. 17:54:56 I need'em. :) 17:55:46 I'm nearly there. Your competition is mearly my aniversary next Monday, Nan's Birthday( yes with a capital B) two wednesdays... need not mention more :) 17:56:07 I'm sure she'll understand. Buy it for her, use it yourself. :) 17:56:23 After all, isn't your happiness a gift to her? :) 17:56:34 * Raystm2 resembles "The Thinker". 17:56:47 There is that! 17:56:53 Tell her you bought it to write her a special program. 17:57:11 Hello wNan! :) 17:57:13 Heh. 17:57:29 damn got a bug in it. 17:58:19 Quartus: it is what i'm getting myself for Christmas. 17:58:25 Neat-o. 17:58:38 Does this mean I have to say nice things about colorForth? :) 17:59:00 Is that even ... shutter the thought. 17:59:04 I'm not sure I'm up to it. May have to raise the price. :) 17:59:34 My only problem with your side is that you make perfect sense. 17:59:48 That's a serious problem. 18:02:31 I admit, collossal waste of time and energy, and yet there are so many neat ones. And they're getting better all the time. And i'm thinking in it very quickly. Being that the options are very limited, the answers all tend to look the same. Simple display. Display your custom keyboard too. You can design quickly with it and sure you gotta move it to another system... 18:03:25 Looking at Oakford's stuff, what's happening is that elements of real Forth are being added back in, in chunks; that's a decided improvement. But honestly, how could you make it worse? Better is the only direction. 18:03:38 lol. 18:07:11 Better minds then mine are attracted to it, even if just for a little while. 18:14:26 --- quit: I440r (Read error: 110 (Connection timed out)) 18:33:00 --- quit: tathi ("leaving") 18:50:13 --- part: marble left #forth 18:54:05 --- quit: zpg (Read error: 60 (Operation timed out)) 18:58:29 --- join: crc (n=crc@pool-70-110-184-158.phil.east.verizon.net) joined #forth 18:58:31 x 18:58:40 --- mode: ChanServ set +o crc 19:14:19 x the unknown. 19:16:57 sorry, wrong window 19:22:47 --- join: virsys (n=virsys@or-71-53-65-55.dhcp.embarqhsd.net) joined #forth 19:27:19 --- join: ellisway (n=ellis@host-87-74-241-174.bulldogdsl.com) joined #forth 19:31:49 crc: I discovered recently that the mirror to LATER is some name that means swap stack positions 3 and 4, but then you prob'ly knew this. Just looking for the name, if you've got one? 19:35:14 I don't delve that deeply into return stack manipulation 19:36:05 --- quit: madgarden (Read error: 104 (Connection reset by peer)) 19:36:54 --- join: madgarden (n=madgarde@bas2-kitchener06-1096751791.dsl.bell.ca) joined #forth 19:44:13 Sorry, not return stack, data stack positions 3 and 4, : some-name-means push push swap pop pop ; 19:46:57 I seldom even delve that deeply into the data stack 19:47:04 I don't either. 19:47:16 It's nonsense, I know. 19:47:51 It's got an equivelent, : same-thing-really 2swap swap 2swap ; 20:05:13 --- join: snowrichard (n=richard@12.18.108.162) joined #forth 20:08:34 hi 20:09:17 --- quit: virl (Remote closed the connection) 20:17:03 --- quit: snowrichard ("Leaving") 20:28:22 --- join: slava (n=slava@CPE0080ad77a020-CM000e5cdfda14.cpe.net.cable.rogers.com) joined #forth 20:28:22 --- mode: ChanServ set +o slava 20:33:43 You've got to wonder why you'd need to swap positions 3 and 4. 20:33:47 Hi slava. 20:35:36 plonk 20:35:44 lo 20:35:46 plonk? 20:35:53 noise :) 20:35:57 plonk! 20:36:01 hi Quartus 20:36:03 something dropping :) 20:36:03 ah 20:36:16 i fixed the memory management bug; if the last block in the heap was allocated the free list would corrupt 20:36:18 No werties lately, slava. 20:36:23 something heavy like led dropping makes PLONK! 20:36:28 Quartus: oh well 20:36:30 no doty either 20:36:30 nighty_, true 20:36:36 slava, good point. I hadn't missed him. 20:36:42 No entertainment value. 20:37:49 Google says nary a message since Nov. 16. 20:38:05 ยง 20:38:07 ? 20:38:20 From John Doty. 20:42:16 Another bug dead, slava. Good news there. 21:41:56 --- join: arke_ (n=Chris@pD9E05375.dip.t-dialin.net) joined #forth 21:49:33 --- quit: arke (Read error: 60 (Operation timed out)) 22:09:21 --- quit: virsys ("bah") 22:14:21 --- join: virsys (n=virsys@or-71-53-65-55.dhcp.embarqhsd.net) joined #forth 22:17:32 --- quit: nighty_ ("Disappears in a puff of smoke") 22:36:14 --- quit: Shine ("Chatzilla 0.9.77 [Firefox 2.0/2006101023]") 22:52:54 --- nick: arke_ -> arke 23:09:59 --- quit: slava () 23:11:22 --- join: crest_ (n=crest@p5489439F.dip.t-dialin.net) joined #forth 23:13:37 --- quit: Crest (Read error: 60 (Operation timed out)) 23:47:48 --- join: Cheery (n=Cheery@a81-197-54-146.elisa-laajakaista.fi) joined #forth 23:59:59 --- log: ended forth/06.12.04