2024-07-23 09:49:05 who is responsible for https://forth-standard.org? 2024-07-23 09:49:29 as in individuals one could message directly? 2024-07-23 10:31:50 I don't think anyone here is 2024-07-23 10:35:10 is what? 2024-07-23 10:37:20 responsible for forth-standard.org, I presume 2024-07-23 10:38:02 olle: http://forth.chat/logs/libera/forth/2024-07-23 2024-07-23 10:41:02 Oh ok 2024-07-23 10:41:15 Should I use Matrix instead of irssi to preserve IRC history.....? 2024-07-23 10:41:27 Don't wanna leave my computer on all the time :d 2024-07-23 10:41:45 Just use the logs 2024-07-23 10:41:46 a bouncer might help 2024-07-23 10:41:54 http://forth.chat/logs/libera/forth/ 2024-07-23 10:42:29 If you have a server just run irssi or some IRC client in tmux or screen 2024-07-23 10:42:33 That's what I do 2024-07-23 10:42:57 veltas: logs for all channels? mm 2024-07-23 10:43:12 I do have a vts 2024-07-23 10:43:44 A lot of channels have public logs 2024-07-23 10:43:49 (one day libera might implement the IRCv3 channel-history extension and allow you to query the last n messages/messages written in the last t minutes) 2024-07-23 10:44:16 I sort of doubt it, and if they do it will probably be configurable in chanserv 2024-07-23 10:45:11 yeah, I don't belive they would enable it by default either 2024-07-23 10:45:34 I mean channels would be able to opt out, and would have to opt-in if they wanted it 2024-07-23 10:45:47 But I think the legal consequences of logging would put libera.chat off 2024-07-23 10:46:10 Right 2024-07-23 10:46:38 true, I haven't considered the legal point. perhaps only storing the last t minutes might make that easier to moderate 2024-07-23 10:47:28 just enough to give people like olle some context when joining 2024-07-23 10:48:20 Well I hope olle knows now there's a public log of this channel! 2024-07-23 10:48:44 crc might consider putting it in the topic more explicitly although probably nobody will read it 2024-07-23 10:49:37 fwiw I was surprised there was a public log as well. 2024-07-23 12:11:01 I've added a mention of the logs to the topic and channel entry message 2024-07-23 12:27:26 Nive 2024-07-23 12:27:29 Nice* 2024-07-23 21:53:51 Can `if` be defined as a word based on other words? 2024-07-23 21:57:43 You could do it with CASE, I guess. I don't think you could do it if you didn't use _something_ that didn't do some kind of conditional exexcution. 2024-07-23 21:58:03 it's often defined in terms of a word like branch0 and branch1 which sets program execution to a particular point in memory 2024-07-23 21:58:11 but these are usually implementation dependent 2024-07-23 21:58:12 So at some point, there's got to be a branch in the implementation. 2024-07-23 21:58:25 Jump table 2024-07-23 21:58:40 the IF word handle computing the memory locations for the branch instructions 2024-07-23 22:00:10 Yea makes sense 2024-07-23 22:03:12 I think I've seen 0branch more often than the alternatives. 2024-07-23 22:03:46 Often that will be the only primitive conditional operation you have (not counting machine code conditional sections inside primitives). 2024-07-23 22:08:29 apparently leave doesn't work in begin ... again? is there some other way to break out of a infinite loop? 2024-07-23 22:17:42 divide by zero :D 2024-07-23 22:18:55 I think leave is supposed to work with LOOP, not AGAIN 2024-07-23 22:18:58 could be wrong 2024-07-23 22:30:54 Looping is another primitive thing :d 2024-07-23 22:54:06 Branchless BRANCH ... write colon word, get condition into 1 or 0 depending on true or false using arithmetic/bitwise/0<> or whatever's available, and add (0|1)*offset to R@ before exiting the word 2024-07-23 22:54:41 But I can't think of a legitimate reason for not just implementing it in machine code, given that it's probably easier than that 2024-07-23 22:57:41 dlowe: from my testing that is the case 2024-07-23 22:59:42 For example, if 0= is allowed, something like: : BRANCH 0= R@ @ AND R> CELL+ + >R ; 2024-07-23 23:02:01 0= is going to return 0 or -1, so you would need a "1 and" in there or something 2024-07-23 23:02:29 or negate i guess 2024-07-23 23:02:53 If it's -1 then I AND and get the offset 2024-07-23 23:03:00 If it's 0 I AND and get 0 2024-07-23 23:03:31 -1 is actually more useful than 1, I found when writing it in IRC 2024-07-23 23:03:41 yeah 2024-07-23 23:03:56 : branch 0= cell and r@ + r! ; 2024-07-23 23:04:35 well, no. that doesn't jump over the parameter in the 0 case. whatever, forth is hard. 2024-07-23 23:04:44 Agreed 2024-07-23 23:05:07 Did you see my code? 2024-07-23 23:05:26 i saw this : BRANCH 0= R@ @ AND R> CELL+ + >R ; 2024-07-23 23:06:13 and now i realize i misunderstood it 2024-07-23 23:06:38 because i forgot r@ is going to give you the address of the offset, not the offset. sorry, i've been away from forth for a few weeks. 2024-07-23 23:29:18 I don't blame you, I'm currently mucking around with Lua 2024-07-23 23:29:23 On a Lua holiday