2021-06-23 00:25:01 maw 2021-06-23 00:29:30 mawaw 2021-06-23 01:51:39 Arm Thumb has like 10 different ADD instructions based on the nature of the arguments provided. Do most FORTHs make use of several versions of things like ADD or just choose one and tha 2021-06-23 01:55:26 I guess you'd usually use the register version when defining "+" and im not sure when all the other ones might have a use except while implementing your base words 2021-06-23 08:20:14 not ARM, but in the x86 assembly implementation of retro's vm I only see two ADD forms used 2021-06-23 08:20:40 crab, youre usually stuck with one ADD instruction for something like + even if one of the other forms would be much more efficient 2021-06-23 08:20:50 addi - Add immediate to register 2021-06-23 08:20:50 addr - Add register value to register 2021-06-23 08:21:03 you might use the other forms for words that ADD like CMOVE or something else adding internally 2021-06-23 08:50:17 I asked about it before, but again for those okay to answer again. What's your favorite standard? 2021-06-23 08:50:23 Especially in terms of the document itself. 2021-06-23 10:50:20 jonesforth is really engaging to read 2021-06-23 13:30:41 morning 2021-06-23 13:30:54 jonesforth didn't jive with me when I read it 2021-06-23 13:31:02 it just didnt *click* 2021-06-23 13:35:28 its pretty dense and I'm not really a fan of the literate style. but has really helped with my mental model of how the execution of forth works 2021-06-23 14:32:48 I rencently found "Programming a Problem Oriented Language" and that has been a great help for me 2021-06-23 14:39:44 i'll check it out, crab. thanks 2021-06-23 17:18:24 crab: I found porting eForth to the DCPU-16 more illuminating than jonesforth 2021-06-23 17:19:24 it ran usably quickly in one of those dcpu-16 webbased emulators 2021-06-23 17:20:28 and I did the line editing in the forth not in the emulator 2021-06-23 17:21:04 the emulator was not even jitted or anything like that! 2021-06-23 17:22:52 -!- ChanServ changed mode/#forth -> +o proteusguy 2021-06-23 17:28:40 maw 2021-06-23 17:29:42 maw 2021-06-23 17:30:07 maw crc 2021-06-23 17:50:14 maw 2021-06-23 17:53:02 there's seriously still people on fn? 2021-06-23 17:53:05 ACTION is very surprised 2021-06-23 18:03:13 cd: some, yes 2021-06-23 18:20:25 brainfunnel: jonesforth shows you how a forth *can* be implemented 2021-06-23 18:20:33 there are lots of other ways to do it 2021-06-23 19:01:26 crest: this is what sort of makes it overwhelming haha, the degree of freedom on offer in terms of how you could do it 2021-06-23 19:37:01 are there any optimizing forths that are similarily easy to follow as jonesforth? 2021-06-23 21:59:52 NieDzejkob, most forths dont optimize like a c compiler 2021-06-23 22:00:07 NieDzejkob, Mecrisp forth is one you could look at. not sure how easy it is to follow 2021-06-23 22:48:10 I wouldn't use Mecrisp to learn how to implement a Forth, but if you have a decent idea already it's easy enough to follow. 2021-06-23 22:48:46 brainfunnel: I'm coming in late here, but one of the first decisions you need to make is what "threading" model to use. The big three are code threading, direct threading, and indirect threading. 2021-06-23 22:49:14 In this context "threadding" has nothing to do with code threads you hear about in other places. 2021-06-23 22:49:26 You could say "sequencing" instead, but no one does. 2021-06-23 22:50:56 I was once discussing those options with a friend in another channel, and another guy who'd done a lot of C programming over the years was trying to follow along while trying to fit what we were saying 2021-06-23 22:51:04 Needless to say, he wound up kind of baffled. 2021-06-23 22:51:39 And annoyed - he was the one with a CS degree and nothing we were saying made any sense. :-) 2021-06-23 22:52:33 The source code for FIG Forth used to be online. 2021-06-23 22:52:51 OLD code. 2021-06-23 23:07:38 KipIngram: You forgot Token Threading. :D 2021-06-23 23:28:59 Ah, you're right - I did. I've never really quite regarded it as on the same level, but I suppose it is. 2021-06-23 23:31:02 Token threading would be a lot like indirect threrading, wouldn't it? Just with the CFA's all packed together into a table instead of spread out through the headers? 2021-06-23 23:31:28 I'm thinking of NEXT - you'd pick up a token, and use it to index into a table, and the table entry would point to the code you needed to execute. 2021-06-23 23:31:46 That's almost exactly an indirect threading NEXT. 2021-06-23 23:32:19 I don't say that to deny it a place in the list - I was just thinking about how it would be implemented. 2021-06-23 23:33:06 Except that in a token threaded system I'd expect the tokens to be smaller than the addresses the other models use.