2022-08-10 13:06:17 You know, every time I visit StackExchange while just nosing around for info on something (might be programming, might be physics, whatever) I wind up annoyed. 2022-08-10 13:06:38 Seems like a big part of the SE culture is to nitpick one another, accuse people of not answering questions, and so on. 2022-08-10 13:06:52 It's annoying as hell - how did those folks get so damn proud of themselves? 2022-08-10 13:07:15 It's just people sharing thoughts - get over yourselves. 2022-08-10 13:07:32 I used to try to participate, but I just gave up on it years ago. 2022-08-10 13:07:37 I just lurk these days. 2022-08-10 13:08:47 I have to keep my skills halfway dull somehow 2022-08-10 13:08:47 And inevitably there will be a response along the lines of "Why would you even want to know that? You're an idiot to even be thinking that way." 2022-08-10 13:09:20 The main point of the response being to showcase how the responder is NOT an idiot and is SO SO MUCH better than the person asking the question. 2022-08-10 13:13:55 Anyway, it just doesn't come off to me as a group of people genuinely interested in helping one another - it's more like a bunch of folks that want to strut and think of themselves as some sort of elite. 2022-08-10 15:01:36 I'm working through a series of machine learning lectures as part of my work continuing education requirement. 2022-08-10 15:01:55 Neural networks are pretty cool, and touch on parallel computing enough to be fun in that respect too. 2022-08-10 15:02:16 neural networks: how to mostly get XOR right after burning a lot of CPU 2022-08-10 15:03:04 :-) 2022-08-10 15:03:22 Zarutian_HTC: Bitgrid would be a worthwhile way to think about implement NN's. 2022-08-10 15:04:23 Though it's probably going more "primitive" than absolutely necessary - there's an example where increasing the sophistication of the nodes instead of staying entirely generic would probably increase final performance vs. hardware bang for the buck. 2022-08-10 15:05:09 You know in NN you're going to need multiply/accumulate operations, so no need to use architecture flexibility to make those - you'd be better off hardwiring them. 2022-08-10 16:51:33 I'm not sure if I want a return stack 2022-08-10 16:51:58 never wanted it, but asked some guy cool features to add and he said 'tco' 2022-08-10 16:52:11 the return stack provides it 2022-08-10 16:52:33 and also allows for continuations 2022-08-10 16:53:51 also it triggers me to have one stack when this channel says "If you have two (or more) stacks you're welcome 2022-08-10 16:54:04 :/ 2022-08-10 17:01:32 why dont you want a return stack? 2022-08-10 17:01:39 you will have one anyway 2022-08-10 17:03:58 eris[m]123: I'm using perl to write a concatenative lang, I don't really see the need of a return stack, I mean, when I see a colon word (they are perl arrays) I just make a foreach and interpret all the elements. 2022-08-10 17:05:05 But I'm rewriting it cause it was very different and it had no "parser", it was just a bunch of regex converting the code into an array. Now I want to do it a bit more like forth 2022-08-10 17:05:27 that is, words are able to read from the source code and they're really part of the parser 2022-08-10 17:05:46 but the return stack can provide me tail cail optimization 2022-08-10 17:12:59 Can the words call other user defined words? 2022-08-10 17:15:06 they're actually a list of strings xD 2022-08-10 17:16:25 I mean it's exactly the same as if I were reading code, a colon word is a list and code in this lang is a list 2022-08-10 17:16:51 when a colon word is found it will call interpret_list 2022-08-10 17:17:14 which is just a foreach that interprets all the atoms, if it finds a word there will call interpret_list again 2022-08-10 17:17:59 but for example looping forever will blow the perl stack 2022-08-10 17:18:11 a return stack avoids that 2022-08-10 17:18:46 so you do have a return stack then if the parser is recursive. you just don't see it 2022-08-10 17:19:09 parser/interpret_list 2022-08-10 17:19:13 it's the perl call stack, I have crossed recursion between interpret atom interpret list and execute word 2022-08-10 17:19:32 execute word calls interpret list if it's a colon word 2022-08-10 17:19:40 interpret list calls execute word 2022-08-10 17:19:50 (if it finds a word) 2022-08-10 17:21:35 and actually I'm rewriting everything from scratch so it's a good time to try with a return stack 2022-08-10 17:22:00 atm I only want make the words able to read code, like forth does 2022-08-10 17:23:13 but even if it's likely I don't need a return stack, nor even tco, now I could start having both 2022-08-10 17:24:56 what happens in the return stack when the INTERPRET colon word is executed for the first time? 2022-08-10 17:26:00 I mean, the return stack once forth starts has already the interpret word there 2022-08-10 17:26:52 so I just put it there at first, in my case they'll be arrays, I don't have memory allocation at all, so I would put the colon word + the index 2022-08-10 17:28:21 but maybe it's just conterproductive 2022-08-10 17:28:27 counter* 2022-08-10 17:28:53 You can always jump to the first word instead of a subroutine call if you don't want the address in the stack 2022-08-10 17:31:20 how I'm supposed to jump there 2022-08-10 17:32:04 I'd like to avoid the crossed recursion I have, so it's likely the return stack is the best option 2022-08-10 17:32:44 I'll try, but I'm not sure about what I should do at the start 2022-08-10 17:33:05 I just put the word INTERPRETER and a index of 0? 2022-08-10 17:33:55 I need to put the name + index cause there's no memory address 2022-08-10 17:34:31 I shouldn't put the whole array I suppose, so just the name 2022-08-10 17:35:04 so every item in the return stack would be an array of two items, the name and the index