2022-06-14 12:40:51 boru: I'm fascinated with small magnetic loop antennas right now. 2022-06-14 13:18:04 Great paper on them here: 2022-06-14 13:18:06 https://www.nonstopsystems.com/radio/pdf-ant/article-antenna-mag-loop-2.pdf 2022-06-14 13:18:37 I'm happy I've geared up to play with "reasonable" dipoles, but it won't surprise me if mag loops wind up being my mainstay once I get into this stuff. 2022-06-14 14:51:36 ACTION read https://pointersgonewild.com/2022/06/08/typed-vs-untyped-virtual-machines/ 2022-06-14 14:52:38 interesting post and I think an dual stack machine vm spec fits well with what the author wants 2022-06-14 14:53:41 fcpu of mine which is inspired by Koopmans book Stackmachines the new wave might be a start 2022-06-14 14:54:35 it basically has 16 direct primitives and one way to call functions 2022-06-14 14:55:29 you could also depend on something that's impossible to throw away, like cobol. 2022-06-14 14:55:52 those direct primitives are: nop um+ and xor 1lbr 1+ @ ! dup drop swap skz >r r> ext exit 2022-06-14 14:57:09 ext is where more infrequently used primitives live, such as rx? and tx! 2022-06-14 14:59:06 infrequently in regards of the usage of instructions 2022-06-14 15:02:23 other indirect primitives could be CloudABI inspired 2022-06-14 15:04:06 just adding filesystem and sockets is enough to easily support most applications. If you wanted graphics then doing vnc over either a socket or just stdio might be enough 2022-06-14 15:05:41 one thing that Forth words fit very well is easy JIT-ing, even just words that are not far from primitives themselfs 2022-06-14 15:06:04 such would provide quite a speed boost at runtime 2022-06-14 15:11:10 such an JIT can start out by just concatinating the native implementation of the primitives used 2022-06-14 15:12:21 and set up a write-watch on the cells were that word definition lives to invalidate the JIT-ed section 2022-06-14 15:14:04 then such JIT sections can be feed through peep hole optimizations to minimize or eliminate much of the inra word datastack traffic 2022-06-14 15:15:28 intra* 2022-06-14 15:16:29 ACTION just realizes he described https://en.m.wikipedia.org/wiki/Binary_translation#Dynamic_binary_translation 2022-06-14 15:50:11 It seems to me the big advantage of dual stacks is it makes the parameters implicit, you just give the operations. With one stack you'd need to specify dimensions for your parameters (i.e. where or how many are hidden under the return address) 2022-06-14 15:59:57 hi, I was just wondering generally about constants in Forth: in C and other languages you can have constants that are meanful at compile time but don't require any memory usage in the target executable/system, but Forth constants require an entry in the dictionary 2022-06-14 16:00:40 was wondering how/if Forthers work around that 2022-06-14 16:03:02 It's been a while, but : five ['] lit 5 , ; IMMEDIATE might do what you want. 2022-06-14 16:03:13 some forths are headless where the dictionary is on a host machine and the forth produces a binary that runs but lacks some of the stuff like word names that take up space 2022-06-14 16:03:20 I don't remember the exact tokens anymore... 2022-06-14 16:04:10 ive used a python script to preprocess forth code where it removes all the lines creating constants and replaces any reference to the constant with its value. basically the same as #define in C 2022-06-14 16:06:32 but that only works if the constant is an immediate rather than something the forth calculates