2021-09-14 03:20:40 agreed with most of that. forth can get tricky when trying to flow through conditional branches (dup dup dup ... drop) and keeping track of the stack in your head is definitely a learned skill 2021-09-14 03:21:08 but at the level of a LOGO, or whatever, it hardly matters if you're typing "forward 10" or "10 forward" 2021-09-14 08:08:25 Yup 2021-09-14 08:08:44 And if you want variables even then forth allows easy variables, like with CREATE etc 2021-09-14 08:08:52 VALUE, VARIABLE 2021-09-14 08:09:09 Don't need to try and win any prizes with your early Forth code 2021-09-14 08:10:24 And DO...LOOP is really not that much different to LOGO's REPEAT 2021-09-14 15:37:21 oh, 2021-09-14 15:37:31 I'm not afraid of variables! :) 2021-09-14 15:38:39 My embedded C code is chock full of globals, and it makes system programmers nervous to look at. Same with my Forth... 2021-09-14 15:39:13 I guess I think of things that represent the machine state as being intrinsically (physically?) global anyway, so it doesn't worry me much. 2021-09-14 15:40:16 I _do_ understand that there's a bit of a performance hit, but that's never been my bottleneck. I _have_ noticed the difference in execution time between code in RAM and code in flash, though. That was a head-scratcher for a while. 2021-09-14 15:52:56 performance hit and space hit since youre not reusing spacelike you would for locals in C 2021-09-14 15:53:38 use one big function that contains all the globals as locals 2021-09-14 16:16:34 ...or disguise them as singletons 2021-09-14 16:17:46 ACTION is a proud member of the Global Variables Liberation Front 2021-09-14 16:42:39 hexagon5un: Yeah machine state is essentially 'global' in every sense so using globals corresponding to machine state makes sense 2021-09-14 16:43:23 I tend to try and fit all my driver state into the relevant hardware registers, i.e. have a single point of truth 2021-09-14 16:44:03 The only globals I make tend to be const, or mostly const 2021-09-14 16:44:25 I forgot to mention CONSTANT earlier 2021-09-14 16:45:38 Worrying about performance based on global/local usage is premature optimisation IMO 2021-09-14 16:45:55 The real reason to avoid globals are semantic