2023-09-13 03:48:45 Ok, sometimes is the simple little things that are satisfying. Watching a Wildberger video. Simple stuff; he's introducing the basic principles for later. So, I've always known that if you have two lines ax+by=c and dx+ey=f, you can go through a bit of a rigamarole and find their point of intersection. Little system of equations, solve it, etc. 2023-09-13 03:49:01 But what he just demonstrated is that you can place your lines in what's called the "projective form": 2023-09-13 03:49:25 (-c, a, b) and (-f, d, e). 2023-09-13 03:50:01 You can put points in projective form too; the point x, y gets written as [1, x, y]. Note the [] for points and () for lines. 2023-09-13 03:50:31 Anyway, now the components of the point of intersection of your two lines is just the components of the cross product of the two projective lines. 2023-09-13 03:50:35 Bam bam and done. 2023-09-13 03:50:49 I know it's ultimately the same arithmetic, but it's PACKAGED in a much more conceptually simple way. 2023-09-13 03:51:21 And, what's even cooler, is that there's a duality. If you have two POINTS and want the LINE that they form, the components of that are exactly the same thing: the components of the cross product of the two projective points. 2023-09-13 03:51:26 now that is just quite cool. 2023-09-13 03:51:52 So the cross product arithmetic just flips you back and forth between the two "meanings." 2023-09-13 05:47:27 xelbar: I think something like foo←4 4⍴0 will give me a dictionary entry foo which will behave as a Forth variable - executing it will leave it's address on the stack. And of course it's initialized a 4x4 integer array. 2023-09-13 05:48:00 Now, I DON'T know if that's going to create a standad Forth header. The namespaces may not mingle exactly that way. 2023-09-13 05:48:37 I haven't thought yet about how to make Forth aware of APL symbols, or vice versa. 2023-09-13 07:20:01 KipIngram: Forth dictionary doesn't really play well with growable data, right? Something like `A←1 0 1 ⋄ A←1e6⍴A` would probably need to create a whole new A. 2023-09-13 07:22:45 I wonder if it should be turned on its head. Probably easier to emulate a stack as an APL array than the other way around. 2023-09-13 07:23:58 Should we, instead, be thinking how bootstrap an APL minimalistically a la Forth spirit? 2023-09-13 12:36:46 I'm not talking about the data - talking about the header. 2023-09-13 12:37:43 I'll need some kind of "management of RAM I'm sure. 2023-09-13 12:38:16 I was talking there just about the name. 2023-09-13 12:38:51 I feel sure I'll need a heap of some kind. 2023-09-13 12:44:04 a heap of trouble? 2023-09-13 13:00:24 Heh. Yeah, likely. :-) 2023-09-13 13:01:46 Anyway, I think being "type aware" and having the kind of dynamics I expect from a scientific computing facility will require a heap, and the stack will only ever contain pointers into the heap. And likely named variables will also only hold pointers. 2023-09-13 13:02:55 You wouldn't technically have to handle integers that way - they could still be "native" integers, but my guess is that a totally consistent approach over all data types will be desirable. 2023-09-13 13:08:37 historically Forth used kebab-case or lisp-case? e.g. `1 2 3 my-word` ? 2023-09-13 13:21:13 Yeah 2023-09-13 13:21:41 KipIngram: I suppose I'm not a novice but I'm not an oldie or an expert 2023-09-13 13:22:19 Part of reason I seem more knowledgeable is because Forth is simple and approachable 2023-09-13 16:06:16 rendar: I don't really associate that sort of "case discussion" with Forth very much. The main naming advice I've seen is "try to choose names that lead you to a 'lexicon' for your application." 2023-09-13 16:06:42 Running your application should be almost like "talking about the application." 2023-09-13 16:06:56 So you'd use words that were already familiar in that particular area and so on. 2023-09-13 16:07:10 Make the application seem intuitive to people familiar with the field. 2023-09-13 16:07:43 Personally I tend toward short names, all lower case, and often feature symbols. 2023-09-13 16:08:12 I like an almost mathematical notation. 2023-09-13 16:08:31 KipIngram, yeah i agree 2023-09-13 16:09:08 So I'm still watching Wildberger videos. He's going through Bernoulli's approach to summing powers, which has use in evaluating slowly converging power series and so on. 2023-09-13 16:09:21 It feels like another topic that "should be taught routinely and isn't." 2023-09-13 16:09:34 I've really begun to notice how "minimalist" our public education has become. 2023-09-13 16:09:43 They just set a really, really low bar. 2023-09-13 16:09:56 https://i.imgur.io/mKyVTnL_d.webp?maxwidth=640&shape=thumb&fidelity=medium 2023-09-13 16:10:01 ahahahahaha 2023-09-13 16:10:37 My cat is nice too. 2023-09-13 16:11:28 i did not know my lang supported emojis 2023-09-13 16:11:33 We have two cats and two dogs, and I like all of them, but I'm just particularly sweet on one of the cats. 2023-09-13 16:11:42 :o 2023-09-13 16:11:47 i want a cat 2023-09-13 16:11:53 Cats are awesome. 2023-09-13 16:12:30 He had a whole pile of medical difficulties his first couple of years - I think taking care of him through all that made me feel more strongly toward him. 2023-09-13 16:12:49 note how the word redefinition affects other words btw 2023-09-13 16:13:31 And the story of how we got him is really good. My wife found him on the neighborhood Facebook page. A guy who works in downtown Houston (like 30 - 40 minutes away) left work one day and headed home on the interstate. 2023-09-13 16:13:34 It was winter. 2023-09-13 16:13:46 After a few minutes he started to hear mewling / screaming. 2023-09-13 16:13:58 💦 returned a list, but later was redefined to return 1 2 3 2023-09-13 16:14:02 The kitten had crawled up into his truck engine, no doubt because it was warm. 2023-09-13 16:14:09 and was still there when the guy started driving. 2023-09-13 16:14:18 It's a miracle he survived it. 2023-09-13 16:14:29 oh did not change it's definition, but just uses the last definition as the other no longer exists 2023-09-13 16:14:32 Anyway, it got hot and he started to cry - his little foot pads were burned etc. 2023-09-13 16:14:45 We took him in, and he's been terrific. 2023-09-13 16:14:48 Apollo. 2023-09-13 16:15:16 He's almost four. 2023-09-13 16:15:24 it's a bit sad actually 2023-09-13 16:16:02 that's why you say you are sweet with this one 2023-09-13 16:16:15 Anyway, the other education thing this made me think of was dimensional analysis, which just really isn't taught SERIOUSLY in engineering curricula anymore. 2023-09-13 16:16:33 The may mention it, but what they're talking about is in no way as sophisticated as the subject gets. 2023-09-13 16:16:55 I found a good paper on it one day and all while reading it I was just thinking WHY DO THEY NOT TEACH THIS????? 2023-09-13 16:17:24 It's almost as though the attitude is "If we can find a way to avoid it, we will." 2023-09-13 16:21:13 i wouldn't expect too much from university 2023-09-13 16:26:53 I think there's an aversion these days to having "differences" show between the best and worst students. They want a "homogeneity." 2023-09-13 16:31:45 i wonder about representing statements as objects 2023-09-13 16:31:58 like you have a loop object 2023-09-13 16:32:09 or iterator object 2023-09-13 16:40:18 That HP RPL lets you store code strings in variables. 2023-09-13 16:40:34 In fact that seems to be its primary way of storing code. 2023-09-13 16:50:31 i use lists as code 2023-09-13 16:50:43 like a colon word 2023-09-13 16:51:10 i'm wondering lately if making ( execute actual lisp code 2023-09-13 16:51:34 i could have a way to get an element from the stack 2023-09-13 16:51:55 and it would use the same environments so variables would be available there 2023-09-13 16:52:40 i always wanted to have a word like 'lisp' that takes a list and executes it as lisp code 2023-09-13 16:53:06 but optional arguments and alike make it a bit hard to blend with a stack based lang 2023-09-13 16:53:14 well it's not 2023-09-13 16:53:39 a lot of languages use a stack internally 2023-09-13 17:05:39 KipIngram: This is a thing I've heard of before, cats crawling into enginers 2023-09-13 17:05:44 engines* 2023-09-13 17:05:53 Apparently if you park with wheels straight they can't get in (as easy) 2023-09-13 18:07:42 Interesting. Anyway, that guy's family didn't feel like they could add a cat, so they posted and my wife just saw him and decided we needed him. We had just lost our family dog a few months before - she first said "No more pets," but I think by the time of these events she'd gotten through part of the mourning process. 2023-09-13 18:09:49 cats aren't pets, they have staff 2023-09-13 18:14:50 :-) 2023-09-13 18:14:55 Or maybe we're their pets. 2023-09-13 18:15:04 They graciously share their home with us. 2023-09-13 18:15:26 My wife read me a joke once. I probably won't get it quite right, but it ran like this: 2023-09-13 18:16:14 Dog: "They feed me. They take care of me. They play with me. They must be gods." Cat: "They feed me. They take care of me. They play with me. I must be a god." 2023-09-13 23:43:16 Oooo. Dimensional analysis. It dawned on me not too long ago that it's essentially a kind of type inference. 2023-09-13 23:44:19 I read about someone who, brilliantly, goes a step farther and elaborates beyond the standard types/units. 2023-09-13 23:56:28 so i guess that also words like "ispos?" "isnan?" ">0" "isnil?" should consume the value and put a bool in the stack, right?