00:00:00 --- log: started forth/21.05.30 00:17:12 --- quit: proteus-guy (Ping timeout: 272 seconds) 00:29:13 --- join: proteus-guy joined #forth 00:44:39 --- join: Glider_IRC__ joined #forth 00:48:00 --- quit: Glider_IRC_ (Ping timeout: 260 seconds) 02:28:20 --- quit: xek (Ping timeout: 260 seconds) 03:09:26 --- join: simpl_e joined #forth 03:50:11 --- join: rtdos joined #forth 03:50:11 --- join: proteanthread joined #forth 04:01:33 --- quit: proteusguy (Remote host closed the connection) 04:03:00 --- join: proteusguy joined #forth 04:03:00 --- mode: ChanServ set +v proteusguy 04:30:53 --- quit: Glider_IRC__ (Ping timeout: 260 seconds) 04:39:25 --- join: Glider_IRC joined #forth 06:08:48 --- quit: proteus-guy (Ping timeout: 240 seconds) 06:14:27 --- quit: rtdos (Read error: Connection reset by peer) 06:21:42 --- join: proteus-guy joined #forth 07:23:29 --- quit: cbridge-freenode (Remote host closed the connection) 07:23:41 --- join: cbridge-freenode joined #forth 07:30:56 --- quit: Zarutian_HTC (Read error: Connection reset by peer) 07:31:21 --- join: Zarutian_HTC joined #forth 07:53:51 Morning, folks. 07:55:46 KipIngram: morning 07:55:59 I mean, morning 08:05:07 :-) 08:05:52 Today's goal is a new mattress for me and the wife. It's been a LONG time, and the old one is in a pretty sad state. 08:06:21 There's a furniture chain here in the Houston area called Gallery Furniture, and the guy who owns it is nicknamed "Mattress Mac." 08:06:52 His "gimmick" is "get it TODAY," so we should have it to sleep on tonight. 08:07:14 He's one of these businessmen who has become a sort of local celebrity. 08:07:59 We've got one of those about six miles away, so... works for me. 08:08:05 Mac can have a little of my money. 08:08:37 For the *Houston area* "six miles" is sort of "right next door." 08:23:55 --- quit: Zarutian_HTC (Ping timeout: 260 seconds) 08:50:52 --- quit: proteanthread (Quit: Leaving.) 09:50:08 --- quit: cbridge-freenode (Remote host closed the connection) 09:50:21 --- join: cbridge-freenode joined #forth 11:32:41 --- join: Zarutian_HTC joined #forth 12:44:38 --- join: Glider_IRC_ joined #forth 12:48:11 --- quit: Glider_IRC (Ping timeout: 265 seconds) 13:28:14 --- join: crab joined #forth 13:32:04 Howdy, I'm trying to get into RetroForth and am having some trouble. I've written http://0x0.st/-2Jo.retro and am trying to use `random-search` after including the file in the repl, and I get a "Stack Limits Exceeded!" error, but manually executing the contents of my `random-search` word in the repl works. Anyone have any ideas as to why? 13:37:16 Crab: the variables need to be moved out of the definition 13:38:09 words cannot have local variables? 13:38:27 No 13:38:34 I suppose that would make sense, and in that case I would want to rewrite it without variables 13:40:25 There is a pattern for using a global variable within a localized scope, but no proper locals. See http://forth.works/examples/local-variables.retro.html 13:40:57 This isn't optimal though and adds a lot of overhead. 13:41:11 Best to minimize variables & use the stack if possible 13:46:34 Rationale here: 13:46:51 - I've never actually needed locals to implement anything 13:47:09 - My stacks are not addressable 13:47:26 - Memory access is slow, much more so than pure stack usage 14:06:13 I try to avoid named variables if at all possible. In the last couple of development rounds I've given myself an ability to access the top half dozen or so stack cells using a "stack frame" register. I combined the access and various operations last time - this time I just have words that will give me the addresses of those cells, and use them like variables. 14:06:22 I've found it pretty convenient. 14:09:26 KipIngram: that works if you can address the stack; I can not 14:15:37 Right. 14:15:43 Where does your stack live? 14:16:04 In the processor 14:16:18 Retro runs on an emulated MISC architecture 14:16:42 I see. So it's in memory, but the emulator doesn't open it up to you? 14:17:20 Yes. The stacks are separate from regular memory, as are all registers. 14:18:07 I have the usual SP0 / RP0, SP@ / RP@ words. 14:18:28 The frame words are faster, but what they do could be done with those. 14:18:40 All of that is part of the emulated processor 14:20:40 --- quit: cbridge-freenode (Remote host closed the connection) 14:20:52 --- join: cbridge-freenode joined #forth 14:21:37 The stack frame defines a specific "start of frame" point (which is just the value of SP when the frame is opened). So even if SP moves around thereafter the frame stays put. But I also have some words I pilfered from my HP 41 calculator, that let me access the top four items as X, Y, Z, and T. X and Y aren't particularly "new" - all Forths have words that let you manage the top two items pretty flexibly. 14:21:40 But sometimes x<>z or x<>t is helpful. 14:22:04 Or z! or t@ or whatever. 14:30:33 https://paste.sr.ht/~crc_/dd0faa16e487df1e41b327733862db695bfd471e has a very brief description of my MISC architecture 14:35:08 Oh cool - I like stuff like that (hardware guy here). Thanks. 14:36:18 Can you jump to an opcode in the middle of a 4-op cell? 14:36:25 Or do you jump to cell boundaries? 14:36:35 Cell boundaries 14:36:55 I've played with a similar approach - three 5-bit opcodes for 16 bits, 6 5-bit opcodes for 32-bit. 14:36:58 There's no way to directly address a smaller unit 14:37:01 And yes, jumps to cell boundaries. 14:37:03 Right. 14:37:25 I guess you COULD, but it would probably be less efficient and would reduce your address space quite a bit. 14:37:42 Or do you just mean in that architecture there's no way? 14:37:48 Yeah, it says that there, doesn't it? 14:38:24 No way to do so for jumping around; you can unpack a cell, mask and shift to get bytes if you really need to 14:38:35 E.g., http://forth.works/examples/byte-addressing.retro.html 14:38:55 How does lit work? 14:39:15 I had lit take the cell following the cell it was in. 14:39:24 Takes the value from the following cell and increments IP 14:39:41 So you could have four lits in a cell, and then four cells of literal values. 14:39:46 Yes 14:39:52 Right - same thinking here. 14:40:41 I've never actually built and used any of my ideas in that neighborhood. But I fleshed out a fair bit of hardware design around the idea. 14:40:46 Had separate fetch and execute units. 14:40:55 With a FIFO in between. 14:41:21 The hope was that the fetch unit could get out ahead of the execute unit, and then while execute was catching up fetch could be unwinding calls. 14:42:36 I had a sort of novel way of dealing with conditional jumps - I separated the decision from the actual jump. 14:43:11 The hope there was that in cases that allowed it the decision could be moved back early enough for the execute unit to tell the fetch unit where it would need to go before it got to the actual jump point. 14:43:11 I don't have a conditional jump, but do have a conditional call 14:43:19 Obviously only a subset of cases would allow that. 14:44:54 --- quit: wineroots (Read error: Connection reset by peer) 14:45:07 The hardware just provided a way for execute to communicate "tagged decisions" back to fetch - it was on the programmer to recognize how to take best advantage of the setup. 14:46:29 When fetch reached the actual branch point, it would see if a result with a matching tag had been received. If it had, great - it knows what to do. Otherwise it had to stall and wait. 14:46:55 Supported up to four tags. 14:52:45 My setup isn't that clever. conditionals leave a flag on the stack, and ccall checks this before calling an address on the stack. 15:02:14 Yeah, that was the most involved aspect of the logic. I was trying to have a fighting chance of being able to keep the execute unit supplied with opcodes almost all the time. 15:02:26 Even with heavy factoring. 15:02:32 No idea how it would have panned out. 15:02:45 Maybe I'll build it one of these days. 15:03:03 It was targeted at a Xilinx Spartan 6. 15:03:45 If you ever do, I'd love to see it 15:04:17 :-) Ok. I guess I plan to be around for a while. 15:06:17 --- quit: cbridge-freenode (Remote host closed the connection) 15:06:30 --- join: cbridge-freenode joined #forth 15:20:25 --- quit: Glider_IRC_ (Remote host closed the connection) 15:20:25 --- quit: mark4 (Remote host closed the connection) 15:20:44 --- join: mark4 joined #forth 15:21:07 --- join: Glider_IRC_ joined #forth 15:36:42 maw 15:37:32 maw dave0 15:37:38 maw KipIngram 15:37:57 Maw dave0 15:38:09 maw crc 15:43:06 haw all 15:43:31 *maw 15:45:15 Greetings & maw 15:47:14 --- quit: cbridge-freenode (Remote host closed the connection) 15:47:26 --- join: cbridge-freenode joined #forth 16:04:00 bbl 16:11:56 what is this maw 16:16:08 21.04.11:17:39:28 I'm curious, what does `maw' mean? 16:16:08 21.04.11:17:40:03 sheldon cooper says mee-maw ! 16:17:00 All refs to `maw` at http://forthworks.com/temp/maw.txt 16:17:25 It's dave0's greetings & occasionally goodbye message 16:19:25 --- quit: cbridge-freenode (Remote host closed the connection) 16:19:36 --- join: cbridge-freenode joined #forth 16:27:01 crab, do you know the Hodor character from game of thrones? 16:33:18 I do not 16:35:57 he only has one line 16:35:59 https://www.youtube.com/watch?v=Ir7rBPU9GwM 16:49:54 sounds like a lot of the same line 16:55:20 hodor 16:58:08 --- quit: crab (Ping timeout: 260 seconds) 17:00:40 now imagine if he was saying maw every time 17:00:44 it's kind of like that 17:08:12 i am groot 17:15:52 Yes, like that 17:22:48 kind of weird who played groot :) 17:37:59 nah, despite his looks, vin deisel is a self admitted big sci fi nerd 18:07:14 I'm impressed with people who can come up with things like Groot. I mean, why was that so endearing? How could someone know it was going to work that way? I couldn't cook an idea like that for anything. Some folks just have a "sense of people." 18:09:35 --- quit: proteus-guy (Ping timeout: 260 seconds) 18:11:05 --- join: crab joined #forth 18:16:33 --- quit: MrMobius (Quit: Leaving) 18:17:02 --- join: MrMobius joined #forth 18:21:46 --- join: proteus-guy joined #forth 18:37:35 --- quit: crab (Ping timeout: 260 seconds) 18:52:00 --- join: crab joined #forth 18:57:51 Ah, the replacement Cortex M4 board arrived today, and it fired up immediately when I plugged it in. 18:58:03 Wonder what went wrong with the other one - it's not like I abused it or anything. 19:09:36 --- quit: sts-q (Ping timeout: 272 seconds) 19:10:55 --- quit: Glider_IRC_ (Remote host closed the connection) 19:11:36 --- join: Glider_IRC_ joined #forth 19:19:06 --- quit: Zarutian_HTC (Ping timeout: 252 seconds) 19:22:44 --- join: sts-q joined #forth 19:42:24 --- quit: Keshl (Read error: Connection reset by peer) 19:42:29 --- join: Keshl_ joined #forth 19:45:08 probably just defective 19:56:59 --- quit: Glider_IRC_ (Remote host closed the connection) 19:58:50 --- quit: crab (Ping timeout: 246 seconds) 20:01:59 --- join: Glider_IRC_ joined #forth 20:03:37 --- part: MrMobius left #forth 20:03:54 --- quit: Glider_IRC_ (Remote host closed the connection) 20:04:36 --- join: Glider_IRC_ joined #forth 20:26:20 --- join: Keshl__ joined #forth 20:26:23 --- quit: Keshl_ (Ping timeout: 265 seconds) 20:50:09 --- join: Glider_IRC__ joined #forth 20:51:15 --- quit: Glider_IRC_ (Remote host closed the connection) 21:02:20 --- join: crab joined #forth 21:07:48 --- quit: crab (Ping timeout: 260 seconds) 21:08:33 I guess. I did work originally. 21:13:47 maw 21:32:53 --- join: crab joined #forth 21:41:14 Hey dave0. 21:41:55 maw KipIngram 21:49:33 KipIngram: are there any big MOSFET transistors visible on the M4 board? 21:50:14 just wondering, I understand they are particularly sensitive to static electricity damage 21:54:40 Geez - I'd need a nice magnifier to tell. 21:54:49 It has to be something of that ilk, though. 21:55:34 So you can run a screen command on the appropriate device and get a Python console with the thing. My goal will be for that to be a Forth console. 21:56:07 My understnding is that you just need to put a properly named and formatted file on the thing and reset it in a particular way and it will flash the file into flash for you. 21:56:36 When you plug it in you can do the console, but it also shows up as a little thumb drive - you can drop a firmware image or a Python program into that drive. 21:56:45 Just as easy as it can be. :-) 21:56:54 They've got the firmware file format documented on their website. 21:57:28 --- quit: ornxka (Quit: ornxka) 22:05:28 --- quit: Glider_IRC__ (Ping timeout: 265 seconds) 22:10:05 --- join: Glider_IRC__ joined #forth 22:10:16 One thing I think would be fun would be to find a gadget like this one, except with bluetooth, and equip it with a small battery - have it so a group of them would find one another and form a mesh network. 22:24:30 siraben - let's avoid mind reading others intentions. The freenode folks did some stupid things in their reaction to a stupid event but clearly they realize their error. Hopefully they'll work through it and get things restored. 22:25:06 proteus-guy: what's this in reply to? 22:25:28 oh I see my reply is to a msg from the 27th... my client was scrolled back and I didn't notice. 22:26:42 siraben - do you know if the scheme guys got their channel restored yet? 22:28:26 proteus-guy: yes, and the topic has been changed to ROT13-encode the move to libera :P 22:28:32 took a while to get in touch with a staffer who wasn't a troll 22:29:16 I'm being serious here, many were not responsive or dismissive 22:30:17 the drama seems to have died down for now, but I've been compiling a list of projects that have moved https://gist.github.com/siraben/df534c378de7adc8e5dca05956f0ca95 , in particular if anyone knows projects or channels that have stayed and announced so publicly, PLEASE let me know 22:32:17 --- quit: cbridge-freenode (Remote host closed the connection) 22:32:29 --- join: cbridge-freenode joined #forth 22:39:00 --- quit: crab (Ping timeout: 258 seconds) 22:46:47 hahaha 22:48:36 #forth has stayed and announced so publicly. But we're happy to bridge with services that support forth as well. 22:50:39 It's worth noting though that the users are split roughly 50/50 across the servers at this point. 22:50:46 But unless it's a commercial project - EVERY project has stayed technically, right? If the old ops are abandoning freenode and going elsewhere then new ops can take over - as it should be. Just because an op leaves does not mean the channel has left. 22:51:37 That's how it seems to me. 22:52:17 crc: around 38.7% (fluctuates and doesn't take into account ldle/matrix bridged users) there's a lot of info here: https://p.datadoghq.com/sb/5c2fc00be-a7ff310d59231e5d808ca2f34f275d02 22:52:36 proteus-guy: Yeah, I guess this list would be for channels and projects that have moved for certain 22:52:45 siraben: I was meaning for this channel 22:52:53 oh right 22:53:29 siraben - again "moved for cetain" is a misnomer. You really think there won't be a #scheme on freenode with new ops and a lot of existing members? 22:54:12 moved for certain = announced so publicly/made the channel invite-only/changed community links on repos and websites 22:54:23 so the citations should help 22:54:46 I can ask about the situation on #scheme, on sec 22:54:48 one* 22:58:26 There's no one to "ask". Eventually there will be a #scheme community in freenode that isn't run by people telling everyone to go elsewhere. That's a natural outcome. 22:59:03 In asking the OP, we've moved, but they're not closing the channel because the OP doesn't want to give rasengan any more "cancel culture" ammunition 22:59:14 ACTION shrugs 22:59:23 the list is there with citations, corrections welcome 22:59:51 I don't approve of people trying to hold freenode channel names merely to keep them from being used for their topical purpose. 23:00:11 If someone isn't actually going to maintain and operate a real, functional *channel*, then they should have the name taken, I think. 23:00:14 it is still being used for its topical purpose, which is scheme discussion 23:00:29 it's just that, almost no one active is there anymore 23:00:36 Especially when their purpose is to hurt freenode and the communities there. It's like the freaking Palestinians and Israeli situation. Absolutely nuts. 23:00:55 People who aren't going to nurture and cultivate the channel shouldn't have control of it. 23:01:00 can we not steer into IRL politics here please 23:01:05 KipIngram, 100% agree. 23:01:24 Sure - I'll hush. But I think I made my point. 23:01:32 siraben - huh??? I was making an analogy. 23:03:18 I'm done with discussing whether or not moving or not was a good idea or whatever, I'm just observing and cataloguing at this point. #forth isn't split, everyone's happy 23:03:36 again if projects are officially holding their ground, please PM me with details 23:07:10 crc: the way the bridge renders /me looks weird 23:07:19 it says ACTION foo 23:07:51 Yes, i need to address that. 23:08:29 Likely sometime tomorrow, along with having it maintain a running log as a backup for clog. 23:08:51 siraben - your observation/list is biased towards a premise that isn't true. The default state is every channel that's not commercial remains on freenode. Only ops and people move. This has no bearing whatsoever as to whether or not the channel remains on freenode available to all who want it. There is no scheme or forth or any other tech "project". 23:09:23 crc: thanks 23:11:06 I should say "trademarked" rather than "commercial" probably. 23:15:03 What's trademarked here? 23:16:31 KipIngram, for example mecrisp moved to hackint. It's a trademarked project where the owner decided to move his project. That's an actual move. Under rules for channels, a trademark owner can prevent his trademark name from being used as a #channel name. 23:16:32 "forth", "c", "scheme", those aren't trademarks. 23:16:39 KipIngram, correct. 23:16:52 forth, inc 23:16:55 --- quit: Glider_IRC__ (Remote host closed the connection) 23:17:08 They don't own the name. 23:17:36 --- join: Glider_IRC__ joined #forth 23:17:38 They own it as a corporation name, just as any corporation owns its name. But they don't own "forth". 23:17:44 Bogen85, trademarks are associated with use. forth, inc owns the name strictly for use as a corporation - not the language itself or its name as an identifier of the technology. 23:17:47 yeah, but it the name of their business, but yeah, not the language name, no 23:17:48 yeah 23:18:02 ^ right. 23:18:27 Chuck Moore could have trademarked it way back when had he wanted to but did not. 23:18:44 So I don't see #c #forth #scheme as trademarks. And IF THEY WERE, it would be freenode that had a claim on them. 23:18:44 But they're not. 23:19:54 Headed to bed. I hope we don't have a second tier war over this. Everyone just needs to get on with their business - there's been enough crap. 23:20:07 indeed 23:20:20 KipIngram, only if freenode owned the trademarks. It's the trademark owners who have exclusive claim. So generally there's a 1:1 association between trademark and commercial entity but that's doesn't have to be the case thus my "clarification" which seems to have added to the confusion. ;-) 23:20:36 Good night! 23:20:53 goodnight KipIngram 23:23:02 --- join: ornxka joined #forth 23:36:48 --- quit: proteus-guy (Ping timeout: 240 seconds) 23:49:58 --- join: proteus-guy joined #forth 23:59:59 --- log: ended forth/21.05.30