2022-06-15 06:48:00 MrMobius: I use a Python script to generate the assembly source of a whole pile of my words. All those conditional returns and stuff - they're all extremely similar, except for the precise conditional jump used within each one. 2022-06-15 06:48:50 I did that for all the conditional returns and conditional recurse words, but failed to include the actual "flag calculating" words (like < and <= and so on). I need to tweak it to mop those up as well. 2022-06-15 06:50:28 I've got one for each different conditional case for 1) return, 2) double return, and 3) recurse, and then all of those with an implicit 0 argument and then all of all those in a version that retains an argument that would normally be dropped. Winds up being quite a large number of primitives. 2022-06-15 06:50:51 If I got interested in minimizing the size of my image throwing away almost all of those would be step #1. 2022-06-15 06:51:09 Incluidng all of them was definitely oriented toward performance. 2022-06-15 06:52:54 Oh, and unsigned versions of the ones involving < and > considerations. 2022-06-15 06:53:00 Hmmm. 2022-06-15 06:53:24 Now that I think about it the way I did it probably gave me signed and unsigned versions for the = and != cases too, which doesn't make any sense. 2022-06-15 06:53:30 Oops. 2022-06-15 06:56:26 Man, took me long enough to realize that. :-( So I need to filter those out, and extend it to include the "make a flag" case as well as the return / recurse cases. 2022-06-15 06:56:55 And then go through and remove the make-a-flag words I've manually written. 2022-06-15 06:59:37 So given this recent interest in radio, I imagine one of these days I'll want to roll my own radio unit, which will of course lean heavily on software radio techniques. So I want to use this Forth to program that. 2022-06-15 07:21:28 'llo all. Anyone speak gforth here? I've got a couple of strange questions. 2022-06-15 07:22:21 ACTION can attempt to help with gforth 2022-06-15 07:23:19 Okay - I'm on the latest git release, and I had a couple of problems compiling on an older Fedora machine - four missing headers from SDL2. 2022-06-15 07:26:24 This isn't a forth question, but rather a how-do-I-compile-software question. 2022-06-15 07:26:50 If your local installation of SDL doesn't provide those headers, then you'll need a version that does. 2022-06-15 07:26:59 Namely: SDL2_metal.h SDL2_hidapi.h, SDL2_locale.h and one other one I can't remember. 2022-06-15 07:27:41 I haven't seen _any_ versions of SDL2 that have those headers. Looked on Ubuntu's package manager too, and it doesn't know them, just the normal SDL2_net/etc stuff. 2022-06-15 07:28:15 I commented them out of one particular include file for swig just so the build would make... 2022-06-15 07:28:29 Once I did that, the build "make" ran to completion. 2022-06-15 07:29:32 Ah, here we are. gforth/unix/SDL.i 2022-06-15 07:29:40 SDL2_metal.h should only be applicable on macOS or iOS I think 2022-06-15 07:30:03 Heh. And I'm on neither of those. No Apple hardware here at all. 2022-06-15 07:30:22 All of those headers are a part of SDL2. 2022-06-15 07:30:27 They are present on my system. 2022-06-15 07:30:46 https://github.com/libsdl-org/SDL/tree/main/include lists those headers as part of the SDL2 source tree 2022-06-15 07:30:49 Ah, and the other one was SDL2_misc.h 2022-06-15 07:31:03 huh. How long have they been part of the main tree? 2022-06-15 07:31:25 (or is that too hard to answer without having git/svn/cvs tree of the project?) 2022-06-15 07:32:00 SDL2_metal.h has been there since 2019 2022-06-15 07:32:28 Ah. That might explain it - my machine basically hasn't had much updating since Fedora 28 in about 2017/2018 2022-06-15 07:32:29 Yeah, years at least, looking at the blame. Probably longer if you look in the logs before github. 2022-06-15 07:32:43 boru> If your local installation of SDL doesn't provide those headers, then you'll need a version that does. 2022-06-15 07:32:54 sigh. Okay, thanks for that. 2022-06-15 07:33:02 ACTION kicks package maintainers 2022-06-15 07:33:21 Not the maintainers fault, imho. 2022-06-15 07:34:51 hm, I might change tacks. I was looking for files using apt-cache, I should perhaps be looking for package name. 2022-06-15 07:36:06 Doesn't fedora use yum/dnf? 2022-06-15 07:37:03 It does, but wifie has an Ubuntu machine I often use to double check if package actually exists over in Debian/Ubuntu lang. 2022-06-15 07:37:13 s/lang/land/ 2022-06-15 07:37:33 IME, I wouldn't count on that. Anything based on something created by redhat is usually insane. 2022-06-15 07:38:16 If you _really_ want the latest gforth on that fedora machine, I'd build gforth _and_ the deps out of tree to prevent hosing your system. 2022-06-15 07:38:19 I thought apt was created for Debian project? 2022-06-15 07:38:52 I was referring to your idea that things between debian and fedora will be similar. 2022-06-15 07:39:18 Debian have their own philosophy when it comes to packages, also. 2022-06-15 07:39:26 They patch things _a lot_. 2022-06-15 07:39:35 In my experience, sometimes the lines between what stuff gets put into what packages are a little ... fluid between Fedora/CentOS and Debian-family 2022-06-15 07:39:48 That is an understatement. 2022-06-15 07:40:11 Well, SDL2_misc.h isn't in any of the SDL-dev packages I've installed so far... 2022-06-15 07:40:16 let me check further 2022-06-15 07:40:46 As I said, I would create the environment for your gforth installation out of tree e.g. in a root from your home directory. 2022-06-15 07:40:59 Less chance of irreversibly breaking your system that way. 2022-06-15 07:41:15 Don't just `make install` things willy-nilly. You're asking for trouble. 2022-06-15 07:41:48 If it's in your package manager, you're probably okay. For things not managed by your package manager, dragons ensue. 2022-06-15 07:42:35 Unix is not windows. 2022-06-15 07:42:38 gforth in my package manager is the version from 2013 2022-06-15 07:42:47 (i.e. 0.7.3) 2022-06-15 07:43:04 And I didn't "make install" on SDL, I ain't that crazy. 2022-06-15 07:43:25 0.7.3 is the current release... 2022-06-15 07:43:33 https://www.gnu.org/software/gforth 2022-06-15 07:44:01 If you want newer, clone master: https://savannah.gnu.org/git/?group=gforth 2022-06-15 07:45:38 Already did, that brought me to here with those errors. 2022-06-15 07:46:09 And _none_ of the SDL packages I've installed include any of those five header files. 2022-06-15 07:46:30 fifth one was SDL2_misc.h 2022-06-15 07:46:43 I think you're missing the point here. The version of SDL available for your system is appropriate for the version of gforth in your package repos. If you want a newer version of SDL from your package repos, you'll probably need to upgrade your fedora release, or provide a newer SDL yourself. 2022-06-15 07:47:10 This is not the fault of the fedora or gforth maintainers. 2022-06-15 07:48:00 oh... wow. Ubuntu 21.04 only has SDL2-2.0.10 2022-06-15 07:48:29 Anyway, time to go back to work. 2022-06-15 07:49:28 Ah well, thanks for clarifying those points. 2022-06-15 08:55:51 does anyone have a good article/resource about translating more conventional languages into idiomatic forth? or like... how to factor variables out of forth code? 2022-06-15 10:24:35 tangentstorm: have you read/seen Thinking Forth? 2022-06-15 11:53:29 hrm. i have, but it has been a really long time. i'll take another look, remexre ... thanks! 2022-06-15 11:55:07 i think last time i looked, the nice pdf version was just getting started. 2022-06-15 11:55:15 nice to see they followed through :) 2022-06-15 14:23:34 Yeah, I think TF is the best resource I know for that level of stuff. 2022-06-15 14:26:27 I updated my Fedora from 34 to 36 last week. That went smoothly. There are alrerady 2 pending updates that I haven't applied yet, and five "firmwave images." For some reason updating firmware images makes me more nervous than system updates. 2022-06-15 14:26:59 I know either one could screw me over just as well if things went wrong - I don't really know why I have different feelings about them. 2022-06-15 15:06:42 KipIngram: firmware images? for CPU microcode? Or other devices...? 2022-06-15 15:18:47 Yeah, for devices in the system. Like a few weeks ago I applied a firmware update for the fingerprint reader. 2022-06-15 15:19:09 Hang on and I'll show you. 2022-06-15 15:20:06 https://imgur.com/a/yqxmEFW 2022-06-15 15:20:10 That's the pending list. 2022-06-15 20:27:18 hey