00:00:00 --- log: started forth/19.03.02 01:18:48 --- quit: yrm (Quit: yrm) 01:28:12 --- quit: cantstanya (Write error: Connection reset by peer) 01:31:35 --- join: dddddd (~dddddd@unaffiliated/dddddd) joined #forth 01:35:37 --- join: cantstanya (~chatting@gateway/tor-sasl/cantstanya) joined #forth 02:04:36 --- quit: ashirase (Ping timeout: 246 seconds) 02:07:31 --- join: ashirase (~ashirase@modemcable098.166-22-96.mc.videotron.ca) joined #forth 02:40:37 --- part: inode left #forth 02:42:24 --- join: `presiden (~presiden@unaffiliated/matematikaadit) joined #forth 02:50:44 --- join: proteusguy (~proteusgu@cm-58-10-208-131.revip7.asianet.co.th) joined #forth 02:50:44 --- mode: ChanServ set +v proteusguy 03:00:58 --- quit: dddddd (Remote host closed the connection) 03:14:15 --- quit: proteusguy (Ping timeout: 250 seconds) 03:26:09 KipIngram: i'd saw NEXT's implementation of DTC/ITC they seems not reduce the code size compared to call/ret, but consider its x86, so is that call/ret were slower than those NEXT instructions? 03:26:40 i am interesting how a RISC forth's NEXT speed compared to the similar call/ret 03:26:59 --- join: proteusguy (~proteusgu@cm-58-10-208-131.revip7.asianet.co.th) joined #forth 03:26:59 --- mode: ChanServ set +v proteusguy 03:37:09 hi 03:37:24 yunfan: are you implementing a forth? 03:42:30 corecode: nope, its my goal, but currently i am just learning arm asm. the x86 isa made me headache :[ 03:43:16 why 03:44:16 corecode: maybe my brain cant handles too many specific instructions :D 03:44:28 i prefer risc familly 03:51:50 you don't need that many instructions 04:48:27 Writing Elixir is cool, because of the pipeline operator 04:49:15 it kind of gives you the implicit parameter passing you'd get in Forth, but in a procedural style 05:01:26 <`presiden> function composition? 05:01:38 <`presiden> a.k.a pointfree? 05:04:22 f() |> g() |> h() 05:04:27 ...I guess yeah 06:19:06 yunfan: Exactly which approaches save space (and for that matter run faster) varies from processor to processor. Forth was more likely save space back when the common Forths were 16-bit; when you go to 32-bit everything is twice as large, and you might not win on space anymore. And if you did a true 64-bit implementation, Forth would start to get pretty fat. 06:20:00 why? 06:20:26 Why fat? 06:20:51 Because the cells in your definitions and headers and so on are 2x or 4x their size in a 16-bit Forth. 06:21:03 Now, you could still do a 16-bit Forth even on a 16-bit processor. 06:21:15 But if you did adopt the larger cell size, your system gets bigger. 06:22:36 I did a hybrid architecture on mine. My stacks, variables, and so on are 64 bits, but the cells in my headers, definitions, etc. are just 32. 06:23:26 for an n-bit forth, only your stack cells and general memory @! has to be n-bit, no? 06:23:48 how you structure your wordlist is completely up to you 06:23:51 I think it would be fair to call that an n-bit Forth, yes. 06:24:03 I call mine a 64-bit Forth, in spite of the smaller internal cells. 06:24:15 they don't even have to be cells 06:24:38 What I meant by the above comment is that if you choose a larger size for your system structure, the code becomes bigger. That's all. 06:24:50 You could make a 64-bit data Forth with 16-bit internals. 06:25:01 why does the code become bigger? 06:25:22 :-| If each cell of your definition is bigger, then the definition is bigger overall. 06:25:31 I'm somehow not communicating here. 06:25:56 --- join: dddddd (~dddddd@unaffiliated/dddddd) joined #forth 06:26:01 but your definition doesn't need to use cells 06:26:33 you can do token threaded code, subroutine threaded code, whatever 06:26:33 :-| Did you read what I typed above? 06:26:59 well, if it's bigger it's bigger is of course correct 06:27:02 IF you use 32-bit units in your inner workings, rather than 16, then your definitions and in general your whole system will become twice as large. 06:27:09 --> IF <-- 06:27:20 yea but that's a tautology 06:27:25 Yes, it is. 06:27:41 That's why it was baffling me that we were haggling over it. 06:28:13 But yunfan was asking about the topic, and I was just pointing out that to some extent the evolution of typical Forth systems has taken away some of its size advantages. 06:28:21 i think i must have expected you to imply more 06:28:39 No, I was being pretty darn obvious. 06:28:48 because "larger is larger" is 0 information, and why would you make a 0 information statement 06:29:18 Forth developed a reputation for "compact" in its early years, and a lot of people still hear that and expect it. 06:29:20 i mean, obviously you design a forth for the specific target system 06:29:27 It's not "as true" as it once was. 06:29:32 why? 06:29:33 I was just trying to explain. 06:29:43 I'm done. I think you're trolling. 06:29:43 if you do it right, it can be compact 06:30:00 If you do it to be compact it can be compact. 06:30:00 ok 06:30:07 If you do it to optimize other things it may not be. 06:30:19 yes, like everything in engineering 06:31:07 So, have I somehow annoyed you along the way? Because you've seemed particularly nit-picky every time we've communicated the last few days. 06:31:40 don't take it personal 06:31:52 it's not about you, it's about the information 06:33:14 This isn't a formal debating forum; it's just a friendly chat room. Not everything everyone says is going to be perfectly crystalized. Or even completely thought through when voiced. 06:33:38 and feedback can help crystalize it 06:33:42 and formulate it better 06:41:25 my system is purely 32-bit for all but floats; nothing in it is 8, 16, or 64-bit. 06:44:22 (floats, when enabled, exist on their own stack, with words to encode/decode them into 32-bits if they need to be stored outside the stack) 06:45:18 In my model, switching to 64-bit would double the size of the system and not bring any improvements to performance. I'd get a greater number range, but 06:45:36 I don't need that currently. 06:45:46 crc: I just use the FPU stack for floats, so it's limited depth. 06:46:07 My reasoning was that I got a lot done with my old HP calculator, which had a stack only half as deep. 06:46:17 But whether I'll be happy with that long term or not I'll have to see. 06:46:28 It just seemed like the best performance. 06:46:58 * Zarutian doesnt support floats at all other than via a proper numerical tower 06:47:03 Yes, that's why I decided to implement 32-bit internals. I just didn't see that 64 would really buy me much practically speaking. 06:49:05 My float stack currently allows 8k items (though I may drop that, as nothing I have uses that many values) 06:50:23 Wow - that's a bunch. 06:51:39 stacks are 4000 items for data, 12000 for addresses, 8000 for floats 06:51:58 Nice. 06:52:41 My memory pages are 4k bytes right now - I use one for each task block. At the low end of that block is a handful of variables, and the rest of the 4k is split between the data and return stacks, growing toward one another. 06:53:07 So I have room for a few hundred. 500 or so total. 06:53:12 much deeper than necessary, but gives me lots of headroom to do deep recursions and keeping things around without resorting to ram, which is *slow* in my system 07:04:55 --- quit: Zarutian (Read error: Connection reset by peer) 07:05:12 --- join: Zarutian (~zarutian@173-133-17-89.fiber.hringdu.is) joined #forth 07:24:09 Why such a deep stack? 07:24:36 If you're not using RAM, what are you using? 07:24:48 crc: 07:28:18 I'm guessing he just meant that the words he uses to access RAM other than stack operations are less efficient. 07:28:49 KipIngram: the graphical user interface made many things possible that would be unthinkable with CLI, image editing, music composition, diagram drawing etc. What concerns me is that some GUIs have replaced the more efficient parts of command lines for end users, such as navigating the file system, doing searches etc anything text based 07:28:49 Not that the stacks aren't in RAM. But I may be wrong. 07:29:00 Just caught up with the chat 07:29:10 Yes, that's exactly how I feel about GUIs. 07:29:17 Sometimes they're absolutely needed, for the application at hand. 07:29:30 But often they're just slapped on top of something that could certainly be done fine without them. 07:29:41 Because "people love GUIs." 07:29:48 "Expect" them, so to speak. 07:29:49 But replacing a clearly superior tool with an inferior one is not good 07:29:57 Exactly 07:29:59 I totally agree. 07:30:12 The problem is worse on mobile 07:30:41 Well, maybe. There's almost no such thing as *good* text entry on a phone. 07:30:54 Even the best solutions are inferior, in my eyes, to a good keyboard. 07:30:59 I cannot do anything apart from some typing and reading, I do have a shell app but the lack of physical key presses makes it hard 07:31:17 I use Swype on my Android phone, and I'm pretty happy with it. 07:31:28 Right, I'm actually using swipe to type right now (Gboard) 07:31:47 Not perfect, but it works for this clunky interface. 07:32:03 I use the actual Swype app keyboard, just because I find it more visually aesthetic. 07:32:41 And because people who are joining the internet and who are computing for the first time are using phones, this again makes them passive users 07:32:56 Also, graphical interfaces are less likely to perform well over a remote connection. 07:33:12 Whereas a console CLI connection usually works so well you can't tell you're remote. 07:33:14 I do love GUIs but only for specific domains 07:33:24 Right. 07:33:28 Right. I think we're in exactly the same camp here. 07:33:56 I've honed my workflow in my job so that I can do 99% of it with a simple ssh / mosh connection. 07:33:58 And people say CLI is hard, I like GUIs are much harder 07:34:22 There are one or two things that require a GUI, and I always grimace a little when I have to do those. 07:34:25 Can't chain together operations on interfaces 07:34:42 I use Emacs for anything that doesn't need a web browser 07:34:50 People think GUIs are easy because there's always a menu system for people who haven't learned their apps. 07:35:14 They make it easier to "do things without knowing what you're doing." 07:35:32 "oo shiny button" 07:35:37 :-) 07:35:50 Also I can switch easily between tasks on the command line 07:35:58 Window open/close animations, etc. People seem to just love that stuff. 07:36:02 Switching between apps or windows is much more confusing 07:36:17 I like the i3 window manager 07:36:37 No animations, tiling, blazing fast 07:36:50 Good. It would be more power efficient too. 07:37:10 When I see those fancy animation effects, I usually just think "There goes more of my battery life than was necessary." 07:37:44 It's funny that people can wait ten times longer with an animation 07:38:12 Also, moving your hand away from the keyboard to the mouse - that actually takes a long time. 07:38:28 It's well known that a short freeze "feels" longer than a spinning circle 07:38:31 I like keeping my hands as close to home position as possible. 07:38:57 And people wait seconds to open their documents in a browser! 07:39:17 I wish there were a collaborative real time editor like Google docs but for Vim or Emacs 07:39:52 Or a generic protocol 07:40:05 there's a bunch of collaborative editing plugins for vim, but i haven't tried any of them 07:40:48 Smalltalk systems get GUI done right. Introspection, composition, modularization 07:41:09 Modern desktops are a step backwards 07:41:40 And this is coming from someone whose first use of a computer ran Windows XP! 07:42:34 siraben: I use ram when necessary, but my processor is a MISC-based stack processor. Memory access requires multiple instructions ([push address to stack, fetch], [push value to stack, push address to stack, store]). The essential few stack operations are just one each, and can be done more quickly. 07:42:46 I'm not familiar in detail with Smalltalk. 07:43:03 Message passing, object orientated 07:43:18 my stacks are part of the MISC processor, not in addressable RAM 07:43:27 I see 07:43:56 Will have to sleep now, later folks 07:43:59 Ah, ok. 07:44:05 Night, siraben. 07:59:24 I use infinoted for simple collaborative real time edit 08:04:33 crc: what is MISC? 08:05:04 moderate? 08:05:10 minimal? 08:05:41 minimal instruction set computer 08:06:03 so a turing machine? 08:06:20 read, write, and move? 08:07:22 not that minimal 08:07:24 http://www.ultratechnology.com/mup21.html 08:09:55 http://forth.works/eb5b34291c6172c822a147f18c93ac7d is a summary page and http://forth.works/37ca950ce0822f43c344df4fa5d65962 is the C source for the emulated processor I use (sans platform specific I/O devices) 08:10:44 I have 30 instructions 08:12:51 ok 08:12:56 i think i have fewer 08:13:05 but then, i do different things 08:14:07 --- quit: rprimus (Ping timeout: 250 seconds) 08:14:31 maybe i should optionally support multiply and multiply/add 08:16:04 --- join: rprimus (~micro@unaffiliated/micro) joined #forth 08:17:31 I could reduce this to about 15-16 instructions, but these are what I have settled on as a comfortable set over the last decade of use. 08:32:54 --- quit: proteusguy (Ping timeout: 244 seconds) 08:39:04 i'd love a review on my design to see how i could improve it 08:39:46 do you have a link to it? I'll have some time later today to look at it 08:40:00 sec 08:40:09 https://github.com/corecode/forth-cpu/tree/master/rtl 08:42:27 thanks 08:49:54 https://github.com/corecode/forth-cpu/blob/master/tb/cpu_tb.v#L91 instruction set 09:09:01 What is OP_EXECUTE? 09:10:21 well, like execute 09:10:30 indirect call to TOS 09:10:47 ok 09:11:28 given that the stack ops are exposed in the instruction encoding, there are other opcodes possible as well 09:12:13 OP_BRANCH, OP_0BRANCH, OP_CALL take the target address as an operand? 09:12:42 yes 09:12:54 sounds good 09:12:57 OP_LIT takes an immediate too 09:13:13 single cycle execution for all opcodes 09:14:30 The instruction set looks reasonable to me 09:15:14 I'll take a closer look later, have to go to a lunch meeting in a few minutes 09:24:30 * Zarutian got it the number of primitives down to less than sixteen 09:36:24 --- join: proteusguy (~proteusgu@cm-58-10-208-131.revip7.asianet.co.th) joined #forth 09:36:24 --- mode: ChanServ set +v proteusguy 09:52:19 --- quit: MrMobius (Ping timeout: 255 seconds) 09:54:46 --- join: MrMobius (~default@c-73-134-82-217.hsd1.va.comcast.net) joined #forth 09:55:06 --- quit: dave0 (Quit: dave's not here) 10:04:01 --- quit: proteusguy (Ping timeout: 255 seconds) 10:08:35 --- quit: nighty- (Remote host closed the connection) 10:17:31 --- join: proteusguy (~proteusgu@cm-58-10-208-131.revip7.asianet.co.th) joined #forth 10:17:31 --- mode: ChanServ set +v proteusguy 10:26:41 --- join: [1]MrMobius (~default@c-73-134-82-217.hsd1.va.comcast.net) joined #forth 10:29:13 --- quit: MrMobius (Ping timeout: 255 seconds) 10:29:13 --- nick: [1]MrMobius -> MrMobius 10:37:21 --- join: tabemann (~travisb@2600:1700:7990:24e0:78df:6a9:450a:b439) joined #forth 12:31:29 --- quit: tabemann (Ping timeout: 264 seconds) 13:54:52 as the pain in my hands from typing gets progressively worse I start to like the ColorForth keyboard more and more 13:56:33 I really like the abstrat idea Chuck had going on with all of that. 13:56:44 I do believe in the "collaboration of man and machine." 13:56:59 I just was never able to follow it quite so far as he did. 13:58:03 I could particularly get into collaborating with Six from Battlestar Galactica... 14:06:54 I think he agrees it's all a bit esoteric for most others at this point 14:07:24 and it's why PolyForth was ported to the GA144 14:08:13 Well, the idea that the whole Forth concept can so easily morph into whatever you as an individual need for it to be is just pretty cool. 14:12:02 My hands occasionally get sore. Usually one or the other at any given time. I always fret and think "arthritis," but so far it's always gone away - I guess it's just overuse strain when I've been particularly active on the keyboard. 14:12:16 I remain a HUGE fan of a good, real keyboard. 14:13:09 just ordered two split keyboards today to test out 14:13:15 I took typing in high school. That was the late 1970's, and I really had no clue what was about to happen with computers. I took it because it seemed like a great way to hang out with a lot of the cute girls. 14:13:18 will return the worst one 14:13:27 But it sure did turn out to be a useful skill to have acquired. 14:13:28 LOL! 14:14:05 saved by the bell 14:14:07 kekeke 14:14:09 Unexpectedly, I wound up being good at it. 14:15:09 I used to work quite hard to keep a straight face, at the job I had in late 1990's, when I'd be in the Executive Vice President's office and would watch him type with his two index fingers. 14:15:21 Given how he was doing it, he was actually pretty quick. 14:15:59 I've been trying to learn good typing but it's hard. 14:16:33 I wish the enter key weren't so far away. 14:17:37 Hmmm. I could imagine it being like under the space key or something. 14:17:41 Accessible to either thumb. 14:18:02 i learnt to type properly on a traditional type writer - wasn't a lot of fun 14:18:07 Yes, one of my split keyboards arriving next week has it like that. 14:18:16 It's an interesting history - the keyboard layout. 14:18:29 As the Dvorak studies show, it's nowhere near the "time motion optimum." 14:18:34 The querty layout, I mean. 14:18:42 i live in a country were azerty is the norm 14:18:54 i seriously wonder how they manage 14:18:54 I like colorForth's way of having a word buffered and the entered with space... though it makes entering a space marginally harder... 14:19:04 azerty seems inane 14:19:09 * Zarutian got rather irritated with a traditional type writers. He nearly always near-chords when typing which will always result in level clash. 14:19:18 In fact, I've read that they chose a layout to *keep* people from trying to type faster than the mechanisms could keep up with - with more efficient layouts people would jam the print arms all together. 14:20:14 But once it was done, it stuck, because even as technology improved, there were too many people out there who knew it to change it. 14:20:21 I heard it was because then salesmen could type the english word typewriter nearly onehanded 14:20:21 Sort of like Windows. :-( 14:20:38 But you can't do that. 14:20:40 Well, everyone knows that Window is nearly EOL 14:20:51 You need W and P, and they're almost as far apart as it gets. 14:20:53 Windos* 14:20:57 Windows* 14:21:18 Zarutian: I *hate* it when I try to issue a correction and make another mistake. 14:21:36 KipIngram: the reality is pretty simple, it was mostly trial and error 14:21:56 Zarutian: i don't think so - it'll be around for a lot longer 14:21:57 Its been what? nearly nine years since Windows '10, no? 14:22:08 they just kept moving things into places where they wouldn't clash often until they were satisfied 14:22:25 Yes, I think that's likely true. 14:22:38 WilhelmVonWeiner: yeah for english but not for many nordic languages. 14:22:43 Actually *solving* problems like that optimally sort of required computers. 14:22:50 In complex cases at least. 14:23:15 naah, even tube electronics would have been enough 14:23:43 Well, but the typewriter's been around since well before that, right? 14:23:55 I don't actually know when it was invented. 14:24:04 I would guess late 1800s or something - going to look now. 14:24:25 1873. 14:24:34 heck I saw an typewriter whose typing head was a row of letters and one hole where the striker pushed an block through then retracted it 14:24:52 Ach naja 14:25:15 Hi john_cephalopoda. 14:25:19 Ach! hans, run! 14:25:47 Wrong channel 14:25:48 then thing is typewriters arent that old relatively speaking. The first onces were around 1873 but none actually got into commercial use until perhaps 1910's or so 14:25:50 iirc 14:26:08 That seems likely. 14:26:18 Probably took 'em a while to figure out how to produce them at low enough cost. 14:26:31 initally people just didn't care 14:26:59 just how it always seems to go 14:27:20 the printing press is much older but better established but people didnt want to bother unless you were going to mass print a phamplet or some such 14:28:01 Well, the printing press changed the world. I guess the typewriter did too, but I don't think in as fundamental a way. 14:28:25 Before the press, books were like Hope diamonds; reserved for the wealthy. 14:28:40 what the hell are Hope diamonds? 14:28:51 It may have just been one diamond. 14:28:54 A famous one. 14:28:57 A specific diamond. 14:29:03 Yeah, typewriters didn't speed up publication speed considerably. 14:29:04 The hope diamond is a big un iirc 14:29:10 https://en.wikipedia.org/wiki/Hope_Diamond 14:29:14 Unlike De Beers... 14:29:42 De Beers… capitalists… 14:29:46 Well there is the Eye of the Peacock that is part of the crown stuff owned by the British Crown. 14:31:00 I do not see the point of diamonds frankly other than as used in industry, optics or molecularly nanotech fabricated window panes (many years to that though) 14:31:03 They convinced the population of the USA that you have to spend several salaries on an engagement ring. 14:31:52 *the world 14:31:52 Yeah - no kiding. 14:31:54 kidding 14:32:02 Yeah, diamonds aren't really pretty. Industrial applications are all they are good for. 14:32:14 well, you can convince 'Muricans of many untrue or contradictory things. 14:32:44 I remember a scene from Mad Men, where this beatnick friend of the main dude's girl on the side told him, re: his advertising profession, "You *create WANT*." 14:32:47 It wasn't a compliment. 14:32:59 You know what bugs me? A lot of people seem convinced RPN is unreadable 14:33:00 john_cephalopoda: now, zirconium crystals, they are pretty. Specially when properly cut. 14:33:12 And I think that's pretty damn true - those guys program us to want stuff that we don't need, until they get into our heads. 14:33:35 WilhelmVonWeiner: it is because they have not been exposed to it much. 14:33:42 IMagine not learning C and telling a C programmer it was unreadable 14:33:49 they'd laugh you out of the room 14:34:27 Imagine not learning to read and telling people that C is unreadable. 14:34:29 Well, C is, specially its bloated offspring C++, quite unreadable and ambigious. Hence all the "Undefined Behaviours"! 14:34:46 true, C++20 can actually be hard to read 14:35:16 ANS Forth has quite a bunch of undefined behavior. 14:36:01 Doesn't really affect the readability though 14:36:20 john_cephalopoda: yeah, hence no actual ANS Forth system exists. All that are claimed to be specify what they do in quite detail. 14:36:23 it's not ambiguous because of the syntax (unless you have an example) 14:36:42 ANS Forth is basically just a loose guideline as far as I can tell 14:37:08 The main thing that makes Forth anything less than 100% readable is immediate words. 14:37:16 Because it brings the timing of things into question. 14:37:17 WilhelmVonWeiner: in C? well what does: a = b + c * d; do? 14:37:37 Without those in play, A B C means "what ever A does happens, then whatever B does happens, then whatever C does happens." 14:37:41 It doesn't get any simpler than that. 14:37:45 probably won't compile kekeke 14:37:54 I meant forth, was replying to john 14:38:12 a = b + c*d; damn well better be c @ d @ * b + a ! 14:38:17 Or it's borked. 14:38:27 Sorry - b @ 14:38:34 as in "the ANS undefined behaviours wouldn't be due to syntax" 14:39:04 nope, it throws an compile error as a is an uint b is a scaled fixed point and c is an int while d is an double precision float. 14:39:45 in C that is. 14:40:08 this is why I like float@ float+ and such prefixed words 14:40:13 C wouldn't throw an error, they'd all be implicitly cast 14:40:27 lmao 14:40:29 Ok. 14:42:25 and one thing, C or C++ has no place on microcontrolers or in embedded systems. This MCU is not your grandmothers PDP-11, gcc, so stop trying to stuff all your string constants into WRAM instead of in Program Flash ROM where it belongs 14:43:26 (nor is it your fathers legacy x86 for that matter) 14:47:10 WilhelmVonWeiner: which keyboards? 14:52:35 ergodox and a "uk ergo pro" from keyboardco a UK keyboard store 14:55:43 I've ordered an ergodox as well. Working on a keymap while I wait for it to ship. 14:56:52 Mine's an eBay bid at the moment, I'm working on the assumption nothing really changes 14:57:41 Ordering an Ergodox EZ would be £200 + ~£25 wrist rests + customs fees 14:58:19 this is £230 and in the UK 15:03:50 Mine was $354 in the US, so about £268 15:04:43 * WilhelmVonWeiner sweats a little 15:05:02 Zarutian: string constants are no rodata 15:05:52 corecode: but they are, in any other sane macro assembler for MCUs 15:09:55 i mean, in 15:09:58 they are in rodata 15:12:41 yet most C compilers for MCUs try to stuff them into WRAM when the MCU turns on. 15:14:24 Isn't this sort of thing usually because someone ported in a C compiler intended for some other type of system rather than carefully writing a tool specific to the device? 15:14:56 After all, leveraging pre-existing work seems to be what people are all about these days. 15:15:30 Zarutian: yea, i don't know what other compilers do 15:15:48 Zarutian: it makes sense in a harvard architecture 15:15:51 "How can I take work someone else did and make money off of it?" :-) 15:16:08 for a long time, string constants were writable 15:16:22 KipIngram: sure, usually by someone clueless about the MCU architecture. 15:16:25 and people would do stuff like char *tmp = "foo123"; 15:16:33 Yes. 15:16:37 tmp[4] = 'a'; 15:16:54 which ofc doesn't work if your string constant is readonly 15:17:17 lots of segfaults back then when gcc changed that 15:18:18 The concept of doing tasks "as well as they can possibly be done" is pretty much dead in the modern economy, except in marketing rhetoric. 15:19:16 KipIngram: dont know which MCU maker did this but they actually provided the macro assembler as an one big .c file you could compile yourself. 15:20:39 KipIngram: some, jobs have "yeah do a shoddy job at this and we will hunt you down and gradually shorten your limbs down to nothing" kind of risks to them. (Human rated spacefareing rockets for instance) 15:22:28 Ok, that's fair. And it's good. I guess I'm mostly calibrated around run-of-the-mill consumer products. 15:38:31 --- join: yrm (~yrm@KD106132216087.au-net.ne.jp) joined #forth 15:44:15 --- join: tabemann (~travisb@2600:1700:7990:24e0:78df:6a9:450a:b439) joined #forth 15:49:19 --- quit: yrm (Quit: yrm) 16:12:17 --- quit: tabemann (Ping timeout: 264 seconds) 16:40:59 I wonder if anyone made a Forth for turing machines 16:45:49 --- join: yrm (~yrm@KD106132216087.au-net.ne.jp) joined #forth 16:53:18 --- quit: john_cephalopoda (Ping timeout: 250 seconds) 16:55:04 --- join: john_cephalopoda (~john@unaffiliated/john-cephalopoda/x-6407167) joined #forth 16:58:07 --- quit: proteusguy (Ping timeout: 268 seconds) 17:02:33 --- join: rdrop-exit (~markwilli@112.201.168.172) joined #forth 17:10:16 --- join: proteusguy (~proteusgu@cm-58-10-208-131.revip7.asianet.co.th) joined #forth 17:10:16 --- mode: ChanServ set +v proteusguy 17:10:46 --- join: groovy2shoes (~groovy2sh@unaffiliated/groovebot) joined #forth 17:13:04 --- quit: dddddd (Remote host closed the connection) 17:45:54 Good morning Forth aficionados 17:50:25 hi rdrop-exit 17:50:34 Hi crc 18:41:31 Got FIND and EXECUTE working now: https://raw.githubusercontent.com/siraben/r216-forth/master/screenshot.png 18:41:52 So the REPL boots up, reads a word, executes it and stops, I'll need to add stuff like WORD next 18:45:01 Kudos Siraben 18:46:11 Very interesting instruction set: https://lbphacker.pw/powdertoy/R216/manual.md#Instruction.reference 18:46:41 Most of the instructions run in a single frame 18:46:53 Except CALL, it seems, which takes 2 frames 18:51:37 --- quit: yrm (Quit: yrm) 19:37:28 --- join: dave0 (~dave0@223.072.dsl.syd.iprimus.net.au) joined #forth 19:44:46 hi 19:46:32 hi dave0 19:46:44 hi siraben 19:48:23 hi dave0 19:48:37 hi crc 19:52:42 I copied and pasted my WORD routine from my other Forth system and it worked just fine! 19:54:10 No drag and drop? 19:54:44 Well I had to transcribe it from my lisp notation into ASM notation again 20:14:51 --- quit: proteusguy (Ping timeout: 246 seconds) 20:37:40 Wow this Forth is SLOW 20:38:10 This simple program took at least a minute to run at 120 frames per second ( = 120 instructions/sec), https://github.com/siraben/r216-forth/blob/3fc6fac35b9128a049b18ad6e0a27225b51346ca/forth.asm#L834 20:41:58 To save space this time I only store the first three letters of each word + their length 20:42:14 Might regret this later 23:08:54 --- join: proteusguy (~proteusgu@cm-58-10-208-131.revip7.asianet.co.th) joined #forth 23:08:54 --- mode: ChanServ set +v proteusguy 23:14:49 --- join: fftww (~va@46.211.51.127) joined #forth 23:15:10 --- quit: fftww (Client Quit) 23:15:43 --- join: fftww (~va@46.211.51.127) joined #forth 23:35:51 --- quit: fftww (Read error: Connection reset by peer) 23:40:01 --- join: fftww (~va@46.211.44.223) joined #forth 23:59:59 --- log: ended forth/19.03.02