00:00:00 --- log: started forth/03.04.30 00:01:40 --- quit: a7r_ ("Client exiting") 00:16:31 'morning 00:33:33 --- join: karingo (karingo@205.portland-01-02rs.or.dial-access.att.net) joined #forth 00:44:20 --- quit: karingo () 02:05:26 --- join: karingo (karingo@205.portland-01-02rs.or.dial-access.att.net) joined #forth 02:07:51 --- quit: karingo (Client Quit) 02:13:26 --- join: karingo (karingo@205.portland-01-02rs.or.dial-access.att.net) joined #forth 02:21:43 --- quit: karingo () 02:30:04 --- join: ramnull (~nicad@12-241-145-39.client.attbi.com) joined #forth 02:30:40 --- quit: ramnull (Client Quit) 03:42:33 --- quit: Speuler ("NO CARRIER") 03:52:40 --- join: mur (murr@baana-62-165-188-203.phnet.fi) joined #forth 04:11:02 --- join: karingo (karingo@205.portland-01-02rs.or.dial-access.att.net) joined #forth 04:15:20 --- quit: karingo (Client Quit) 04:45:06 --- quit: Robert ("bbl") 04:51:52 --- join: karingo (karingo@130.portland-11-12rs.or.dial-access.att.net) joined #forth 04:56:32 --- quit: karingo (Client Quit) 05:03:56 --- join: karingo (karingo@130.portland-11-12rs.or.dial-access.att.net) joined #forth 05:10:47 --- quit: karingo () 06:07:12 --- join: Robert (~snofs@h138n2fls31o965.telia.com) joined #forth 06:24:01 --- quit: CaffeineJunkie (Read error: 110 (Connection timed out)) 06:59:32 --- join: PoppaVic (~pfv@s96.waters.gtlakes.com) joined #forth 07:22:38 terve PoppaVic 07:23:03 turf, chief 07:25:03 --- quit: PoppaVic ("(I don't need a reason)") 08:22:19 --- join: PoppaVic (~pfv@s23.waters.gtlakes.com) joined #forth 08:53:47 How do quit from a word, from withing an isForth for/nxt loop? 08:54:00 heh 08:54:06 Just running "exit" causes some serious damage ;) 08:54:13 perhaps 'exit' ? 08:54:15 And there is no "unloop".. 08:54:18 ouch - bad design 08:54:34 rdrop or 2rdrop? 08:54:37 Well, most counted loops use return stack, no? 08:54:48 yep 08:54:52 Closes I found was r>drop.. 08:55:10 heh.. I'll stick to gforth ;-) 08:55:26 Bleh. 08:55:35 IsForth is nice... except maybe a few things. 08:55:39 yeah... Suffer, ba-bee ;-) 08:56:05 gforth smells funny 08:56:08 use a label and goto ;-) 08:56:29 gforth works, which is all I cared about - other than portability. 08:56:35 I installed every forth debian had available 08:57:02 I believe I used the latest tarball... Yeah, ./configure, make & install 08:57:04 now I flip flop between pfe and gforth 08:57:18 yeah - they seem to be somewhat compatible. 08:57:24 flip and flop back and forth 08:57:40 :) 08:57:46 I use gforth when I need floating-point. 08:57:50 Which isn' 08:57:53 Which isn't very often. 08:57:58 I'm sticking with gforth - at least for now.. It's what I'll use for "Autofoo". 08:59:34 ..the goal is: 1) initially, sidestep the GNU autoshit; 2) perhaps generate autoshit on the developer-side. 09:00:23 tile rulz ;p 09:02:46 Stupid Robert.. 09:02:54 : x 10 for r>drop exit nxt ; 09:02:58 That works just fine... 09:03:01 hehe 09:03:19 Now try it in pfe or gforth. 09:03:33 Bleh, shut up ;) 09:03:39 hahaha 09:04:28 gforth feels like gcc... BIG, with lots of features. That's not really what I need now, though. 09:04:45 No.. you need a native-code compiler ;-) 09:05:36 I'm really, really suprised to see that it's commercially common now, but no one at all seems to have that in an opensource effort. 09:06:44 * PoppaVic is cogitating how to rearrange his sources & defs.. 09:07:31 hmm.. I may need to print it all and go from the clipboard & easychair. 09:07:40 I am writing a "native-code" compiler for the VM I run on my AVR testing board. 09:08:24 Then I'll code Forth on a 1x5cm "computer". :) 09:08:45 nope.. I mean we deal with our typical forth, but can native-code compile a target.. Like gcc 09:09:18 ..and frankly, GENERATING ansi-C seems even more "portable". 09:09:41 Generating C... hooray. 09:15:28 well, generating asm wouldwork too - I don't know offhand what gcc generates.. nas or something? 09:16:11 however, ansi-c is more portable than asm, no..? 09:19:39 Sure, sure.. 09:21:17 Of course, my point was in generating turnkey-code sans all the interp stuff. 10:35:17 --- join: ASau (~asau@158.250.48.197) joined #forth 10:35:33 Good evening! 10:35:42 Privet! 10:35:57 lo 10:36:35 What do you think about text processing? 10:36:56 Any idea about regex replacement or implementation? 10:37:37 a few, but today is a boozing day in Finland, so I would have trouble explaining them just now :-) 10:37:43 I think forth is worse than C with text 10:37:58 ..but it could be improved 10:38:13 Tomorrow there is a holiday in Russia ;) 10:38:30 too many parties, not enough work 10:38:40 tomorrow also, but we start this evening 10:39:13 What do you think about replacement of regex? 10:39:18 Any proposals? 10:39:26 pcre 10:39:35 ..now write the whole api. 10:39:37 Hi ASau 10:39:46 Privet, Robert! 10:39:53 Privet :) 10:40:04 Well. 10:40:23 Regexes are equivalent to finite state automata 10:40:39 so what? 10:40:53 Would it be better to be close to FSA more than to regex. 10:41:03 ? 10:41:06 any moron that wants to rewrite it all from scratch needs a brain-transplant. 10:41:48 That is my question, you've got the point, it seems. 10:42:05 ..if I can't interface with C, then life ain't worth living. 10:42:18 I mean: would it be better to be close to FSA, rather than to RE? 10:43:23 Maybe there is nothing necessary in RE, if we get easy words to write FSA. 10:43:23 what part of what I said was lost? 10:43:33 there are none 10:44:11 I've seen one implementation of RE in Forth. I've not liked it. 10:44:41 I've seen a few, (the ones on taygeta plus one other) and they were all quite, ahm.. awkward 10:44:42 See at RuFIG: www.forth.org.ru, Ruvim Pinka (IIRC) did it. 10:44:46 I don't blame you... for a FSA - see glib 10:44:59 not interested, personally. 10:45:24 AS: but for all my text processing, simple jump tables arranged in a tree work well enough 10:45:30 I typically feel you run or parse or run+parse words - period 10:46:22 The problem is that there are cases when one couldn't parse words in straight manner. 10:46:29 not true 10:46:46 CSV is example. 10:47:11 CVS is a freak having nothing to do with text/forth/string-parsing. 10:47:29 CSV can be parsed in a pretty straight manner 10:47:31 Comma separated values. 10:47:32 I suspect your initial problem is one of "what do I want?" 10:47:50 since every comma terminates a token unless preceded by some escape char 10:47:57 CSV isn't an issue to C - just to forth... Once again, "ain't that fun?" 10:48:08 XeF4: You mean CHAR , WORD ? 10:48:44 long ago - we could redefine the sep-char... I doubt that exists, anymore. 10:49:24 AS: I mean VAL1, VAL2, VAL3, VAL4 10:49:25 further, one sep-char is not really enough... Should be 2 or more.. but that's the interp portion.. (hint-hint) 10:49:50 AS: char,word,whatever is dictated by what is expected of each field 10:49:52 in C, I like strstr - used backwards.. 10:50:41 XeF4: except "," and ", " and " ," and " " == "\t" are all similar and valid. 10:50:57 As example, I have (rather frequently) to reduce size of various tables by eliminating randomly distributed record by (RE) sample (with sed I do it). 10:51:24 for line-input, we have one set of rules - for files, another.. It muddies the water fiercely. 10:51:36 Poppa: whitespace is ignored 10:51:37 Sometimes it is too head-breakish. :) 10:51:43 gee "sed" is written in C ;-) 10:51:53 I know ;) 10:52:03 ..so, back to what I said. 10:52:09 sed is written in C for historical reasons 10:52:24 yeah, yeah - does the forth imp exist? in use? 10:52:35 I can do "gzip -d sed402.tgz" even under DOS. :) 10:52:41 * XeF4 seems to recall seeing a forth implementation somewhere 10:52:46 hehehe 10:52:54 Keep reaching, man ;-) 10:53:09 XeF4: You mean RE? 10:53:18 Forth has a bigger prob with "strings" than C - I say it again. 10:53:32 AS: I mean RE with a sed-like set of command line arguments 10:54:11 with my primgen-shit, I would HOPE someone can break that "barrier", but I doubt it. 10:54:12 Hm.. 10:55:26 Maybe we should try to invent good set of words to deal in strings? 10:55:37 yep - that too 10:56:04 primgen-shit? 10:56:16 I've written 'primgen' to translate the dpans shit to code-primitives and optional headers.. So far, that's it.. The ANS forth shit is still suck-ass 10:56:33 The problem is that we should (re)invent samples or smth that kind. 10:56:39 yes.. I know 10:56:47 I mean Snobol-like samples. 10:56:59 ..and gforth helps, but it STILL isn't right - anymore than the ans forth shit is "right" 10:58:07 Wah! Take all that "COMPARE-LONG-ADDRESS-COUNTER-STRINGS" shit off me! :))) 10:58:22 hmm? 10:58:25 --- join: kc5tja (~kc5tja@ip68-8-206-137.sd.sd.cox.net) joined #forth 10:58:46 I don't like naming like "FILE-OPEN" 10:59:03 ok, why? 10:59:21 It should be understandible from CONTEXT what should "OPEN" do. 10:59:31 ..I'm all for a modern, portable "forth", btw 10:59:51 no..... yer mixing namespace, voc and purpose 11:00:01 I use vocabulary switching for this. 11:00:06 ASau: What if you're both opening a window and a file? 11:00:17 no - awindow OR a file 11:00:29 vocs... namespaces.. wordlists.. 11:00:30 No, both. 11:00:38 VOCABULARY WINDOW ... VOCABULARY FILE FILE DEFINITIONS : OPEN ... ; 11:00:39 no. 11:01:01 there is no "both" there is CONTEXT - and a way to make it readable 11:01:02 (not trolling, really.) otoh, filesystems are best done without, so their interface words should be irritatingly long to marginalize their use. 11:01:13 no 11:01:26 words should be "words" - not hyphenated 11:01:33 PoppaVic: I'm talking about x=open("file.dat"); y=OpenWindow(xyz);. 11:01:45 A single program can open both a file AND a window in the same program. 11:02:13 " file.dat" FILE OPEN X ! XYZ WINDOW OPEN Y ! 11:02:24 kc5tja that ain't rpn in the least 11:02:33 Ah, I've forgotten: 11:02:34 yes 11:02:39 PoppaVic: What does that have to do with the core essence of the conversation? 11:02:42 VOCABULARY WINDOW IMMEDIATE 11:02:56 OR, the var sets the voc for the next word 11:03:30 kc5tja; sorry, since everything in forth is predicated on stack and words, your shit blows it. 11:03:54 My shit blows it, eh? 11:04:03 All in your face. 11:04:07 PERHAPS it makes sense to predicate that every voc have "op-overloading"? 11:04:20 sorry, kc5tja - not in your life 11:04:28 Heh -- it's doing it right now. 11:04:29 I use word "UNIT": 11:04:39 : UNIT VOCABULARY IMMEDIATE ; 11:04:58 bah 11:05:02 PoppaVic: "op overloading", as in each voc can have words named the same as in other vocs? 11:05:16 Or even : UNIT VOCABULARY IMMEDIATE LATEST PFA CFA EXECUTE DEFINITIONS ; :) 11:05:17 what on earth do you think vocabularies are? 11:05:20 XeF4: I was thinking of the " " and "=" and such 11:05:28 ..seps 11:06:07 So after "UNIT FILE" I immediately start definitions of words to deal files. 11:06:57 Yeah, I do similar - and it still "feels awkward", ASau 11:07:34 E.g.: (if you're nervous, get off screen!) 11:07:49 ..with my autofoo-shit, I will often switch between rpn and postfix.. but even that only aleviates the problems. 11:08:04 SYSTEM TERMINAL PARAMETERS MONOCHROME 25 RAWS 80 COLUMNS SET 11:08:11 hmm? 11:09:07 Just to define explicitly that next "SET" should "set parameters of system terminal". 11:09:13 yeah. 11:09:47 I call this "Agressive Vocabulary Switching". 11:09:49 Somewhere around here, I have a few notes on Thinking Forth.... They really help. But, you STILL need - on occasion - "parsing words" 11:11:01 Of course you cannot eliminate anything completely, though I've found AVS technique very useful. 11:11:08 that is... "2 3 +" is fine, but SOMETIMES shit like "variable foo" makes more sense than 'S" foo" (variable)' 11:11:48 with my autofoo stuff, this is of even more obvious importance.. 11:12:59 XeF: I wonder why you're only 4 but not 6? 11:13:51 Xenon hexafluolide is much more cool thing. ;) 11:14:45 I mean "substance", of course. 11:14:46 XeF6 is not so stable :-) 11:15:22 XeF2 and XePtF6 are *too* pedestrian, so I had to compromise 11:15:36 Heh. 11:15:57 ;) He is more stable. 11:16:48 Death is stable 11:17:25 PoppaVic seems to confuse cause and effect 11:17:43 Hey, I just broke a natural law! 11:17:56 My code worked the first time I tried it. :) 11:17:57 you have died, but you're still typing? 11:17:59 oh. 11:18:01 Not really 11:18:02 death is merely a state 11:20:52 --- join: I440r (~I440r@dialup-67.74.7.51.Dial1.Cincinnati.Level3.net) joined #forth 11:21:06 ASau: I like yer questions, though.. It could be fun resolving them. 11:23:34 I440r: I use "r>drop exit" to break out of a for/nxt look, right? 11:25:54 Provet I440r! 11:27:29 yea 11:27:38 r>drop exit will do it 11:27:48 hi asau :) 11:28:55 --- mode: ChanServ set +o I440r 11:32:18 i440r: r>drop is isforth's rdrop? 11:32:41 pretty silly to rewrite standards 11:32:41 Yes, it is obvious from its name 11:32:43 ive never seen rdrop. 11:32:51 every forth i ever used had r>drop heh 11:32:55 gforth, and pfe too iirc 11:33:05 I never use RDROP, I use R> DROP 11:33:10 yeah - and FIG has been ignored for decades. 11:33:34 You think so. 11:33:41 You're mistaken 11:33:43 I use rdrop... bleh. 11:34:19 Robert: me too - it's once simple & logical setp 11:34:21 step 11:34:46 I see no need to make this atomic operation. 11:34:47 My return stack is real. 11:35:02 That is: >R ;S is real branching. 11:35:19 I prefer atomicity for something that silly. 11:35:32 my return stack is real, but atomicity is faster in a nonoptimizing forth 11:35:43 Also less typing involved. 11:35:49 true 11:36:22 if I want '>r' - I use it.. if I want to discard what I sent to 'r', 'rdrop' is simple & clean. 11:36:42 I use "R> DROP" so often, that I see no need to name it. 11:36:43 I440r: Why is the new IsForth's input so much slower? 11:36:56 what do you mean ? 11:37:04 how is it slower ? 11:37:13 I440r: When I press "enter", I notice a small delay. 11:37:19 I440r: Never done that with other versions 11:37:20 ASau: I do - at the least, it's two nesting-calls over one. 11:37:22 ASau: That's precisely why I have a name for it. It's used so often that having it as a separate entity is easier to type, faster to execute, and gives less room for errors. 11:37:22 erm. there shouldnt be 11:37:43 ive not done anything with query/expect/refill etc 11:37:52 Hmm, strange 11:38:06 try removing vocabularies from the search order 11:38:25 to remove the foo vocabulary you would say 11:38:27 foo previous 11:38:39 just dont say "only previous" 11:38:39 heh 11:38:53 really? sounds freaky ;-) 11:39:01 so foo automagically removes old instances of foo from the search order? 11:39:03 kc5tja: If I use >R I rather consume value after R> 11:39:08 no 11:39:10 "pervious" should do the job. 11:39:17 prev.. 11:39:20 if "foo" is a vocabulary 11:39:23 Nah, it's not that much of a problem. 11:39:28 to add it to context you name it. 11:39:36 if its already there it gets rotated out to the top of context 11:39:42 Anyway... any vim expert in here? :) 11:39:47 the word previous removed the top item from teh context stack 11:39:51 I know vi 11:40:00 so forth previous removes forth from context 11:40:00 * kc5tja uses vim; not sure I'm an "expert", but... 11:40:25 I440r: I know what previous does, I'm just not used to existing copies being rotated out of the search order 11:40:28 i_ single should become: i_ single mtv- ' mtv- word" " 11:40:32 How do I do that? 11:40:34 I don't think there is "expert" in such complex editor 11:40:55 xef4 my vocabulary wordset is in my opinion alot saner than the usual 11:40:57 Where can be any word. 11:41:05 3ebimtv- 11:41:06 for instance, i dont need a "prior-check" in my find 11:41:14 only forth also forth also forth also forth 11:41:21 there is NO also in isforth 11:41:22 I want to do that replacement for a number of lines. 11:41:24 11:41:26 :) 11:41:35 so if i say only forth compiler debug i get a search order of 11:41:41 forth compiler debug <-- top 11:41:45 if i then say forth i get 11:41:51 compiler debug forth <-- top 11:42:35 the only reason for the word "also" is because some MORON decided that a vocabulary should destroy the top item of teh context stack when it adds itself 11:42:37 yeah, I wrote a 'vocs' wrapper, too 11:42:41 it doesnt in isforth 11:42:43 :s/[a-zA-Z]+ +single +[a-zA-Z]+/\1\2\3\4mtv-\5/ 11:42:58 Each sub-RE should be in \( \) 11:43:08 What do you mean? 11:43:12 Use s///g 11:43:15 that MORON wrote the whole idea, and it won't properly without using his ideas - if you obviate, then you need new words ;-) 11:43:32 ? 11:43:37 say again in english ? 11:43:58 ASau: Actually, those words could contain other characters, like " , . etc. 11:44:18 I want to blame Baden, but it wasn't - he chose words that fit and orders that read well. Obviating that, you need a differnt set of 'words'. 11:44:31 Robert: Use [^ \t\n]+ instead. 11:44:35 Robert: Then use ..[a-zA-Z\.\"\,].. instead of the regular character classes. 11:44:44 Or, yeah, that'll work too. 11:45:11 looks like bash script :) hehe 11:45:27 * ASau knows that it is simpler to use word delimiters, than letters etc. :) 11:45:36 Hm, OK.. but :s/[a-zA-Z\.\"\,]+ +single +[a-zA-Z\.\"\,]+/\1\2\3\4mtv-\5/ would do it? 11:45:40 I440r: man sed :) 11:45:47 lol 11:46:17 Robert: use :start_str,end_str s///g 11:46:28 reminds me of the user friendly joke of the cavemen saying ug, duh, grunt and the 3 geeks saying awk, sed, grep 11:46:29 lol 11:46:47 ASau: What's s///g ? 11:46:48 No need for awk 11:46:58 * kc5tja needs to write an OS where ug, duh, and grunt are the most often used text processing words... 11:46:58 no need for perl, either ;-> 11:47:03 Robert: man sed, man regexp 11:47:05 :) 11:47:09 ASau: Awww... 11:47:12 OK :) 11:47:18 no need for any of it if you have assembler and forth 11:47:23 Heh. 11:47:25 4haha 11:47:42 Well, you don't know about TECO :) 11:47:46 c. a huge step backwards 11:48:12 I use DEC TECO rather often, when I have to edit through Telnet session. 11:48:23 yeah - keep saying that to yerself, I440r ;-) 11:49:11 PoppaVic: There is no need for perl at all. 11:49:25 In a way it's true though. There have been other languages introduced since C that can produce just as good a code output, but which gives significantly fewer opportunities for programmer errors than C. 11:49:30 Caeterum censeo perl ... 11:49:49 ASau: sure there is - for what it was originally: report languange/generation - other than that - it's crap. 11:50:01 PV: man awk 11:50:10 used it.. Knew of it. 11:50:17 kc5tja: which? 11:50:20 man find 11:50:26 PoppaVic: Oberon comes right to mind. 11:50:58 kc: Ada, Modula, Oberon -- late "algoloids". 11:51:11 Algol-68 is also very impressive. 11:51:12 ASau: C is also an Algol derivative. 11:51:19 But more distant. 11:51:26 hehehaha 11:51:27 Too distant. 11:51:38 OK, that said it all. 11:52:08 C is more PL-ish, i.e. FORTRANish. 11:52:29 I disagree. 11:52:46 ..could be Is there a modula/ada/oberon Kernel I don't know of? 11:52:52 I find the similarities between C and other Algol-like languages too similar to be canny. 11:53:20 Refusal of type checking was a bad step for production quality PL. 11:53:31 PoppaVic: http://www.oberon.ethz.ch/ 11:53:42 Been there - so? 11:53:56 You asked for a kernel, I provided one. 11:54:09 whoa.. 11:54:24 Cool, it's like totally *nix/*bsd? tits! 11:54:36 So all OSes ahve to be like Uix? 11:54:36 * PoppaVic reinstalls 11:54:37 unix? 11:54:47 Last I checked, Windows was *nothing* like Unix. 11:54:56 oh.. wait... Yeah... 11:55:08 Right, but dozers love it - so? 11:55:19 So? 11:55:20 You tell me. 11:55:24 EMacs is not UNIX at all. 11:55:27 ;) 11:56:01 yeah, Emacs is also written in oberon ;-) 11:56:09 ..and it's an OS itself ;-) 11:56:15 Emacs is written in Lisp. 11:56:28 In ELisp 11:56:29 But, that's non-seq... As long as y'all have fun, eh? ;-) 11:56:42 brb, walking the doggies 11:56:55 I am to go. 11:56:56 --- quit: I440r () 11:57:11 Happy holiday! 11:58:01 Vihri vrazhdebnye vejut nad nami... :) 11:58:08 --- quit: ASau ("Toffee IRC client for DOS v1.0/b535") 12:02:54 http://www.nmia.com/~vrbass/pop-pop/ -- for those who have kids and would like a fun project. 12:03:33 I built one of these engines, and it's *sweet*. It's not going to power your car (at least, not without severely changing the design), but for a small toy boat or very simple water turbine application, these things rock. 12:04:31 I haven't gotten mine to stay running for more than 5 minutes though. :( Not exactly sure why; I think it's overheating. But once cooled down, you can empty it and refill it, and it'll run. 12:04:51 Apparently, professionally made units back in the 20s were able to run indefinitely. 12:12:00 --- quit: PoppaVic ("has had enough for awhile...") 12:20:53 --- join: ramnull (~nicad@12-241-145-39.client.attbi.com) joined #forth 12:26:04 --- join: I440r (~I440r@dialup-63.210.231.248.Dial1.Cincinnati1.Level3.net) joined #forth 12:29:56 Hola I440r. 12:30:23 :) 12:30:46 Hmm... I'll be right back. I need to get some hardware at the local home depot. 12:30:55 --- nick: kc5tja -> kc-store 12:31:13 I440r: You know, all this Forthing has made one thing real clear to me. Specifically, how bad I really suck at coding. 12:31:37 lol - youll get it in the end 12:32:00 its always like that to begin with :) 12:32:00 dont give up :) 12:32:08 I440r: Heh. Cant get a proggy to run for more than a few minutes before it takes a dump. Heh. 12:32:33 Only to discover that the data has been mangled. 12:32:47 --- quit: I440r (Read error: 104 (Connection reset by peer)) 12:32:52 --- join: I440r (~I440r@dialup-63.210.231.248.Dial1.Cincinnati1.Level3.net) joined #forth 12:33:16 I440r: IRC is kicking your ass, I'm telling yah. 12:33:38 :/ 12:33:59 Anyways, I've got all kinda of theory, but not enough low level experience. 12:35:26 For some practice, I'm taking parts of the Forth scientific library and modding them to run on IsForth. 12:35:51 cool :) 12:36:51 To get the experience, I'm taking some languages (Forth being the primary one) that are made run on bare wires and hacking my brains out. 12:38:37 thats how to do it :) 12:38:47 I440r: The one thing I'm loving about it though are the tiny executables I'm getting. 12:39:09 I440r: Using Forth, Assembler, and Oberon. 12:39:23 :) 12:39:39 I440r: So what have you been up to? 12:40:38 not much, im trying to figure out how to reliavly recieve alt/cntrl etc keypresses in all terminals 12:40:56 I440r: Using kbd? 12:41:01 i think the only and i mean the ONLY way to do it is to switch into raw keyboard mode 12:41:10 a big nono 12:41:20 ? 12:41:28 yesyes 12:41:29 which is irritating 12:41:43 veryveryvery irritating for everyone not using us qwerty 12:42:09 I440r: Then you gotta think about all the various deviations. Devorak, Chorded Systems, etc... 12:42:14 there might be another way to do it, that is to totally rewrite ALL the terminfo files for ALL terminals i want to support to include ALL escape/key sequences 12:42:29 ramnull no i dont :) 12:42:44 * XeF4 doesn't use us qwerty, fwiw 12:43:07 Personally I think it's retarded the way Display and Input at hardcoded at the Term level. 12:43:37 me 2 12:44:35 Wonder if anyone has written seperate device drivers for each. 12:45:44 Perhaps a Peripheral Input driver then a Termio driver. 12:46:47 i44or: why do you need alt/ctrl keypresses? 12:47:10 for editor/debugger 12:47:23 function keys are easy, terminfo has key sequences for them 12:47:25 XeF4: I can think of about a dozen reasons for it. 12:47:37 butbutbut alt-alphanumeric come chunked in from stdio 12:47:39 but an editor is going to want cntrl + key for certain operations 12:47:47 and one can live without instant menu highlighting 12:47:58 chunked ? 12:48:07 yes as escape sequences 12:48:12 and every terminal does it different 12:48:16 as escape sequences, yes 12:48:25 esc+char is the standard afaik 12:48:38 just don't use alt-[ and all is well 12:48:47 thats not a problem, i already have to code to handle key sequence input 12:49:00 I440r: Perhaps an exec: table for the incoming HEX codes? 12:49:07 i WANT alt/cntrl etc 12:49:22 i fucking REFUSE to deal with fucked up crap like vi uses to get arround teh problem 12:49:30 escape colong crap 12:49:34 FUCK THAT 12:49:38 so do I actually, but when coding for *nix, I live without them because *nix is crap 12:50:03 any editor that use more that TWO keypresses to do ANY operation is a pile of shit 12:50:08 period 12:50:11 alt + key 12:50:14 but since alt-foo come as escape sequences in just about every sane terminal, there is no *big* problem 12:50:16 cntrl + key 12:50:27 XeF4: Ever seen Bluebottle OS? http://bluebottle.ethz.ch/ 12:50:28 anything more is bad design 12:50:40 XeF4 there is. 12:50:41 ctrl-alpha and alt-alphanum are standardized enough 12:50:47 and what is that? 12:50:55 run xterm and examine what keys are returned for alt q 12:51:04 do the same in eterm, rxvt, xvt etc 12:51:10 all different 12:51:26 and terminfo doesnt give ANY alt key sequences and only SOME of the shifted key sequences 12:51:36 I440r: Hrmmm...perhaps a kernel patch is in order? 12:51:44 terminfo is braindead. 12:51:51 then say that any term that doesn't follow vt102 escape sequences is a pile of crap and there is no problem. 12:51:59 people who create terminfo files are braindead 12:52:25 and those who use a crap terminal can use esc-foo instead of alt-foo 12:52:26 any terminfo file that does not contain ALL escape sequences and all key sequences that are described in man 5 terminfo is fucked up 12:52:40 if the fucking terminal supports it it should fucking describe it in its terminfo 12:52:40 unless their terminal is really profoundly bad, in which case the problem is on their side 12:52:59 no. alt is a meta key 12:53:07 press and hold alt. press second key 12:53:13 not press and release alt, press second key 12:53:31 also you have control 12:53:36 press and hold alt, press second key and press and release esc, press second key should always return the same sequence 12:53:49 i want to be able to distinguish between f1, shift f1, alt f1, control f1 12:53:56 and if they don't the user can press and release esc and press the second key 12:54:47 no. 12:54:50 then you're in trouble because function keys are not treated the same by every term 12:54:51 let me restate that. 12:54:55 not "no" but 12:54:59 "FUCK no" 12:55:03 why not? 12:55:33 because its teh most fucked up non intuative user interface ive ever seen 12:55:49 but it's common practice on *nix 12:56:19 yes. that doesnt make it "not fucked up" 12:56:36 it is seriously fucked up in a big way and im NOT going to deal with it 12:56:54 ill switch into raw keyboard mode or something 12:57:16 that way ill KNOW not only when a key is presssed but also when it is released 12:57:56 but if alt works on your system as it should, then you don't have to deal with it, someone else has to deal with it. 12:58:21 no. I have to deal with it 12:58:27 like i said 12:58:45 i want to know when a key is pressed, when alt + key and when control + key 12:58:59 also, knowing with they are released is a big plus 12:59:19 using escape + command user interface is NEVRER going to be 12:59:36 FUCK that. and fuck whoever designed it and the horse he rode in on 12:59:53 you can quote me on that 13:03:39 * XeF4 ponders.. "ja painukoon vittuun sen suunnittelija hevosineen".. that quote sounds better in Finnish =) 13:03:43 (sorry.) 13:03:52 lol 13:03:55 what was that ? 13:04:02 oh :) 13:04:55 you better not know >:) 13:08:20 roughly "and may the designer of that sink into some cunt along with his horse" 13:09:27 lol 13:12:29 gotta go :/ 13:12:33 --- quit: I440r () 13:17:13 --- quit: njd (Read error: 54 (Connection reset by peer)) 13:28:36 --- nick: kc-store -> kc5tja 13:37:18 --- join: gilbertdeb (~gilbert@fl-nked-ubr2-c3a-74.dad.adelphia.net) joined #forth 13:45:30 --- quit: ramnull ("This isn't Happy Hour!") 14:07:22 --- join: karingo (karingo@60.portland-01rh16rt.or.dial-access.att.net) joined #forth 14:22:42 Hmm... 14:23:17 Solar power is quite definitely capable of providing enough heat energy to power a pop-pop engine. But now I need to make the flash boiler correctly. 14:24:41 --- join: tcn (~tcn@tc2-login2.megatrondata.com) joined #forth 14:26:19 kc5tja are you dyi people? 14:26:24 diy 14:26:37 I don't exactly understand the question. 14:26:43 do-it-yourself 14:26:53 For small to medium-sized projects, yes. 14:27:16 Why do you ask? 14:27:52 i know one person who has done about all the services to work home, own water system, food plants and such :) 14:28:09 * kc5tja nods 14:28:41 The pop-pop engine isn't going to provide power for my home; not until I figure a way to get it to run continuously. 14:28:45 These are really fickle engines. 14:28:57 Especially since it has no moving parts; I can't tell what's wrong with it when something does go wrong. 14:29:01 what powers it? 14:29:04 Heat 14:29:13 stirling cycle? 14:29:16 A pop-pop engine is basically an upside-down manometer tube. 14:29:35 The tube is filled with water, and the open-end is submerged. Thus, there is no air in the tube. 14:29:47 Heat causes a bubble of steam to form at the closed-end, thus thrusting water out of the tube. 14:30:02 Eventually the steam reaches a cold part fo the tube, causing it to condense. This creates a vacuum. 14:30:14 The vacuum then sucks up more water into the tube. 14:30:28 However, while the steam was expanding, more heat was added to the boiler; hence, it's well above boiling temperature. 14:30:39 So when the water reaches the boiler, it *flashes* into steam, thus causing the cycle to repeat. 14:30:55 More like Rankine cycle, actually. 14:31:20 It's more like a "water pulse jet" than most other rankine cycle engines though. 14:31:26 oh.. heh.. 14:31:41 so if you wanted to do something with it, you'd need to add moving parts :) 14:31:48 I can get the engine to go through several cycles. But then it stops. I'm not sure why it stops. 14:32:02 A turbine is the most natural choice, considering the engine's output is a jet. 14:32:18 kc5tja you might want to talk to publunch on #freeciv - he's doing a lot himself 14:32:45 mur: Thanks, but I suspect he'll not know anything about what I'm trying to do. Pop-pop engines are not exactly "common" anymore. 14:32:57 They used to be huge in the 1910-1930 era, though. 14:33:01 * kc5tja gets URL... 14:33:20 http://www.nmia.com/~vrbass/pop-pop/ 14:33:58 I'm kind of baffled at why I can't make one that runs for a good length of time. My first pop pop engine ran for 10 minutes straight before stalling. Since then, I've never been able to recreate that record. 14:34:27 what dia. & length of tube are you using? 14:35:13 1/4" outside diameter. The length of tubing is long enough to reach from the reservoir to the "flame" (be it candle or solar collector). 14:35:40 oh i see... for a boat it maks perfect sense :) 14:35:59 tcn: The concept can be generalized to larger engines, but it still requires lots and lots of little tubes. 14:36:06 Hence, it might be overly expensive to scale up. 14:36:36 The reason for the small tubes is much beyond 1/4", the water/steam interface develops anomalies that enables the steam to dissolve into the water -- we dont' want that. :) 14:36:48 We want a nice, clean, uniform liquid piston. 14:36:51 right. hmm. what material? 14:36:55 Copper 14:37:04 aha 14:37:37 It would probably work a lot better if I had a heat insulative material for the tubing between the "boiler" and the "cooler." Still, the toys ran virtually forever, and mine don't, and the only difference is tube diameter. 14:37:40 But I'm still playing. 14:37:57 Even my 10-minute engine used 1/4" tubing, so I know it's possible to get it working with 1/4" tubing. 14:38:13 But I wouldn't go much above that -- not without a *LOT* more heat input. 14:38:18 hmm.. maybe you could immerse the cold end further to cool it 14:39:01 That's certainly a thought. I haven't tried that yet, though, because 1/4" tubing is hard to bend into tight loops while still allowing a free-flowing passage for the water to flow through. 14:39:31 But when these engines start to go, they really go. :) I had a hard time holding my 10-minute engine still when I had that running. :) 14:39:45 heh.. cool :) 14:39:50 I suspect I was getting, maybe, about 3W useful power out of the thing from a candle. 14:39:58 how fast did it run? 14:40:00 Not bad for a 1/4" pipe. :D 14:40:23 It varied, probably because of ambient temperature. But between 3 to 8 cycles per second. 14:40:52 Since I don't have a boat to put these engines in, I don't know how fast it would accelerate the boat. 14:43:14 But it's also known that a coil-type boiler isn't as efficient as a diaphram type. If I can find a small metal box I can somehow seal the tubing into, then I can just heat the boiler with a larger surface area, and that'll probably give better results. 14:43:19 make a paper boat :) just watch out for the candle.. 14:43:25 (assuming it doesn't blow the boiler apart. :) ) 14:43:39 I can do that. However, balancing it becomes a major issue. 14:43:44 * kc5tja tried. :D 14:43:50 The candle kept falling into the tub. 14:43:57 haha 14:44:24 Besides, it works fine stationary as long as the open ends of the tubes are submerged and there's no air in the boiler. 14:45:02 hmm.. they're making gas boilers 95-97% efficient these days.. 14:45:40 they DO use coils 14:45:44 --- quit: karingo () 14:46:18 actually there's a company called Fulton that makes pulse-combustion boilers :) 14:47:13 The coil-type flash boilers do work very well. However, note that the water doesn't reciprocate through them -- instead, it's continuous flow. Water in at the bottom, steam out at the top. 14:47:30 These engines are reciprocating. Hence, something more like a coffee percolator would work better. 14:47:32 oh, right.. less impulse 14:47:54 Well, not so much less impulse, but definitely optimized more for other applications (e.g., steam turbines). 14:50:33 hey.. what you need is a tin can (tuna fish size) full of something you can drain out through a small hole.. 14:51:06 I have a tuna can. But I lack a torch to seal the top with. 14:51:23 Plus it's a bit ... big for this application. :) 14:51:30 I only have 60W of solar radiation to play with. :) 14:51:34 then I guess you couldn't braze the tube to the hole either 14:51:41 And about a 100W to 200W for the candle. 14:51:48 Nope. 14:52:00 I don't know anything about weilding a torch, except to always point it away from you. :) 14:52:02 unless you can use a canble :) 14:52:17 and you wouldn't wanna use an arc welder.. 14:52:25 you'd vaporize it.. heh 14:52:49 Yeah. :) 14:53:29 oh, and it's gotta be small enough to heat up quick 14:53:43 That's why the tuna can is too big. 14:54:00 Now if I had something like 50 tubes going to the thing ... ;) 14:54:05 i think someone gave me a gadget like that when I ws a kid.. it had a flat hollow disc, black on top, and a parabolic reflector 14:54:05 But that'll be a project for later. 14:55:47 welp, i was gonna port Retro to Linux tonight :) 14:56:03 retro? 14:56:35 retroforth.. the one I originally started.. 14:57:05 i need a subroutine threaded Forth to mess around with C/Forth linkage 15:02:06 you've messed with that, right kc5tja/ 15:03:59 Yes, I have. 15:04:04 Fs/Forth uses it. 15:05:06 i just figured it's the only sane way to call Forth from C 15:05:25 Yes, this is why I chose subroutine threading for my Forth. 15:05:51 * kc5tja really wants to do serious Forth development under Linux, but I need direct interfacing capability to the existing C libraries. 15:06:11 Ditto for under Windows. 15:06:51 right. so have you got routines for loading dynamic libraries? 15:09:47 I don't even have the command-line interpretter done yet. 15:09:57 * kc5tja has been overloaded and burnt out with other projects. 15:11:22 oh i see 15:11:49 well, we'll get something working, between us all :) 15:13:37 hehe 15:13:53 OK, trying my next experiment...bbiab. 15:24:18 --- quit: gilbertdeb ("Monk has left the building") 15:43:04 later. 15:43:05 --- quit: tcn ("TinyIRC 1.1") 15:45:41 Well, I got it to pulse consistently, but extremely slowly. So slowly, in fact, that you can actually see the water level rising and falling as the steam bubble expands and contracts. :) 15:45:44 That's progress. 15:46:03 That tells me I (a) have not enough heat input to the system, and (b) was constricting fluid flow before. 15:46:21 I think I need smaller-diameter tubing if I'm going to use a candle/solar for heat input. 16:36:06 --- quit: mur ("zzZZZzzzZZZ") 17:17:37 --- join: I440r (~I440r@dialup-64.154.96.109.Dial1.Cincinnati1.Level3.net) joined #forth 17:19:29 Hi I440r 17:20:12 Is there any way to include a '"' withing a ," bleh" string? 17:20:24 Except using '"' c, 17:20:25 not realy :/ 17:20:34 Oh.. OK. 17:20:37 the quote would delimit the string 17:20:46 Yeah. 17:21:06 you could use ... 17:21:09 n1 c, ,' xyzzy"' 17:21:28 ,' is an uncounted string and is delimited on a single quote so you can embed double qoutes 17:21:33 Heh. 17:21:36 Ugly hack :P 17:21:40 but YOU have to add teh count 17:21:54 Can't you just implement escape sequences? Would be useful with \n too 17:23:49 * kc5tja hasn't done so yet, but will have S( to encode strings. It's delimited by a ), and yes it does count parentheses, so S( (this is cool!)) is a proper string. :). 17:24:08 I got the idea from Postscript and PDF actually. :) 17:24:21 fpc does that, i was thinking of doing it eventually, 17:24:29 you could embed a \$22 then :) 17:24:39 ," xyzzy\$22abcde" 17:24:40 * kc5tja was even thinking of flat out replacing S" with it, because I see no further need for S". 17:24:58 isforth has no s" 17:25:01 i wont add it either 17:45:11 --- join: I440r_ (~I440r@dialup-65.58.210.205.Dial1.Cincinnati1.Level3.net) joined #forth 17:45:24 grr 17:46:35 That's OK -- you didn't miss much. :D 17:46:51 lol 17:46:59 well why not ? 17:47:06 you bunch of lazy no good idlers :) 17:47:10 Because nothing happened. :) 17:47:14 erm... just like me :) 17:47:50 * kc5tja is too busy playing with his pop-pop engines, trying to get them to go. :) 17:48:02 They kinda sorta wanna go, but, well, that's not good enough for me. :D 17:48:02 pop-pop ? 17:48:38 Take a 1/4" copper tube, and bend it in the middle, so you have a loop. Fill it with water, submerse the open ends, and put a flame underneat the loop. 17:48:48 In about 30 seconds to a minute, it'll start percolating like a coffee machine. 17:48:58 If you're LUCKY, it'll even have thrust. 17:48:58 :) 17:49:16 --- quit: I440r_ (Read error: 54 (Connection reset by peer)) 17:49:17 http://www.nmia.com/~vrbass/pop-pop/ 17:49:22 gahh 17:49:53 --- join: I440r_ (~I440r@dialup-65.58.210.205.Dial1.Cincinnati1.Level3.net) joined #forth 17:49:57 http://www.nmia.com/~vrbass/pop-pop/ 17:50:03 (before you disappear again) 17:50:06 grr this box is realy pissing me off 17:50:08 lol 17:52:05 looks intersting 17:52:23 i want to make a tesla turbine jet engine :) 17:52:23 * kc5tja nods 17:52:34 That's one of my other goals. 17:52:47 i have a lathe i can make it with and the materials too 17:52:47 But a more immediate goal is to power a water Tesla turbine with one of these pop-pop engines. 17:53:23 how come nobody actually uses the tesla turbine for pumping water etc ? 17:53:25 or do they ? 17:53:43 There's a lot of established industry. 17:53:47 i know the pump on my swimming pool wasnt one. nor were any of the others we looked at 17:53:58 Economy of scale is such that traditional pumps are cheaper to make than Tesla turbines. 17:54:08 meaning the industry has its head up its ass ? 17:54:15 oh 17:54:19 However, you'll occasionally find disc pumps in various applications like differentials and such. 17:54:34 No ... I mean it's more economical to make traditional pumps than disc pumps. 17:54:44 They're also lighter weight, and can start/stop faster. 17:55:23 but arent as efficient and take more power to run :/ 17:55:25 for example you'll never find Tesla turbines powering airplanes. They're just too heavy. 17:55:34 No, actually, that's not true. 17:55:37 what about in a car ? 17:55:46 for fuel pump or water pump 17:55:57 In a car, it's possible, but again, unlikely. The high mass means high moment of inertia, which is bad for handling. 17:55:59 or for the engine itself :) 17:56:15 Oh, for fuel pump or water pump, it'd work. 17:56:19 I thought you were talking about the engine. 17:56:24 that too :) 17:56:34 but for teh water pump or fuel pump 17:56:39 The engine would be light weight, but the high moment of inertia would make handling difficult for it. 17:56:48 a very ver small tesla turbine would work well as a fuel pump :) 17:56:54 * kc5tja nods 17:57:12 Actually, they don't pump as well as a positive displacement type pump. 17:57:16 No turbine-based pump does. 17:57:32 i thunked the tesla turbine pump was very efficient 17:57:38 lile 98% or something 17:57:55 Well, that's mechanical efficiency. It's still only 15 to 25% thermodynamically efficient. 17:58:13 You'd need to have three stages of turbines before you'd approach 48% efficiency. 17:58:50 hrm 17:59:00 Basically, what it boils down to is this: 17:59:02 so a tesla turbine wouldnt work well as a jet engine ? 17:59:09 Tesla turbines are damn easy to build and experiment with. 17:59:21 but performance-wise, they're comparable to every other type of turbine out there. 17:59:36 No, it'd absolutely SUCK as a jet engine, in fact. :) 17:59:41 i.e. the tesla turbine sucks in the air AND the fuel and that gets sent to a combustion chanber where it goes bang etc... 17:59:50 The exhaust would be way too wide to get a useful jet stream with it. 18:00:14 Oh, you're talking about a gas turbine engine. 18:00:19 YES 18:00:21 This is different from a "jet" engine per se. 18:00:32 A jet engine is a gas turbine whose primary output is thrust, not torque. :) 18:00:36 That's why I was confused. 18:00:46 A Tesla turbine MIGHT be good in this circumstance. 18:00:46 thats what i meant 18:00:57 i dont mean as torque. i mean as thrust 18:01:02 People who've tried it reported lack-luster results, however. I don't know much more than that. 18:01:09 aha 18:01:12 uhh 18:01:13 wait. 18:01:18 Stop. 18:01:20 heh 18:01:31 You are talking about a jet engine then. TTs woudl suck eggs as jets. 18:01:45 They ahve potential to work great as "normal" gas turbine engines. 18:02:03 But as jets, they'd really not do well at all. 18:02:10 Their physical geometry just isn't up to the task. 18:02:34 how aout a tesla turbine feeding air/fuel mixture into another turbine (with blades) engine 18:02:46 --- quit: I440r (No route to host) 18:03:00 It'd probably not do too well in that application. 18:03:02 im not sure i could make one of those tho :) 18:03:12 However, the reverse, where a bladed compressor feeds the Tesla turbine, would probably rock. 18:03:23 ah ? :) 18:03:43 The Tesla pump's rotor housing has a lot of opportunity for blow-by losses. 18:03:54 The Tesla turbine's rotor housing is much tighter in tolerances. 18:03:59 It has less opportunity for blow-by. 18:04:19 More gas would get converted to torque than in the pump. 18:04:29 I'm just hypothesizing. 18:04:42 But research suggests that Tesla turbines are more efficient than Tesla pumps. 18:04:57 (at least for pumping air) 18:05:07 so whats teh difference between a tesla turbine and a tesla pump ? 18:05:29 The direction of the gas flow, and the rotor housing. 18:05:43 The pump has an involute rotor housing, while the turbine has a very cramped, close-quarters rotor housing. 18:05:55 you mean if you feed air into the axle of a tesla pump it causes the disks to rotate ? 18:06:04 No. 18:06:26 pity heh 18:07:23 I mean that if you spin the shaft of a Tesla pump to 4000RPM, you'll get a moderately pressurized stream of air moving at a particular velocity. 18:07:34 right 18:07:47 That same velocity of air with a Tesla turbine will make it spin at a rate higher than 4000RPM, or at 4000RPM with greater torque. 18:07:53 And no, there is no perpetual motion going on here. 18:08:10 ok... erm. im lost 18:08:29 The reason is back-pressure -- any amount of backpressure on the pump will cause it to back up through the inlet. 18:08:42 stop 18:08:52 umm..ok 18:09:20 Well, I need to get to aikido anyway. 18:09:23 tesla pump with a motor attached. motor spins disks and axle and air/water gets pumped 18:09:32 so. explain a tesla turbine 18:09:32 * kc5tja nods 18:10:07 Look it up on the net. The primary difference between the two is in the rotor housing. 18:10:22 The rotor housing of a pump is optimized to create pressure. 18:10:27 The turbine is optimized to create torque. 18:10:29 I have to go. 18:10:35 Aikido time. 18:10:39 ive searcned for tesla turbine and tesla pump. i didnt know ethere was a difference, all ive found is the tesla pump :) 18:10:42 ok. have phun :) 18:10:52 * kc5tja sighs 18:10:54 Hold...URLs coming. 18:11:02 k :) 18:11:20 http://www.geocities.com/vair65_2000/tesla/ 18:11:25 The top three images is a tesla turbine 18:11:30 The next row is a tesla pump 18:12:02 Note how close the tolerances are in the turbine, while the pump has nothing but open space all around it. 18:12:50 Anyway, adieu. Be back around 10PM or so. 18:12:59 --- quit: kc5tja ("THX QSO ES 73 DE KC5TJA/6 CL ES QRT AR SK") 18:34:24 --- quit: I440r_ () 20:21:26 --- quit: onetom (sterling.freenode.net irc.freenode.net) 20:22:24 --- join: onetom (~tom@novtan.bio.u-szeged.hu) joined #forth 21:16:33 --- join: a7r_ (~a7r@206.72.82.135) joined #forth 21:16:34 yoh 22:00:48 --- join: kc5tja (~kc5tja@ip68-8-206-137.sd.sd.cox.net) joined #forth 22:01:32 kc5tja: hey 22:01:46 re :) 22:01:52 * kc5tja is too tired to type right now. 22:02:00 * kc5tja got thoroughly worked at aikido tonight. :D 22:02:36 * a7r_ is reading Knuth 22:52:29 --- quit: a7r_ (Read error: 54 (Connection reset by peer)) 23:19:03 --- quit: kc5tja ("[x]chat") 23:32:16 --- join: a7r_ (~a7r@206.72.82.135) joined #forth 23:50:15 --- join: ramnull (~nicad@12-241-145-39.client.attbi.com) joined #forth 23:59:59 --- log: ended forth/03.04.30