05:26:51 --- log: started forth/21.03.26 05:26:51 --- join: clog joined #forth 05:26:51 --- topic: 'Forth Programming | do drop >in | logged by clog at http://bit.ly/91toWN backup at http://forthworks.com/forth/irc-logs/ | If you have two (or more) stacks and speak RPN then you're welcome here! | https://github.com/mark4th' 05:26:51 --- topic: set by mark4!~mark4@cpe-75-191-74-68.triad.res.rr.com on [Sun Feb 28 11:55:01 2021] 05:26:51 --- names: list (clog crest_ WilhelmVonWeiner dave0 jedb rixard_ gravicappa +proteusguy djinni sts-q Lord_Nightmare boru Kumool cp- shmorgle rprimus +mark4 X-Scale lispmacs[work] dys jimt[m] patrickg inode siraben nihilazo dddddd jyf ecraven MrMobius pareidolia xybre bluekelp veltas phadthai joe9 klys_ cantstanya rann ovf dnm lonjil2 astrid krjt mstevens a3f jn__ Keshl fiddlerwoaroof _whitelogger +KipIngram kiedtl @crc tolja tabemann mjl nitrix koisoke_ APic cmtptr rpcope Vedran) 05:26:51 --- names: list (neuro_sys dzho spoofer TangentDelta remexre guan xek_ wineroots ornxka) 05:33:31 --- join: f-a joined #forth 05:36:40 --- join: tech_exorcist joined #forth 05:38:09 --- quit: WilhelmVonWeiner (Quit: leaving) 05:43:19 I wonder if it's possible to trap into the debugger after a stack overflow with gforth 06:01:02 --- quit: klys_ (Quit: Reconnecting) 06:01:08 --- join: klys joined #forth 06:12:30 --- join: lispmacs joined #forth 06:13:37 --- join: hosewiejacke2 joined #forth 06:28:42 neuro_sys: do you mean the same prompt provided by DBG? 06:33:57 you could write a signal handler to do that i bet 06:40:44 inode: Yes 06:41:49 mark4: Good point. Although not much need, I was able to find what's causing it tracing manually. 06:52:03 :) 07:04:33 --- quit: gravicappa (Ping timeout: 240 seconds) 07:07:34 --- join: gravicappa joined #forth 07:25:04 --- quit: f-a (Quit: leaving) 07:41:47 --- quit: mark4 (Remote host closed the connection) 08:34:00 Could check DEPTH doesn't get too large at intervals 08:45:00 --- quit: hosewiejacke2 (Ping timeout: 240 seconds) 09:13:29 --- join: j joined #forth 09:14:45 --- nick: j -> jess 10:28:52 --- join: lispmacs[work]` joined #forth 10:32:46 --- join: f-a joined #forth 10:33:53 --- quit: lispmacs[work]` (Read error: Connection reset by peer) 10:41:58 --- join: hosewiejacke2 joined #forth 11:07:15 --- quit: f-a (Quit: leaving) 11:26:09 --- quit: dave0 (Quit: dave's not here) 11:35:51 --- quit: Keshl (Read error: Connection reset by peer) 12:19:14 Such a great feeling when everything just flows in the stack and your code reads like prose poetry. 12:25:49 neuro_sys "flowing in the stack" is strong language for the amount of variables you use :P 12:28:52 That's the best review comment I got :D 12:29:22 But that's probably why I like it 12:29:37 No I don't mean using variables instead of values 12:29:55 Ah, I completely switched to using values now, it looks much better 12:30:01 Good 12:30:23 But I mean using either variables or values extensively it's cheating a little to call it "flowing in the stack" 12:30:38 I still don't do much stack juggling except maybe 30%, for really simple and easy to follow things. 12:31:07 Yes, that's true. My comment for flowing in the stack was for an occasion I just had it (which is rare). 12:31:09 Forth Programmer's Handbook has a section about this matter 12:31:56 6.3 "Wong's Rules for Readable Forth", rule 9: "Feature the stack machine" 12:32:04 Let me check 12:32:45 And they mention it in 6.3.6 with an example by Leo Brodie from Thinking Forth that they believe is better with the stack rather than lots of variables 12:33:16 I think it's quite opinionated but there is a school of thought that would chastise you for trying to say "flowing in the stack" with Brodie tier value/variable usage 12:33:30 You can judge for yourself 12:33:41 I understand that, but my comment was not for the code I shared 12:34:21 Fair enough 12:34:32 I wasn't sure but I assumed all your code was a similar style 12:34:43 I do make a lot of heavy assumptions :P 12:34:48 Reducing the stack usage is something I'm cautiously keeping to a minimum at the moment to reduce the effort, but slowly introducing them. 12:35:39 I do like that Arch Linux's mupdf-gl starts with a warning every time complaining about the lack of correct build options 12:36:14 My problem with Arch Linux is the maintainers all seem to think there is some value in building every app without clipboard support 12:37:05 I wasn't aware of mupdf 12:37:24 mupdf-gl is alright, just a minimalistic PDF reader 12:37:36 They don't support DPI scaling but my eyesight is good enough 12:38:00 I mean of the application's text, not the PDF itself, obviously you can zoom that 12:38:02 I guess I internalized all the issues related to Arch Linux I don't even notice any issues any more. DPI scaling and clipboard madness is the two annoying ones. 12:38:21 You notice if you actually try more than one distro 12:38:39 For clipboard I use a deamon called autocutsel which synchronizes the different clipboards 12:38:49 Which different clipboards? 12:39:03 Does it try and sync primary buffer and clipboard? 12:39:29 Primary and the clipboard yes 12:39:40 When one gets updated, it's sync to the other hand 12:39:47 I am used enough to the weird X11 dichotomy to not want to change it at this point 12:40:44 I try to rely less on tools as the number of them otherwise increase a lot, and more chances to run into issues with them. 12:41:36 The only significant change I've made in years was switching from dwm to i3 12:41:44 Haha same 12:42:16 The default keybindings for i3 are so bad that originally I assumed it was just going to be crap 12:42:17 I also switched from vim to emacs a few years back, not sure if I've done the right thing, but too late to go back now. 12:42:39 But it turns out it's just the keybindings, seems alright otherwise 12:42:57 I tried learning emacs and it was fun, and I got proficient, but I ended up going back to vim. 12:43:17 I did find out that there is not a whole lot of difference between vim and emacs in terms of functionality 12:44:26 There are a few things emacs does better, which is the fact that it has consistent keyboard controls and dead simple window movement 12:45:13 --- quit: rixard_ (Read error: Connection reset by peer) 12:45:33 vim is better at navigating a file, I use ^O and ^I loads and I can't remember if emacs supports that functionality the same way but I think there are some differences 12:45:54 I can't imagine using a text editor that doesn't have "go back" and "go forwards" shortcuts 12:46:13 And vim is a lot lighter/simpler 12:46:19 I was using vim only for editing code, and never checked Vimscript, but with Emacs I started learning Lisp simultaneously, and so it turns out Emacs is a Lisp VM. Now I do a bit more than just code editing. But Emacs is too slow. 12:46:41 Yeah emacs is *the* lisp VM, if you learn Lisp a lot of people direct you to emacs first 12:47:32 I'm a fan of acme 12:47:34 as an editor 12:48:07 but it's only an editor, which is odd to move to after being used to emacs/vim which are either a lisp VM or a "OH GOD WHAT EVEN IS THIS LANGUAGE" VM lol 12:49:12 Every time Emacs gets sluggish on me I consider a more lightweight editor, like Joe maybe. 12:49:26 I really like acme 12:49:28 --- quit: hosewiejacke2 (Quit: Leaving) 12:49:29 it's cool 12:49:44 I'll remember to check 12:49:48 nihilazo: Yeah but I don't ever use vimscript, and I think most vim users avoid it. I don't really care about scripting my text editor, it already has all the things I want from the editor. 12:50:07 I didn't ever use elisp either, just what I needed to configure emacs 12:50:16 Set up a couple mode hooks 12:50:55 Here's my outdated emacs configuration: http://neuro.gereksiz.org/emacs.org/emacs/emacs.html 12:51:13 It's served from an old Beaglebone board so it may load a bit slow 12:53:03 Emacs's org-babel is pretty nice for literate programming, not that I use it for anything other than the configuration file. Although crc's seemed simple and elegant. Although Emacs's one has some obscene features, it's more like an interactive document. 12:53:38 neuro_sys, nihilazo: Can we all agree to try out a Forth-scripted general purpose text editor when someone makes one? 12:53:51 Haha I was going to mention that, but you beat me to it. 12:53:52 --- join: rixard joined #forth 12:54:05 I prefer the editor not being scripted, and instead interacting with the outside world through some kind of consistent interface 12:54:07 a la acme 12:54:21 although I would like an editor that works nicely outside the confines of a VM I keep around just to run it :P 12:54:22 It's all the same to me 12:54:37 honestly the editor itself doesn't need much to be good for me 12:54:39 I just want to make everything forthy, like rust programmers want to make everything rusty 12:54:59 just a way to integrate with external commands and some way of making and following in-file links 12:55:23 (most personal wiki software is so bloated, I literally implemented a personal wiki for acme in 7 lines of shell script lol) 12:55:38 True, simple is the best. I do use some fancy tricks with Emacs which I believe saves me a lot of time editing code though. I'm sure all editors have such features by now. 12:58:29 I had a bunch of fancy stuff in vim 12:58:34 then I started using acme 12:58:40 which doesn't even have syntax highlighting 12:58:50 all of the cool things about acme are under the hood 12:59:00 but I find writing code in acme more enjoyable 12:59:02 somehow 12:59:21 It's more enjoyable when the experience is clutter free, and there're less "parameters". 13:00:01 Speaking of which, I do work on pen & paper, and that's when I'm the most productive. 13:00:40 people think I'm crazy that I dogmatically stick to not getting a smartphone 13:00:40 w 13:01:04 "why not get a smartphone, it does everything you do with your music player, ebook reader, games console, and tablet, and you only have to carry one thing!" 13:01:15 "yes, but when I'm listening to music I don't want a web browser" 13:01:19 I sometimes go to a place where I don't have a computer with me, so I use the pen & paper to finish the whole code on paper, then it's the best feeling when you type it in, and it just works. 13:01:26 *confused looks on everybody else's faces* 13:01:50 everybody is so used to this one-device-for-everything thing that we've lost the art of focus 13:01:52 a focused tool is the best tool 13:02:09 Haha sounds like the anti-thesis of Emacs 13:02:17 I'm on IRC now via Emacs 13:02:27 But I get what you mean 13:03:01 I'm not an emacs fan 13:03:11 well, weirdly, a lot of my devices are does-multiple-things devices 13:03:20 like, my music player is running rockbox, a firmware with 15 million features 13:03:38 but I only ever use the basic ones, because it's all I need. It's just that to get the few features I wanted I needed to have all the rest too 13:03:56 I often find I'm in a place where I want more than the simple tool offers but less than the complex tool bogs me down with 13:06:01 often minimalism comes at the expense of functionality, but functionality comes at the expense of feeling nice to work with 13:06:08 I think also I/we like to understand everything there is to the thing, so I don't like complex beasts. 13:06:11 --- join: Keshl joined #forth 13:06:32 With simple things and the ability to understand them deep down allows you greater flexibility 13:07:02 yeah 13:07:10 I like understanding what I work with 13:07:21 I can understand a plaintext file, I can't understand MS word 13:08:46 It's shivering to think the amount of number crunching the computers are doing for simple things today. 13:09:09 my tablet idles using about 800mb of RAM 13:09:14 I've still no idea how 13:09:31 it's like a correlation to moore's law 13:09:38 the faster computers get, the more ways we find to make them feel slower 13:10:36 It is ridiculous, it's the ultimate "externalized cost" of the computer industry. It's so that the production costs are cheaper and cheaper for the producers. 13:12:05 I still wonder how we ended up at modern versions of microsoft word that run inside a browser engine and let you import 3d models with a PBR renderer 13:12:10 like 13:12:22 does literally anybody who uses word make use of the built in *PBR fucking 3d rendering engine* 13:12:23 But it'll go back I think as the computers aren't going any faster, but the amount of data and processing is still increasing. 13:12:41 Haha 13:12:58 like, the only use of it is that you can then open up the files and extract the 3d models 13:13:15 because for some reason, the library of 3d models in word and powerpoint are really well made?? 13:13:32 the ones that literally nobody ever has any reason to use, ever, but mean that office applications have a PBR rendering engine included? 13:13:50 I have been using exclusively Google Docs for Office stuff due to work for several years, but my next job works with MS, so I'll have to start using them. 13:14:06 well, it's not real PBR 13:14:12 it's an approximation of PBR, obviously 13:14:26 but like, if you import a model of a fish into powerpoint the light will glint off each scale 13:14:32 it's still impressive stuff 13:15:20 I've been using plaintext of sometimes markdown files for all my writing for a while now 13:15:21 MS like a lot of companies have this issue where none of the devs coming in want to improve stuff people use, they want to do fun stuff 13:15:33 still not found a good spreadsheet application 13:15:51 Forth is a good spreadsheet application 13:16:02 I use jessyink for presentations because it's just the most flexible to me, and I like giving presentations in ways that are alien to the usual office suites 13:16:05 (aka, actually good presentations) 13:16:11 I'm writing an article explaining how to use Forth as your spreadsheet (but not really a spreadsheet) 13:16:17 I'd love to read that 13:16:35 I've been wanting to build something for D&D character sheet management for a while 13:16:50 and I feel like forth probably would do a good job 13:16:52 Do it man 13:17:02 My favourite spreadsheet program is awk 13:17:35 awk is good 13:18:14 Not perfect, but as an option Emacs org-mode has spreadhseet support with Elisp for formulas. 13:18:19 I wrote a simple GUI program in awk, bash, and zenity 13:18:23 but that requires all of emacs neuro_sys 13:18:26 :D 13:18:51 I wonder if there's a way to do "mobile" GUI (gtk/libhandy) with forth 13:19:04 The CSV mode in emacs is good 13:19:08 I feel like GUI is something that forth devs tend to dislike philosophically, but my main device I use while playing D&D is touchscreen 13:19:26 I don't know if that's true 13:19:50 The original forth application was a graphical program, or at least the current iteration of it is 13:21:26 gtk is a mess but like, libhandy is cool 13:21:39 A lot of embedded applications need graphics for a touchscreen 13:21:42 I'm not sure if you could use gtk with forth. gforth probably could with C interop but that's a pain 13:21:59 or anything that would do touchfriendly GUI on linux really, GTK is just what is "native" on my tablet 13:22:09 Yes well currently I have been investigating C-library-compatible forths 13:22:33 Because it's obvious that if you want to use forth on the desktop you need a C FFI 13:23:17 The only Forth I've found that has a C FFI and has a licence that won't have annoying repurcussions on a proprietary project is pForth 13:23:44 Which is a C forth, so a lot of forthers probably don't even consider it a real forth 13:23:59 But it's quite simple and not a carcinogen like gforth 13:24:08 And it's a permissive licence, not GPL 13:24:57 If mark4's x4 had an FFI I'd use that, he has said he'll put an MIT licence on it 13:26:00 nihilazo: I quite like GTK, I think people complain about it too much 13:29:56 I like GTK too 13:30:59 I've run into a barrier with my current forth project but said barrier is design-related rather than technical 13:31:01 which makes me happy 13:31:10 like, game design rather than program design 13:32:53 --- quit: Keshl (Ping timeout: 260 seconds) 13:33:20 --- quit: gravicappa (Ping timeout: 240 seconds) 13:36:13 and now I'm having ideas for how I'd implement this character sheet tool thing to be flexible 13:40:07 I have an itching desire to implement AD&D 1ed (or OSRIC) by the book. 13:40:33 the problem with existing character sheet tools for me is their lack of flexibility to different systems 13:40:34 But it's a stupid idea, since the code would be entirely look up tables. 13:40:51 the only thing I found flexible enough was a spreadsheet, which does a bad job with a lot of stuff 13:41:57 spreadsheets are fragile things 13:42:03 they break very easily 13:45:12 * nihilazo is going to sleep, gn 15:00:05 --- join: Zarutian_HTC joined #forth 15:16:48 Good night 15:16:51 https://i.imgur.com/XEGuDnP.mp4 15:21:12 neuro_sys: Is that in forth? 15:21:46 If so bravo, very interesting 15:22:14 Yes, all in Forth 15:22:38 Except the layer that provides the screen buffer. 15:23:09 I want to run it on a small computer (Amstrad CPC even) with lower resolution, and not animated. 15:23:41 I'm curious to see how long it will take to render a single image. 15:24:20 I also avoided using FPU, so it's 4.14 fixed point. 15:32:35 That's really cool neuro_sys 15:37:03 Thanks! 15:37:07 https://gist.github.com/neuro-sys/dd659939c04ee85cdeb1971f507ec31f#file-obj2f3d-fs 15:37:28 I updated the model loader code, I'll share the whole thing later 15:39:04 It's completely useless, but at least I can use it to make (theoretically) any device that runs Forth display any 3d model exported via Blender given it has enough memory :) 15:39:41 The color depth is an issue though, on Amstrad CPC 320x200 screen mode supports only 3 colors, so I'll try to figure out an efficient way to do dithering on it. 16:28:04 --- quit: tech_exorcist (Quit: tech_exorcist) 16:58:59 neuro_sys: hmm read the blog post of the guy who made the game Return to the Obra Dinn 17:00:51 --- join: Guest1167 joined #forth 17:00:56 --- nick: Guest1167 -> mark4 17:47:00 --- quit: Zarutian_HTC (Remote host closed the connection) 18:08:51 inode, neuro_sys: https://raw.githubusercontent.com/Veltas/forth-lib/master/examples/namespaces.fs 18:09:21 Was thinking about this idea of namespaces and this is what I came up with, not sure how useful it is 18:11:20 You can probably improve this with recognisers, but I don't know what kind of support they have 18:23:55 --- quit: mark4 (Remote host closed the connection) 19:29:34 --- join: boru` joined #forth 19:29:37 --- quit: boru (Disconnected by services) 19:29:40 --- nick: boru` -> boru 19:59:52 --- join: mark4 joined #forth 20:00:31 having to totally reinstall linux on this laptop 20:17:00 --- quit: sts-q (Ping timeout: 240 seconds) 20:31:33 --- join: sts-q joined #forth 20:43:27 --- join: Keshl joined #forth 20:46:59 --- join: gravicappa joined #forth 21:28:18 --- join: dave0 joined #forth 22:07:17 --- quit: nihilazo (Ping timeout: 252 seconds) 23:41:58 --- join: proteus-guy joined #forth 23:41:58 --- mode: ChanServ set +v proteus-guy 23:59:59 --- log: ended forth/21.03.26