2026-02-01 03:15:46 KipIngram: a 1-byte string? what you mean? 2026-02-01 03:18:16 veltas: my language is a higher level Forth, i don't want to call a syscall write() for each `.` 2026-02-01 03:18:35 shouldn't i buffer stuff and then call write to stdout after the repl executed the line? 2026-02-01 03:54:15 how do you actually implement if in your forths? :0 2026-02-01 03:55:11 i'm making and experiment in perl and made a control stack, if just pushes the current compilation pointer at that time (compilation is just an array) and then checks for that pointer later 2026-02-01 03:55:42 then is a mess 2026-02-01 03:56:18 vms14: `if-true A else B end` 2026-02-01 03:56:23 or if-false 2026-02-01 03:57:15 rendar: does your if-true read code until end? 2026-02-01 03:57:27 that's my experiment btw 2026-02-01 03:57:30 https://gitlab.com/vms14/oh/-/blob/master/oh.pm 2026-02-01 03:58:06 i'm also trying to provide the exit word, but meh 2026-02-01 03:59:38 .pm ? 2026-02-01 03:59:47 exit forces a check i want to avoid when the word does not use it, since i have no return stack as making jumps would just make it slower 2026-02-01 03:59:51 rendar: perl module 2026-02-01 04:00:17 oh 2026-02-01 04:00:52 i usually make compilation different and if reads until it finds 'then' and compiles the code by itself, but now i'm trying to make it more like forth i guess 2026-02-01 04:01:57 the standard says that if pushes something on the control stack, which may or may not exist and may or may not be implemented using the data stack 2026-02-01 04:02:11 and that the format of the control stack is implementation dependent 2026-02-01 04:02:54 i thought would be a problem using the data stack since you could push random stuff using [ ] or any immediate word 2026-02-01 05:28:11 rendar: Normally EMIT takes a character from the stack and prints it. Then the natural implementation of TYPE is to loop over the string and call EMIT on each one. Instead what I do is implement TYPE as single "write" system call. Then to implement EMIT, I get that character on the stack into RAM and print it as a one-byte write call. So I build EMIT using TYPE instead of TYPE using EMIT. 2026-02-01 05:28:29 Basically something like : emit pad c! pad 1 type ; 2026-02-01 05:29:50 On the systems I'm familiar with you can TYPE a whole screen full of stuff if you want to; newlines get handled fine. 2026-02-01 05:30:29 So if you nave newline chars in your blocks, you can print a whole block for a block editor with one TYPE call. 2026-02-01 05:31:10 And you can't even see that happen. You can if it scrolls, but if you move the cursor to the top first and then TYPE, the text is just suddenly there. 2026-02-01 05:31:28 It works fine to do that on every keystroke. 2026-02-01 08:10:13 On smaller systems, such as 8-bit MCUs, however, it makes every sense to implement EMIT as a primitive, as built-in UART would often have only a single-byte buffer for sending data, and there might not be enough RAM to spare on a large in-Forth output buffer. 2026-02-01 08:35:59 Also, to think of it, when implementing Forth on top of a high-level language, using high-level IO calls, it's easy to just use the buffering that the language's "standard library." The likes of C 'putchar' and Perl 'print' /do/ buffer. 2026-02-01 08:45:25 ACTION listens to Let It Be by Beatles via http://listen.181fm.com/181-70s_128k.mp3  2026-02-01 13:02:35 KipIngram: oh i see 2026-02-01 13:02:56 but my forth operates at a very higher level, my cell can contain: nil,bool,int,float,string,blob 2026-02-01 15:22:31 Ah - well different beast then; I plan to someday support something like that, but likely as an "extension." My "base system" will still be pretty generic Forth. 2026-02-01 15:30:29 rendar: Do you come from a test background? 2026-02-01 15:32:42 As for buffering, yeah it's better performance to not call write() per . but Forths aren't usually designed to maximise performance in every single way, they tend to be more targetted and barebones 2026-02-01 15:33:28 The stdio.h style buffering you might be used to wasn't really guaranteed or widespread in the era systems like Forth were developed 2026-02-01 15:33:55 Because it reserves a certain amount of memory, for a system with very limited memory that's a problem, like many early Forth systems 2026-02-01 15:35:02 An example, early C(?) and B didn't use the buffering you're used to, instead they buffered per-function, e.g. putstr() might write a whole string but putchar() would do a write() of one character. 2026-02-01 15:36:00 This becomes a serious limitation when you want to do more than terminal I/O, for disk I/O on an old OS this would be unacceptable 2026-02-01 15:36:31 C and UNIX allows using 'files' for many kinds of I/O, including terminal. However Forth doesn't tend to do this. 2026-02-01 15:37:08 This is why I mention blocks and files, because those do allow buffering in Forths, but for terminal I/O there's an expectation that every operation is synchroniesd 2026-02-01 16:54:42 I agree - . shouldn't be expected to access peak performance. If you are doing something that really requires that you should implement something different. I take a step that way by putting TYPE at the ground level, but that really only just "sets me up" for it. I'd still have to build the strings, so maybe instead of . you'd have a word that appended the new characters to a buffer you were 2026-02-01 16:54:44 growing. 2026-02-01 16:55:12 So, do it explicitly, when you really need it, rather than trying to have the system do it for you. 2026-02-01 16:57:56 Ugh. I'm trying to download the stuff for updating from Fedora 41 to 43. Just the download first - I want all the pieces local before committing to an actual installation. It's just sitting there stuck at 52% on the download. 2026-02-01 16:58:05 Guess some server out there it needs isn't replying. 2026-02-01 17:03:10 I tried closing the software app, but when I re-open it it remembers it was trying to download that file and goes back to it. I don't know whether to just wait, or close the app, do some sort of "cleanup" of intermediate state, and try again. I went and asked for advice on Reddit r/Fedora. 2026-02-01 17:49:08 Nice - that's all done. I'm always a little nervous when doing bit upgrades. 2026-02-01 17:53:46 "big" 2026-02-01 18:01:12 I have a utility I run in a little corner at the bottom of my console workspace that references /org/freedesktop/UPower/devices/batter_BAT0. The sure do seem to love tinkering with exactly how info is reported in that file. 2026-02-01 18:01:24 Every time I update, I have to go tweak my utility a little. 2026-02-01 18:01:25 KipIngram, Im on Starlink 'standby' so choice of OS is important for upgrading 2026-02-01 18:02:32 for instance NixOS downloader is fragile, and if it drops out then it only retries 3 times, then starts again 2026-02-01 18:02:40 This time they switched from mA*hours to percent for reporting current and full battery charge. 2026-02-01 18:02:49 That's less informative in my opinion, but whatever. 2026-02-01 18:02:57 unlike freebsd which will keep trying forever 2026-02-01 18:03:39 I'm on AT&T UVerse, which is really just super reliable. 2026-02-01 18:03:59 Now and then they have equipment issues in the area, but other than that, it's up and it's fast. 2026-02-01 18:04:02 and PKGSRC (netbsd) will try other sources, binaries or source if the link has problems 2026-02-01 18:05:09 Starlink full service is fast and reliable but expensive, standby is only $5 USD a month and unlimited 2026-02-01 18:05:32 standby is speed limited to 500kbit/s 2026-02-01 18:05:57 Wow - been a LONG time since I've dealt with a speed that low. 2026-02-01 18:06:21 My wife still regularly uses our home internet for work; I don't think we're quite ready for a step like that. 2026-02-01 18:06:28 it's workable but limited compared to 300 mb/s 2026-02-01 18:06:58 Yeah. We have 1 Gbit/sec, but usually something in the path limits us to less. 2026-02-01 18:07:03 yeah, if I was still working and not retired i'd have full service 2026-02-01 18:07:08 For one thing, we really only use WiFi within the house. 2026-02-01 18:07:15 Never "plug in." 2026-02-01 18:07:44 same here, I have two Nats just as it's easier 2026-02-01 18:07:57 and because of wifi 2026-02-01 18:08:48 Starlink doesnt have static ip, so I cant be bothered with a cabled and properly set up network 2026-02-01 18:09:11 if it did, id ne static and on IPV6 2026-02-01 18:09:19 Two here too - one in the family room and one in the office where my wife works when she's working at home. Cheap ones that run RouterOS. I had to dick with them a good bit to get them to do what I wanted (which felt to me like it should be the "default," but wasn't) but I got them to work. 2026-02-01 18:09:40 but I cant complain for $5 USD a month 2026-02-01 18:09:48 No, that's very nice. 2026-02-01 18:10:11 no telco line fee as well 2026-02-01 18:10:19 Right. 2026-02-01 18:10:23 it's $5 USD total cost 2026-02-01 18:10:44 a cup of coffee price, crazy 2026-02-01 18:11:01 All that is our modern version of every little podunk statelet along the Silk Road taking its bite of the pie as goods moved along back in the day. 2026-02-01 18:11:18 I downloaded 130 GB last month for $5 USD 2026-02-01 18:11:24 :-) 2026-02-01 18:12:44 Internet used to be quite expensive, even for 65kbits/s, $30 a month for the ISP, $30 a month for the phone line 2026-02-01 18:13:27 and the phone line was tied up 24/7 while on the net 2026-02-01 18:14:07 then 20mbits/s cost $30 phone line and $90 per month 2026-02-01 18:15:13 so $140 aud for 300 mbits/s for starlink full service wasnt so bad as no line fee applied 2026-02-01 18:15:48 just bolt the antenna to the side of your house and run the cable inside, done! 2026-02-01 18:15:49 Not sure what's current bandwidth limit on my plan - likely 100 Mbit/s - but what I've actually used over the past two months or so is 13 kB/s RX, 1.2 kB/s TX. 2026-02-01 18:16:45 veltas: a test background? what you mean? 2026-02-01 18:16:56 iv4nshm4k0v, why so slow ? sensor data ? 2026-02-01 18:17:22 I've given thought to StarLink. Really only in the context of the semi-mythical country dwelling I'm extremely unlikely to ever live in. 2026-02-01 18:18:02 I. e., average over said months. Little interest in videos, no interest in 4K (have to upgrade my eyesight for that first, I guess) or even FullHD. 2026-02-01 18:18:03 yeah, it doesnt make sense if one has fibre available, cost wise 2026-02-01 18:18:04 I think I could be pretty content in a modest place out away from things, but I'm not at all sure my wife would. And honestly it would give up one of the few real upsides of living near Houston, which is superb medical facilities. 2026-02-01 18:18:11 Something to keep in mind as we get older. 2026-02-01 18:18:35 KipIngram, so true 2026-02-01 18:18:40 I guess there are other upsides, depending on what you like. There are some top drawer museums and so on, for example. 2026-02-01 18:18:47 Art, natural science, etc. 2026-02-01 18:19:05 KipIngram, all important for lifestyle 2026-02-01 18:19:23 The thing is, though, the internet is kind of my portal to any culture I want. 2026-02-01 18:19:28 I can go anywhere in the world. 2026-02-01 18:19:33 Right here on my sofa. 2026-02-01 18:19:34 I live in a remote rural town in Australia, nothing at all interesting 2026-02-01 18:19:36 Heh, same her.e 2026-02-01 18:19:43 and poor medical 2026-02-01 18:21:01 but then Im 71 now and dont want to be sightseeing, I'm happy in my big shed making projects 2026-02-01 18:21:30 I prefer the world to generally leave me alone to work on my designs 2026-02-01 18:36:40 Yep - I've pretty much always been a "you do you - leave me be" sort of person. 2026-02-01 18:37:02 Never got the inordinate interest some people have in managing other people's lives for them. 2026-02-01 18:38:34 probably why we do everything by ourselves ? 2026-02-01 18:39:50 I did all my travelling when I was 18 - 50, I knew that was the best time for it, while young and able 2026-02-01 18:40:08 I left my 'later years' for full on projects 2026-02-01 18:41:19 I rode motorbikes all over Australia I went everywhere, in summer and winter, to big cities and the remote outback 2026-02-01 18:42:10 I spent years in some remote towns 2026-02-01 18:43:30 the GPS on one of my motorbikes still has a high speed of 199kph I set on it, two up across the Nullabor in 2006 2026-02-01 18:49:13 it was 50C here lastweek in some of the places I've lived in 2026-02-01 18:49:21 50C ! 2026-02-01 18:50:25 Now that's cuirous; any major airports around those places? I'd add their METAR data to my watchlist. 2026-02-01 18:51:51 Like, you know, http://tgftp.nws.noaa.gov/data/observations/metar/decoded/UEEE . 2026-02-01 18:52:00 Not the 50C ones I think 2026-02-01 18:52:14 melbourne had some 45C days 2026-02-01 18:52:52 Adelaide was pretty hot