00:00:00 --- log: started forth/19.03.22 01:08:36 --- join: xek_ (~xek@apn-31-0-23-83.dynamic.gprs.plus.pl) joined #forth 01:36:05 --- quit: jedb (Ping timeout: 255 seconds) 01:38:00 --- join: jedb (~jedb@116.251.60.75) joined #forth 01:57:25 --- join: jedb_ (~jedb@103.254.153.113) joined #forth 02:01:14 --- quit: jedb (Ping timeout: 268 seconds) 02:03:32 --- quit: ashirase (Ping timeout: 255 seconds) 02:08:31 --- join: ashirase (~ashirase@modemcable098.166-22-96.mc.videotron.ca) joined #forth 02:12:46 --- nick: jedb_ -> jedb 02:33:37 --- join: dddddd (~dddddd@unaffiliated/dddddd) joined #forth 04:01:04 --- quit: jhei (Ping timeout: 252 seconds) 04:03:43 --- join: jhei (sid81469@gateway/web/irccloud.com/x-rubtxllbrjqdtcbc) joined #forth 04:07:36 hi all 04:09:31 hi the_cuckoo 04:09:49 hey - how goes it? 04:10:59 pretty good 04:11:09 the discussion about termios the other day reminded me that i had to rewrite my use of it :) - think it works pretty well now 04:11:43 awkward stuff - so easy to get wrong 04:14:25 Hi guys 04:14:44 i see you settled for VMIN of 1 - i went for 0 in the end - but it took me a while to stop it echo-ing the character 04:14:49 hi rdrop-exit 04:15:03 Hi the_cuckoo 04:15:47 hi rdrop-exit 04:15:53 Hi crc 04:16:07 the_cuckoo: i used termios for key? and key .. it's a bit tricky 04:16:28 I set VMIN and VTIME to 0 04:17:06 yeah - that's what i have too 04:17:59 i set VMIN=0 for key? and VMIN=1 for key 04:18:08 i.e. polling read 04:18:41 https://gitlab.com/lilo_booter/rpany/blob/master/include/rpany/vocab/io.hpp <- my current attempt (and yeah, i know it'll draw criticism for having statics in a header :) - but in this case, it's fine :)) 04:19:36 i can move them out, but it won't make any difference - that file is only ever included once in any executable (along with everything in the vocab dir) 04:19:44 the_cuckoo: oof c++ 04:19:54 yeah :) 04:20:02 not popular around here :) 04:22:23 Keep in mind the POSIX O_NONBLOCK gotcha I posted the other day 04:22:28 i did it a bit different 04:22:58 rdrop-exit: which one was that? 04:23:04 /*** N.B cf. IEEE Std 1003.1-2017 - 11.1.7 Non-Canonical Mode Input Processing: 04:23:04 [...] POSIX.1-2017 does not specify whether the setting of O_NONBLOCK takes 04:23:04 precedence over MIN or TIME settings. Therefore, if O_NONBLOCK is set, read() 04:23:04 may return immediately, regardless of the setting of MIN or TIME. Also, if no 04:23:04 data is available, read() may either return 0, or return -1 with errno set to 04:23:06 [EAGAIN]. ***/ 04:23:31 gotcha 04:23:32 the_cuckoo: https://termbin.com/q4r8 ignore the singal stuff 04:23:52 signal 04:24:24 it's basically a 1 byte FIFO between key? and key 04:24:51 yeah - vmin of 1 - it blocks unless you're doing the nonblock thing which rdrop-exit is talking about 04:25:16 i switched between VMIN=0 and VMIN=1 04:25:21 I don't poll the keyboard; I prefer to just have reads wait for the keypress and return it immediately 04:25:46 my key? doesn't block, but key does 04:26:22 and i think you should consider checking if stdin is a tty too (to allow accepting stdin from files/pipes) 04:26:34 * crc hasn't really touched the termios code in years 04:26:49 yeah - should be one of those fire and forget things 04:27:33 hmm i never tried redirecting it from a file 04:27:59 I don't use redirection since my Forth is UI is full screen 04:28:11 the termios stuff is only enabled if retro is started with `-c`, by default it leaves things alone 04:28:18 * my UI is full screen 04:28:19 KipIngram ran into an issue with that the other day - he resolved with an isatty( fileno( stdin ) ) check 04:28:21 i think 04:30:01 ah yeah dave0, i see where you switch between them now 04:30:08 the_cuckoo: you can pipe in to retro 04:30:41 No, I actually never resolved that. 04:30:47 ah 04:30:59 I just found an alternate way to do what I wanted to do. 04:31:00 what were the symptoms again? 04:31:03 $ echo "'lol s:put nl bye" |retro -i -s 04:31:30 Um, if I redirect output from the system into a file, it gets cone of control chars in the file along with the actual visible output. 04:31:36 I use fd 0 for the user terminal which belongs to task 0, and fd 1 for the tether which belongs to task 1 04:31:36 WilhelmVonWeiner: with the latest commit, `retro -s` will enable `-i` automatically 04:31:44 if you then cat the file in bash it prints perfectly. 04:31:45 nice 04:31:56 But open it in an editor and there's lots of garbage. 04:32:11 redirected input seems to work fine. 04:32:22 ah - ok 04:33:00 then i stand corrected :) - however in my case, the input used isn't necessarily stdin - it can be a socket for example 04:33:34 retro -s < socketfile 04:34:44 heh - mine is different - start server in rpany-comms instance, connect via nc, telnet or similar 04:35:38 Ok, I take back what I just said. 04:35:50 each connection gets its own dictionary/stack and all io is redirected to the socket - stdin belongs to the server :) 04:36:00 redirected OUTPUT probably works fine, because it's ultimately all created by standard system calls. 04:36:02 i do not handle end-of-file with key 04:36:11 it needs work 04:36:36 But I'm handling my own input echoing, and the string read words move the cursor around and son so on with ansi sequences. 04:37:04 I imagine it's all that that is cluttering up my output. I don't really discriminate between echoed input and output. 04:37:17 making any attempt to using the ascii sequences which output stuff? like, say, screen size? 04:37:22 So any kind of a standard system level re-direction is going to fall apart with that approach. 04:37:59 I use one of those to get the cursor position. 04:38:13 It causes the results to appear as the next stuff I read with KEY. 04:38:30 yeah - the termios stuff will be needed for that 04:38:57 I only use it once to get the number of rows on my screen so the editor knows how tall to make itself. 04:39:26 the_cuckoo: I diddle with the termios stuff at startup and shutdown to get it to behave the way I want. 04:41:21 I assume 80x24 04:41:42 it's a shame i can't use it on the other end of a socket of course - again, stdin/stdout are owned by the server process, and the abstraction i have for the socket wrapper doesn't allow it 04:42:54 not sure how to work around that with a basic client like nc 04:44:16 oh - heh - i see a way for the key check i think... 04:45:33 I imagine all I'd really neeed to do to fix my issue would be to use the isatty() call to determine if my INPUT is redirected or not, and if it is then don't echo. 04:45:51 or perhaps echo to stderr. 04:46:28 What happens if you try to write to stdin? Is that an error, or would it still show up on screen? 04:47:06 it'll be an error - return value of write 04:48:11 I don't think it'll be an error 04:48:46 So the whole stdin/stdout/stderr platform rather assumes you've got your tty in canonical mode, doesn't it? 04:49:29 Is there a "standard way" for programs that want to handle their own echoing to use it? 04:50:45 I don't recall, I don't use canonical mode 04:51:10 I don't think there is a "clean" way to get the traditional Forth output format in canonical mode. 04:51:24 printf( "%lu\n", fwrite( t, 1, strlen( t ), stdin ) ); <- outputs 0 04:51:33 Because it echoes the you press at the end of the input, and that puts you on a new line for the output. 04:51:36 which i would treat as an error 04:52:41 I suppose you could look at how many characters had just been typed and then re-position the cursor. 04:52:45 But that doesn't feel clean to me. 04:53:31 And in any case you would have to accept system line editing during input. 04:53:59 The way I've got mine set up I get the same line editing keystrokes on command input, in the editor, in any use of EXPECT, etc. 04:54:07 It's a consistent thing across all operations. 04:54:29 I perfer to handle everything myself and go full screen, canonical mode is too limiting 04:54:47 Yes, I agreed. 04:55:16 oh - and perror reports "Bad file descriptor" 04:55:30 But as a result, the control sequences we output become part of our "standard output." 04:56:21 stdin, stdout, and stderr are the same file descriptor (unless redirected, etc...) 04:56:56 they're different - 0, 1 and 2 04:57:28 Those are file handles 04:57:35 they're typically opening the same device - but the fd are different 04:57:50 Try using write() 04:57:56 on stdin 04:58:10 hmm - will try 04:58:51 Yes, what I'm wondering here is IS there an intended way for progrms that handle their own echoing to "discriminate" between "echoed input" and "real output"? 04:59:11 stdout and stderr? 04:59:25 Separate places to send those, that will produce the same effect on a screen, but yet separate then under re-direction. 04:59:36 Yeah, that may be the work-around here. 04:59:46 For me to write echoed input to stderr and output to stdout. 05:00:03 If you're doing full screend (i.e. raw) you're the one doing the echoing 05:00:12 stderr is what your "non-output" output should be going through 05:00:24 In my particular application the other day I WANTED the visible echoed input in what I wound up with; I just didn't want the control chars. 05:00:31 rdrop-exit: i stand corrected :) - output on stdout and 'success' 05:00:48 I just wound up putting my terminal program into "unlimited scrollback" mode, clearing the buffer, and then pasting my input in. 05:00:50 That workd fine. 05:00:54 return from write is also strlen 05:01:02 Then I just copied everything in the scrollback and pasted it into a file with vim. 05:02:20 still - i think it's correct for the higher level buffered io stuff to be strict about the mode of access/requested use 05:02:20 Ah, that reminds me that I should turn that unlimited scrollback off now. 05:02:30 In the end if you want full flexibility you should handle it all yourself and not count on the canonical mode stuff 05:02:31 It's probably making the terminal program more of a resource hog. 05:03:17 Yeah, I really don't want to resolve this by optionally bypassing my switch out of canonical mode. 05:03:37 I think if I were designing this all I'd make it possible to write to stdin, and "echoing" would be sent there. 05:03:45 That seems like a "clean" approach. 05:04:15 I use only fd 0 for the user terminal, I reassign fd 1 to the serial tether 05:05:35 No stdin, stdout, stderr 05:06:22 But my Forth is not line at a time, it's full screen interactive 05:06:48 What does that mean exactly? 05:07:20 It's similar to a curses program, just without curses 05:07:40 But I mean what does it mean in terms of what you do when you're entering code? 05:08:26 Words are executed as soon as I press space 05:08:42 Oh, ok - we talked about that the other day. 05:09:03 I always have the current block up in the editor 05:09:05 i prefer using readline or an equivalent :) 05:09:08 I think that's interesting, and I see it making the outer interpreter a bit simpler. 05:09:14 I think I'd hate it, though. 05:09:14 --- join: Croran_ (~quassel@2601:601:1801:6dde:a024:a39a:633c:7ee8) joined #forth 05:09:21 I'm just so used to the other way. 05:09:44 If I do control P my cursor moves to the editor, when I hit escape it goes back to the console pane 05:10:04 If I type a line of code and it contains an error, error recovery removes any effects that it had up to the error, and I can just hit ctrl-K to back up to that line in my history, correct the typo or whatever, and hit enter again. 05:10:13 Feels very "friendly" to me. 05:10:28 Your editor is always on? 05:10:35 Yes 05:10:41 Interesting. 05:11:08 0 preamble Host UI 05:11:09 1 05:11:09 2 The NFF user interface display is composed of three fixed-sized 05:11:09 3 character-cell panes layed out as follows: 05:11:09 4 05:11:12 5 +------------------------+-------+ 05:11:13 6 | | | 05:11:15 7 | Viewport Pane | Panel | 05:11:18 8 | 64x16 | Pane | 05:11:20 9 | | 16x24 | 05:11:23 a +------------------------+ | 05:11:25 I start my editor either with edit or edits or with ed. The latter one reenters whatever I edited last. 05:11:25 b | Console Pane | | 05:11:28 c | 64x8 | | 05:11:30 d +------------------------+-------+ 05:11:33 e 05:11:58 That's pretty neat, and it's somewhat what I envision for an eventual "integrated dev environment." 05:12:15 Where I have all my debugging ability. single step, breakpoints, stack displays, etc. etc. 05:12:21 I could even do command completion through incremental dictionary search, but I haven't bothered 05:12:27 I view that as an application, though, not the base system. 05:13:34 --- join: rpcope- (~GOTZNC@muon.copesystems.com) joined #forth 05:14:05 When my editor starts, it switches me to the alternate text sreen and I see nothing but the edit window(s). Escape exists back to the primary console, which looks exactly how it would look if the edit command had done nothing (I just get "ok" after the edit line, and cursor on the next line). 05:14:14 My host Forth is an application, it's basically an IDE for doing interactive cross-compilation/cross-assembly on targets 05:14:32 ed remembers which window I was in (if I had two open), and where the cursor was in both windows. 05:14:56 --- quit: Croran (*.net *.split) 05:14:56 --- quit: rpcope (*.net *.split) 05:15:05 I don't think I'm checking in ed whether I'd run edit previously - it probably wouldn't produce a good result. 05:15:21 When I exit my host Forth and restart it, the same stuff appears on the screen 05:15:31 Yeah - ed with no prior edit or edits segfaults. 05:15:36 I should fix that somehow. 05:16:22 Now that's nice. 05:16:44 I could probably eventually wind up somewhere like that if I want to. 05:16:51 I think the system's fairly well "primed" to go there. 05:17:25 My command history is in a memory buffer now, that's sort of "outside" of other things. 05:17:44 I eventually want to migrate it to "block file resident," though, and then it will be possible for it to be persistent across sessions. 05:17:58 Right now it starts empty everytime I run the system or do COLD. 05:18:21 Everything in my Forth is in one bin file except the VM 05:18:55 Yes. 05:19:11 That includes its own source 05:19:12 I'm working now toward being able to "recompile myself" from source in my block file. 05:19:26 When I do that, my plan is for the recompilation to create an image in a range of blocks. 05:19:52 And then I envision launching it with a small C or nasm file that I pass a block range into as command lne parameter. 05:20:05 That little program will just "boot the image found in those blocks." 05:20:18 So then I could have several images if I wanted to, and boot any of them. 05:20:38 The Forth VM would be implemented in that image too. 05:20:48 My VM just boots the image in nff.bin 05:20:50 So the launch program would be nothing but a "loader." 05:21:08 And the whole thing would be contained in the blocks.dat file. 05:21:40 I have too files "nff" which is the VM executable, and "nff.bin" which is the image 05:22:45 I don't use MARKER, I have a SAVE command that overwrites nff.bin (after backing up the original) 05:24:08 Everything's in nff.bin 05:24:38 That made me think about how I have no FORGET type capability in my system yet. 05:25:17 You can get by without one if you're system is persistent 05:25:23 * your 05:25:45 Yeah - it's not terribly painful not having one. 05:26:19 Probably the easiest way for me to get that would be for MARKER to snapshot a copy of the base process memory page into a heap page. 05:26:27 Whenever I do anything dangerous I use SAVE, I can also do SNAPSHOT 05:26:36 Then executing that marker would copy that back into the process page. 05:26:56 I think that would take care of everything EXCEPT for releasing any heap pages I'd grown into in the interim. 05:27:19 Which is a pretty big "except." 05:27:49 I just use RESTORE to reload the saved image 05:28:51 Yes. Well, I'll eventually have multiple processes running, and MARKER operation should only affect one. 05:28:59 So it's a bit more complicated for me. 05:29:02 Basically the sequence is SAVE RESTORE 05:29:40 The easiest way to deal with that "except" I just mentioned would be for MARKER to also snapshot the heap state (the state of the heap control variables) and restore those too. 05:29:57 But that would pull the rug out from under other processes that might have allocated heap pages. 05:30:05 Those heap control vars are global to the system. 05:31:10 I restore everything, except the tether which I restart 05:31:13 When I make the MARKER, it also needs to memorize the currently extant chain of pages that my process is using. 05:31:32 Then when I execute it, it needs to traverse the existing chain and free anything that is "beyond" the original one. 05:31:44 Then copy the base process page image back into place. 05:32:19 And reset the "next page" pointer in the restored "last" page to 0. 05:35:00 --- quit: dave0 (Quit: dave's not here) 05:35:17 I just reread the whole image into the VM's ram and reload the VM's data stack 05:36:49 (SAVE also takes a snapshot of the data stack and stows it in the image file) 05:37:37 bbiab 05:37:42 I think you have a somewhat simpler job since you're not multi-process, right? 05:38:17 I have two tasks, the user terminal, and the serial tether. 05:38:37 That's all I need so far. 05:38:46 Well, but you don't have multiple "things" that are building their own dictionaries and so on. 05:39:02 Each of my processes can compile code and so forth. 05:39:11 Or, well, "will be able to." 05:39:15 I can't imagine ever needing any of that, yes. 05:39:48 When I use bash console sessions, I frequenty run screen and have several windows going, doing various things. 05:39:56 I want to be able to emulate that sort of behavior. 05:41:21 The only purpose of my host Forth is to help me put machine code and/or custom forths on targets. 05:41:49 (and interact with them over a serial tether) 05:42:26 I'm set up very nicely to be able to switch processes with a simple context switch - the only remaining "hard part" will be remembering what the various process's screens are supposed to look like. 05:42:45 I'm making that optional - each process has a variable identifying it's output buffer, which is initially zero. 05:43:01 If I end up needing more sophistication I will just metacompile a new version with more features 05:43:04 If that's zero then it should all work with the various processes outputs mingled on the console. 05:43:19 So I can fret over redrawing process screens later. 05:43:37 Have to feed the dogs, bbiab 05:43:40 The processes form a ring. 05:45:04 --- quit: Zarutian (Read error: Connection reset by peer) 05:45:37 --- join: Zarutian (~zarutian@173-133-17-89.fiber.hringdu.is) joined #forth 05:45:53 I'll probably set it up so that if I'm switching to a process that has an output buffer, I'll restore that to the screen. If I'm switching to a process that doesn't have an output buffer I'll probably just print something like "=========== Process ======== 05:48:07 I'm mostly missing the code that allocates a heap page pair for a new process (definitions and headers) and initializes those pages appropriately and adds that process to the ring. 06:13:27 --- join: [1]MrMobius (~default@c-73-134-82-217.hsd1.va.comcast.net) joined #forth 06:14:47 --- join: [2]MrMobius (~default@c-73-134-82-217.hsd1.va.comcast.net) joined #forth 06:16:39 --- quit: MrMobius (Ping timeout: 250 seconds) 06:18:12 --- quit: [1]MrMobius (Ping timeout: 252 seconds) 07:43:25 --- quit: travisb (Ping timeout: 252 seconds) 08:04:58 --- quit: [2]MrMobius (Quit: HydraIRC -> http://www.hydrairc.com <- s0 d4Mn l33t |t'z 5c4rY!) 08:05:59 --- join: Keshl__ (~Purple@207.44.70.214.res-cmts.gld.ptd.net) joined #forth 08:07:07 --- quit: Keshl_ (Read error: Connection reset by peer) 08:08:31 --- join: MrMobius (~default@c-73-134-82-217.hsd1.va.comcast.net) joined #forth 08:26:43 --- quit: lchvdlch (Changing host) 08:26:44 --- join: lchvdlch (~nestr0@pdpc/supporter/active/lchvdlch) joined #forth 09:23:39 --- quit: rdrop-exit (Quit: Lost terminal) 10:16:58 --- quit: nighty- (Quit: Disappears in a puff of smoke) 11:17:27 --- quit: xek_ (Ping timeout: 268 seconds) 12:55:31 --- quit: jedb (Ping timeout: 272 seconds) 12:58:45 --- join: jedb (~jedb@103.254.153.113) joined #forth 13:04:00 --- join: dave0 (~dave0@223.072.dsl.syd.iprimus.net.au) joined #forth 13:05:08 hi 13:25:17 --- quit: gravicappa (Ping timeout: 272 seconds) 14:15:27 Hey dave0. 14:15:35 Happy Friday. 14:15:47 Or Saturday. it's not quite Saturday for you yet, is it? 14:16:56 hi KipIngram 14:17:02 yep saturday morning here 14:17:11 Wow. 14:17:18 You're like halfway around the world. 14:17:25 But early Saturday morning, right? 14:17:35 nearly 8:30am 14:17:46 i'm watching the twilight zone on youtube :-) 14:18:08 Ok, that's fairly early. 14:18:11 Oh - which episode? 14:18:18 Any of the "cult" ones? 14:19:05 https://www.youtube.com/playlist?list=PLMKhgS7inh4rtmoNCPZLlBsJ0RbkgfKhM 14:19:30 it's got william shatner in this episode 14:19:39 Nighmare at 20,000 feet - is that the classic one with Shatner? 14:19:42 Oh, ^. 14:19:44 Yes. 14:19:54 That's like the cultiest one of all, almost. :-) 14:19:55 there's a gremlin on the plane! 14:19:58 haha 14:20:01 Yep. 14:20:09 And he comes off as crazy. 14:20:17 Even though he was totally the one that saved the day. 14:20:25 i only know it because the simpsons did a parody of it :-) 14:20:35 "Crazy" isn't about whether you're right or wrong. 14:20:40 It's about how many people agree with you. 14:20:48 Crazy is something the rest of the world decides. 14:20:57 Which kind of sucks when you think about it. 14:21:06 It's FAMOUS. 14:21:18 Shatner could so overact. 14:21:24 Oh my god - such a ham. 14:21:56 But in his older years he learned to make fun of himself, so I figure he's an ok dude. 14:22:57 So...... 14:23:08 Hows the next=ret Forth coming? 14:23:10 ???? 14:23:35 I wanna see how that one performs. 14:23:58 "Denny Crane." 14:24:06 Precisely. 14:24:18 Denny Crane = "Let's make fun of William Shatner. 14:24:28 Such a great role. 14:24:29 I think Denny Crane was his absolute best role since OST 14:24:42 He could overact and have FUN with it. 14:24:45 Well, it sure beat the hell out of TJ Hooker. 14:24:59 heh.. My grandmother loved TJ Hooker ;-) 14:26:11 TJ Hooker had a hot girl on it. 14:26:16 That's about all I remember. 14:26:18 otoh, gramps would watch endless hours of greens - and cameras pretending to catch golfballs in flight. So...... Not much diff ;-) 14:26:26 But your grandmom probably lusted for William Shatner. 14:26:28 My mom did. 14:26:37 me too 14:27:05 Both were 10x better than tuning in endless Billy Graham. 14:27:20 I remember in the City on the Edge of Forever episode, when he told Joan Collins that "if Mr. Spock said the tools would have been returned, you can bet your life on that," he had this gleam in his eyes. 14:27:36 My mom *shivered*, and said "If you can look at a woman like that, you've got it made." 14:28:07 I was probably 14. Freaked me out. 14:28:09 ok, we definitely do not want to go down this road in #forth 14:28:14 But I think I took the lesson. 14:28:23 Yes. That is all. 14:29:13 Anyway, Denny Crane. Very fun. 14:29:59 Hi zy]x[yz. How goes? 14:30:15 Friday or Saturday for you? 14:30:25 est 14:30:33 Ok. CST here. 14:30:41 PST for PoppaVic. 14:30:44 suckers! 14:30:53 yeah, we're lagging. 14:31:01 Runners up, right? 14:31:11 the future is great. you should try it 14:31:17 lmao 14:31:23 I was just about to make a future remark. 14:31:27 Good job. 14:31:37 Yeah - I'll get there. 14:31:41 In about 3600 seconds. 14:32:14 PV'll drag in later. 14:32:17 The future sucks - it has for 40 years. 14:32:44 nah, tomorrow is bright... 14:32:48 yeah once bill shatner started getting old it just wasn't the same anymore 14:32:49 Anything can happen tomorrow. 14:33:13 All of my buddy group wanted to be bill shatner when we were in junior high. 14:33:16 He rocked. 14:33:39 Run your own starship, get all the girls... what a life. 14:34:02 Cool antique guns on your bedroom wall... 14:34:29 well the good news is you can at least have that last one 14:34:30 the latter is easy. When L5 died with a whimper I knew it was over. 14:36:00 LS? 14:36:07 Oh. 14:36:17 L5 14:36:23 What are you referring to? 14:36:34 As far as I know the lagrange points are still right there. 14:36:55 this i guess https://en.wikipedia.org/wiki/L5_Society 14:37:47 l5 is always going to be there - the drive to get up & out is pretty well gone. Fine. Humans compost well. 14:37:53 What was tht? A group promoting Gerard K.'s space colony vision? 14:38:09 Well, we all fit here right now. 14:38:23 And in the places where we don't, they don't have any $$$. 14:38:28 Give it time. 14:38:34 The L5 society was people and biz all planning and donating, calculating, etc - then we even gave up on heavy-lifters. 14:38:43 Hell, the Romans damn near invented the steam engine. 14:38:51 Can you imagine a steam powered Roman Empire? 14:38:56 But... they didn't 14:39:01 the romans killed themselves as well. Yay. 14:39:01 didn't mean it never happened. 14:39:13 Just took a while. 14:44:48 It takes millions of years for organisms to evolve. We've built... all this, in just 10,000 years. 1%. We could lose - all. Start over. Lose it all again. Start over. Again and again. We only have to win once. 14:45:06 If we don't do it this time, we'll be trying again in 10k years. 14:45:12 Blink of an eye. 14:45:55 It only makes sense to worry about speed of progress if you're hoping to experience something in your own lifetime. YOU have an expiration date. 14:46:01 The human race doesn't. 14:46:15 hahahahahaha 14:46:33 The probability of something taking out half of us is pretty high. Hell, the flu could do it. 14:46:35 Any year. 14:46:48 The probability of something taking out 90% of us is considerably lower. 14:46:56 99%, lower still. 14:47:11 The probability of something completely cleansing the planet of humanity? Slim to none. 14:47:54 If it's not going to happen in my life, then what do I care wither it's 10 generations or 10,000 generations? 14:49:22 * Zarutian is reminded of the book he read recently Seven Eves by Neal Stephenson 14:53:13 I don't know that one. 14:53:21 something with a very long-term history in it? 14:54:54 dave0: one of the best for sure - but checkout the one with burgess meredith - it rocks 14:55:10 okay i'll search! 14:55:14 KipIngram: nope, recent one. The moon disintigrates and you can infer a lot from that. 14:55:16 We're doing a lot of good things to make recovery from a catastrophe easier. For one thing, we're MOVING AROUND. If some catclysm occurs and wipes most of us out, within any small region we have more genetic diversity than would have been the case even just a few hundred years ago. 14:55:27 Say we get whittled down to 1000 families. 14:55:53 dave0: called "time enough at last" 14:55:58 --- part: PoppaVic left #forth 14:55:59 In just a thousand years could potentially be a hundred million. 14:56:00 * Zarutian recommends that book if you are into spec-fic (speculative fiction) 14:56:28 My favorite genre is "speculative with supernatural elements," but I'll read up on it. 14:56:45 My favorite book series ever is the Harry Dresden novels by Jim Butcher. 14:56:50 By a considerable margin. 14:57:03 I don't think any one of them is my "favorite book ever." 14:57:13 anyone seen black mirror? 14:57:19 But the quality level he maintains over the whole span of books is amazing. 14:57:27 nO, but I've thought I should. 14:57:37 it's awesome 14:58:29 I'll look into it. I'm more likely to watch it all if I can get my wife into it. 14:59:08 each episode is a different tale - the poorest, is sadly the first 14:59:28 rocks from there on in 14:59:37 i have to torrent this, youtube sucks 14:59:54 i may have it... 15:00:49 hmmph - nope - sorry 15:01:15 https://www.dailymotion.com/video/x6oxryp 15:01:16 Ok, so watch at least two. :-) 15:01:34 Seek thyself an ipTorrents membership. 15:02:14 A guy on PoppaVic's channel invited me in before he blew up and left us. It's a gold mine. 15:02:34 that is awful quality, but looks complete 15:04:48 the twilight zone is one of my favourite ever series - and i love planet of the apes (which was also a rod serling thing) 15:05:56 Planet of the Apes was Rod Serling????? 15:06:00 I did not know that. 15:06:20 PotA was a really interesting idea. 15:06:28 written by a french guy originally - serling was involved in the production of the film 15:06:47 It got kind of cheesed by Hollywood, but if you really think about it it's a fine SF (speculative) idea. 15:07:10 The new spin on it had some fairly good moments too. 15:07:28 That is really interesting. 15:07:30 absolutely - and the recent remakes have been fantastic - less said about the tim burton fuck up the better 15:07:37 I've always considered Serling a pioneer in SF. 15:07:42 I didn't know he was in on that one. 15:08:07 Yeah. You just have to look the other way on some of the stuff out of Hollywood. 15:08:38 I think the general quality level is low, but once in a while something good slips through. 15:09:42 I figure if you're in this channel you're at least fairly educated (I mean, who has heard of Forth????), and I think that the stuff we really like is pretty differetn from the stuff the mainstream caters to. 15:09:48 And Hollywood caters to the mainstream. 15:11:33 i tend toward the older stuff - chaplin, keaton, lloyd, serling and roddenbury :) 15:14:40 Did you see Earth II? That was a Roddenbery thing. 15:14:46 And the Questor Tapes? 15:15:08 seen some of earth 2 - not questor though 15:15:21 some/most 15:16:40 really enjoying the orville at the moment - some real surprises there (and very roddenbury inspired of course) 15:19:30 Neat. I don't know Orville. If you get a shot at the Questor Tapes check it out. 15:19:38 Earth II was actually made twice, I think. 15:20:06 Roddenbery definitely didn't mind "re-trying" on his efforts. 15:20:17 Oh, wait - no. 15:20:25 There rwas also one called "Genesis II." 15:20:36 I don't know for sure it was a Rddenberry thing, but it smacked of him. 15:20:58 The protagonist was a dude that looked like the Olympic swimmer Mark Spitz. 15:21:28 And the gal that did those Polaroid commercials with James Garner. 15:21:32 was him - not seen it 15:21:49 he had a very recognizable style. 15:22:20 I don't think I realized it at the time, but I do looking back, even with the vagueness of the memories. 15:23:11 I think the Questor Tapes may have had Robert Foxworth in it. Not as the main guy, but as a supporting role. The main guy was the guy thta played Dusty Farlowe on Dallas. 15:24:32 Wow. I don't set the way-back machine this far back very often. 15:28:16 I used to watch all that stuff with my dad. He passed away 20 years ago - fond memories. 15:28:28 He was only 65 - it sucked. 15:29:22 sorry to hear that - my own dad passed young too 15:36:19 Ah, sorry. We soldier on. 15:37:50 He was in a good place - I'd had a really nice phone call with him just a few days prior, and he was excited about a job opportunity that had landed on him. He didn't really NEED a job at that point - they were set. But I think we all like to be "sought after." 15:38:40 I can't even really remmember what the opp was - that wasn't the pont. He was happy, and that was the point. 15:51:00 same era as serling - also a massive fan of tom lehrer - come across him? 15:52:35 Hah, he's great. 15:52:53 L) 15:53:02 was looking for : there :) 15:53:04 I like his song about Wernher von Braun. 15:53:59 :) - he had many - lobachevsky always seems relevant here :) 15:58:21 he was a mathematician first, musician second - and it shows 16:00:39 I don't think I'm familiar with his name - what are some things he did? 16:02:53 he is best remembered for his dumb but rather amusing songs :) - https://www.youtube.com/watch?v=QHPmRJIoc2k&t=2100s is a lengthy introduction, but give him his minute to explain himself and listen to the lyrics of the first song at least :) 16:09:38 Your link jumped me about 40 minutes into it. :-) 16:10:17 yup :) 16:10:23 oh 16:10:34 wait - 40m - bollocks 16:11:49 https://www.youtube.com/watch?v=QHPmRJIoc2k&feature=youtu.be&t=60 <- was what i was aiming for 16:16:09 and if you get bored with that - try https://www.youtube.com/watch?v=bQLCZOG202k 16:59:09 --- quit: dave9 (Ping timeout: 245 seconds) 17:29:43 --- quit: john_cephalopoda (Ping timeout: 252 seconds) 17:43:04 --- join: john_cephalopoda (~john@unaffiliated/john-cephalopoda/x-6407167) joined #forth 17:48:58 --- join: tabemann (~tabemann@rrcs-162-155-170-75.central.biz.rr.com) joined #forth 18:55:42 --- join: dave9 (~dave@223.072.dsl.syd.iprimus.net.au) joined #forth 19:38:52 --- quit: tabemann (Ping timeout: 250 seconds) 19:55:24 --- quit: dddddd (Read error: Connection reset by peer) 20:25:42 --- join: tabemann (~tabemann@2600:1700:7990:24e0:35d8:344b:3716:9530) joined #forth 20:28:12 --- quit: tabemann (Read error: Connection reset by peer) 20:28:21 --- join: tabemann (~tabemann@2600:1700:7990:24e0:35d8:344b:3716:9530) joined #forth 20:42:56 <`presiden> just reading about terminal/tty on linux, http://www.linusakesson.net/programming/tty/index.php 20:43:13 <`presiden> kind of enlightening I must say 20:43:22 <`presiden> tho still complex 20:48:38 <`presiden> My original problem was, I need my program to output two different stream of views. Which both might need to be viewed independently. 20:49:08 <`presiden> in real time (TM). 20:49:47 <`presiden> after investigating, it seems pseudo terminal might be a good solution. 21:58:47 --- join: gravicappa (~gravicapp@h37-122-117-136.dyn.bashtel.ru) joined #forth 22:42:38 --- join: nighty- (~nighty@b157153.ppp.asahi-net.or.jp) joined #forth 23:59:59 --- log: ended forth/19.03.22