2023-02-27 00:40:45 thanks for the hints crc 2023-02-27 00:42:15 I've found that labeling functions as Uppercase seems nice? and that I hate pressing the shift character for anything. 2023-02-27 02:07:54 nmz- C++ compilers mangle names with it's instance of Hungarian Notation. 2023-02-27 08:14:50 KipIngram: LotR full of interesting real-world analogues and insirations 2023-02-27 08:15:55 The Bible, Beowulf, fairies, Arthurian legend, european history, all sorts blended into it quite masterfully 2023-02-27 08:16:52 And language evolution as well 2023-02-27 08:18:07 I think the cosmology is a very interesting analogue to the bible, anyway 2023-02-27 08:18:52 LotR is also now firmly a product of a previous era, it would be entirely impossible for someone to write something like that again today 2023-02-27 08:19:01 It's like it was written by aliens at this point 2023-02-27 08:19:04 Or elves 2023-02-27 09:57:11 JITn: and that is bad or good? 2023-02-27 10:08:40 veltas: yes, I agree with you. I don't think we'll ever see anything like it again. 2023-02-27 10:09:35 I think it deserves to be thought of in that same tier of ancient classics you mentioned, like Beowulf and so on. 2023-02-27 10:09:39 nor Blazing Saddles 2023-02-27 10:09:48 Well, that goes without saying. :-) 2023-02-27 10:10:15 Tolkien's work is just a complete "story of everything." A full cosmology and mythology. 2023-02-27 10:27:00 nmz-: I don't like ""C++ name magling"" at all. 2023-02-27 10:34:44 thrig: I think Blazing Saddles is the most OVERT example of something that couldn't be filmed today. 2023-02-27 10:35:02 It was daring to film it when they did, I think. 2023-02-27 10:35:14 But we just had more of a sense of humor back then. 2023-02-27 10:39:18 nmz-: Symbolic Expression of Algebraic Data Type? Example: (= (Unicode 65) (index (UTF-8 321) 0)). Assumin indexing starting with 0. 2023-02-27 13:42:18 God, I feel like I'm managing children on the Dresden reddit this morning. 2023-02-27 13:42:23 Guess it's afternoon now. 2023-02-27 13:43:27 Someone posted a "sarcastic post" caricaturing the differences in the way Butcher describes men vs. women (i.e., accusing him of sexualizing women, which isn't entirely untrue). 2023-02-27 13:43:59 So he posts that - the more conservative crowd hits back with mild criticisms of the more liberal mentality. The other side hits back and escalates a little more. 2023-02-27 13:44:13 It's not over the line yet - but it WILL GET THERE - just wait and see. 2023-02-27 13:44:31 do you bite your thumb at me, sir 2023-02-27 13:44:36 No one can bear to let the other side have the last word on stuff like t his. 2023-02-27 13:45:00 I predict I'll wind up having to lock comments on that one. 2023-02-27 13:45:26 this is why I have had two sock puppets to start these kind of flamewars 2023-02-27 13:45:38 I've commented and asked that folks refrain from doing more than discussing the books themselves, but I doubt it will stop it. 2023-02-27 13:46:02 :-) 2023-02-27 13:46:47 Well, as I said, Butcher DOES do this to some degree - it's not an unfair criticism. But it's never really "bothered' me - there's just so much GOOD in those books that I can't see wasting time searching for things to criticise. 2023-02-27 13:47:17 Here's the title of the post, which is where the caricaturing lay: 2023-02-27 13:47:33 "Describing a guy: " His knuckles were the size and shape of marbles." describing a woman: 3 paragraphs on the shape and movement of her breasts." 2023-02-27 13:47:53 And of course that is overstating it, but not "inventing it." 2023-02-27 13:48:51 I've always just taken those passages (the actual ones in the books) as arising from the fact that we are situated as we read the books INSIDE THE HEAD of a typical male. And guys DO very carefully take note of the sexual aspects of women. We're not innocent of that. 2023-02-27 13:48:54 so softcore litporn? 2023-02-27 13:49:02 So it's very realistic, in my mind. 2023-02-27 13:49:21 Well, you'd have to read the books to see how he actually says things - as i said that ^^ is a caricature. 2023-02-27 13:49:36 sure 2023-02-27 13:49:57 but as you said, this is told from the perspective of a guy 2023-02-27 13:50:19 Exactly - it's always seemed fairly accurate and realistic to me, so it barely even gets my attention. 2023-02-27 13:50:55 so, what was the name of the romance rippers that supermarkets often sell 2023-02-27 13:51:45 those are often writen from the perspective of horny young women 2023-02-27 13:51:55 Yeah. 2023-02-27 13:52:58 I once tried to read the "True Blood" books. Those are told from inside the head of a female protagonist, and written by a woman. And I think she does the same kind of thing - puts in quite realistic presentations of how women tick internally. And those DID get my attention, because they were so "foreign" to me. But like I said, I expect their also probably quite accurate. 2023-02-27 13:53:09 A woman would have to tell us yay or nay ont that, I guess. 2023-02-27 13:53:25 I stopped rerading those books because of it, but I wouldn't see fit to criticise her over it. 2023-02-27 13:54:47 and then there are the logs of solomov bayesian inference engines with subsumption model based attention and prioritization control 2023-02-27 13:55:12 THAT is fricking alien 2023-02-27 13:57:12 often the super goal seeking behaviours colour what the thing finds more salient than other 2023-02-27 13:58:06 hence a woman inventing Láadan 2023-02-27 14:54:28 Or a man inventing Gor. 2023-02-27 14:54:42 That's one of the most aggregious ones I've seen. 2023-02-27 14:54:59 I imagine that series upsets a whole lot of people. 2023-02-27 15:07:47 KipIngram: did you think about the debugger? 2023-02-27 15:08:42 I had that way of triggering a repl at any point of the program, but it's not very useful to find bugs 2023-02-27 15:08:59 I wonder if you came with any related ideas 2023-02-27 15:09:18 I assume if you make a debugger will be a full featured one 2023-02-27 15:09:35 and you'll even be able to know what's on the registers xD 2023-02-27 15:10:07 No, I haven't thought any more about that - I feel like it will be a relatively straightforward development when the time comes. 2023-02-27 15:10:47 Basically I see it as managing breakpoints inserted into the code, which will involve a data structure to remember what was in those locations previously, so I can put it back after I've passed the breakpoint. 2023-02-27 15:10:59 For single stepping I'll just move that breakpoint along one notch at a time. 2023-02-27 15:11:21 I'll have to write code to record what memory locations I want to monitor, etc. etc. - but that all seems like straightforward stuff to me. 2023-02-27 15:11:24 Though tedious. 2023-02-27 15:11:50 I will probably want some sort of decompilation going on in that too. 2023-02-27 15:12:41 Other than all that it will mostly be a matter of deciding how to present all that info on the screen. 2023-02-27 15:13:43 decompilation into assembly code? 2023-02-27 15:30:58 No. Well, possibly, but I was actually referring to decompilation fROM RAM back to "readable Forth," by looking up names in the dictionary. 2023-02-27 15:31:25 Around the region being single-stepped through, just so I can see what's comming. 2023-02-27 15:40:44 hmm 2023-02-27 15:41:07 I hope with the time I end with something that really helps me to find bugs 2023-02-27 15:41:18 still the most efficient way I see is just to factor 2023-02-27 15:42:09 I have to make a transpiler yet, so for now factoring into smaller words will make it even more slow 2023-02-27 15:42:20 actually much slower 2023-02-27 15:42:39 but I won't care about that and when I'll do I'll start with the transpiler 2023-02-27 15:43:02 the transpiler makes colon words cost nothing, which is cool 2023-02-27 15:43:56 for now I want to get some results first 2023-02-27 15:44:35 A debugger is one of the first things I wrote at my job, in the first few months 2023-02-27 15:44:51 And I did it because I was interested to see how it would work and saw a section on debugging facilities in my CPU's manual 2023-02-27 15:45:24 And I remember my boss wasn't sure if I had plagiarised the code at first, he gave me "the talk" on copying code from the internet 2023-02-27 15:46:08 xD 2023-02-27 15:46:10 He was quite happy when he found out I had in fact written it myself 2023-02-27 15:46:31 that means it was good 2023-02-27 15:47:00 But I will say that it wasn't that complicated really, with the right documentation 2023-02-27 15:47:10 I think it's actually harder to do this with an OS which just gets in the way 2023-02-27 15:47:27 In ring 0 it's really easy you just write the breakpoint address to a register, etc. 2023-02-27 15:47:31 Things like that 2023-02-27 15:48:18 I don't know how it's done in Linux, maybe with ptrace 2023-02-27 15:50:52 Well, I do think it's true that the best way to wind up with no bugs is to not commit them in the first place, and factoring well helps with that. 2023-02-27 15:51:26 But I do think being able to walk along the execution of the code and watch things happen helps you chase htem down. 2023-02-27 15:51:50 I do that now, without any debugger, just by moving "something" (a print, an exit, whatever) along gradually through my code at each layer until I find the trouble spot. 2023-02-27 15:51:54 More often than I'd like it's easier to just rewrite subpar code than to carry on with it 2023-02-27 15:51:58 Then I drop down a layer there and repeat. 2023-02-27 15:52:10 Until I eventually find the exact place something's not doing what I expected it to do. 2023-02-27 15:52:27 Yeah, that's true - sometimes starting over is the easiest thing to do. 2023-02-27 15:52:29 I need to get better at throwing out shit code honestly 2023-02-27 15:52:35 Really just depends on the situation. 2023-02-27 15:53:45 An intern at work has been working on some old dumpster fire of code for months and I have got him to just start rewriting it simply, I think in about a week he's going to have 95% of the functionality in a more maintainble form 2023-02-27 15:54:29 Writing code that's actually worth trying to understand and not rewrite on the spot is actually kind of a high bar 2023-02-27 15:56:07 that might actually take time and cost money 2023-02-27 15:56:45 d'oh! 2023-02-27 15:57:01 Bingo. 2023-02-27 15:57:11 And there's the world's big problem. 2023-02-27 15:58:39 See, corporations would have prevented the whole bad situation in Lord of the Rings, because the execs would never have let Celabrimbor and Anatar spend THREE HUNDRED YEARS figuring out how to make rings of power. 2023-02-27 15:58:52 The damn things would just never have shown up. 2023-02-27 16:00:54 I always disliked patching 2023-02-27 16:01:02 I tend to rewrite it from scratch 2023-02-27 16:01:20 most of the time there's no need for it, but I do it anyways xD 2023-02-27 16:01:36 Our experiences colour stuff a lot, I mean depending on the code patching can be a pleasure, or an exercise in trying to look away from the million bugs to find the one you were sent down for 2023-02-27 16:02:10 still usually as I'm making a concat lang and learning by the process, when I use it I discover design flaws or I want to do something in a different way 2023-02-27 16:02:26 at those times is just better to start from scratch I guess 2023-02-27 16:02:48 still it has a lot of design flaws xD 2023-02-27 16:03:12 but once you get the idea rewriting is fast 2023-02-27 16:03:35 vms14: I regard what you're doing as "grand experimentation," and that's almost always educational somehow. Often in ways you don't immediately realize. 2023-02-27 16:03:48 Just "playing with stuff" is a great way to learn. 2023-02-27 16:03:53 yeah, I started having no idea of what I was doing 2023-02-27 16:03:58 :D 2023-02-27 16:04:19 Yeah there's not a lot of people who can say "I've written a compiler" and yet most of the regulars in this channel have 2023-02-27 16:04:20 now I have a bit more clear what I want and how I want it 2023-02-27 16:04:49 the next step is a transpiler, is a bit trickier, but not that bad 2023-02-27 16:05:26 immediate words are just words that execute at "transpile" time 2023-02-27 16:05:56 but I'll have a similar thing which I'll name "code gen words" 2023-02-27 16:06:09 they also execute at transpile time, but return code 2023-02-27 16:07:15 I was doing it in javascript xD but I don't get much fun writing js code 2023-02-27 16:07:36 still I'm not at your level, I'm not even touching C, nor assembly 2023-02-27 16:08:14 but it's not what I aim for, my aim is to use existing libraries to do general stuff a "modern language" usually does 2023-02-27 16:08:58 I could use C, but it's a pain and don't really think I need the performance 2023-02-27 16:09:48 still maybe I end trying it again, I already had a stack being able to have any kind of data and the performance of C could make the lang fast enough so I don't need a transpiler 2023-02-27 16:11:39 I sometimes want to touch assembly, but having a language able to do all this stuff I want would be a pain and makes no sense 2023-02-27 16:12:08 with a high level lang I just make "bindings" 2023-02-27 16:13:58 it's a 5 year old kid's language :D 2023-02-27 16:25:01 Yeah - in Forth immediate words usually just have a flag set in their header. 2023-02-27 16:25:25 If Forth sees that flag set, it just executes them instead of compiling them, even if its mode at that time is compiling. 2023-02-27 16:25:50 It's not too hard though, because that code usually executes or compiles based on STATE. 2023-02-27 16:25:59 So you just roll the bit into the test. 2023-02-27 16:26:42 You execute if STATE=0 OR if the bit is set. 2023-02-27 16:26:53 Only if the bit is clear AND STATE=1 do you compile. 2023-02-27 16:41:49 vms14: Having a high level language is a good niche IMO, we've already got really good embedded forths and desktop forths 2023-02-27 16:58:01 well the lang I'm making has almost nothing to do with a real Forth 2023-02-27 16:58:22 it's kind of a shame, but using a level language to implement Forth feels counterproductive 2023-02-27 16:58:40 I don't even have memory allocation, so I should fake it to provide allot, etc 2023-02-27 16:58:59 and my lang is kind of a joke xD 2023-02-27 16:59:18 but the reason is I fell in love with Forth, specially with the colon words 2023-02-27 16:59:44 and they're not so different from a function definition, but I love them for some reason 2023-02-27 17:00:08 : word word1 word2 word3 ; 2023-02-27 17:00:50 the sad part is I can't take forth as my main language and do all the stuff high level languages do, unless I make a real forth or find some ffi like gforth has 2023-02-27 17:01:34 also I don't really know Forth enough to implement something close to it 2023-02-27 17:01:51 but actually as long as I have colon words I'm happy :D 2023-02-27 17:01:51 Yeah in my opinion subroutines are a good thing 2023-02-27 17:02:05 They reduce code size 2023-02-27 17:03:04 still sometimes I miss the lisp syntax, specially because it's hard to do more than a hello world in my lang 2023-02-27 17:03:26 I don't even know my lang properly and is not well suited for programming after all 2023-02-27 17:03:47 a real forth or something closer would be better 2023-02-27 17:05:22 Have you tried brainfuck? 2023-02-27 17:08:39 xD no 2023-02-27 17:08:43 and I won't 2023-02-27 17:10:47 What about lisp? 2023-02-27 17:11:03 Oh you just said as much 2023-02-27 17:11:45 I loved common lisp, thought it was the best language I ever seen 2023-02-27 17:12:05 when I saw forth I started to have 0 interest in lisp 2023-02-27 17:12:14 I think goals are important for languages 2023-02-27 17:12:25 forth can also do metaprogramming as lisp, which is the main reason I loved it 2023-02-27 17:12:26 You need to think about what kinds of problems you want to solve with them 2023-02-27 17:12:47 veltas: my goal is to make my lang be my main language, able to do almost any program I want to make 2023-02-27 17:13:17 Then maybe redesign a bit if you can barely write Hello World 2023-02-27 17:13:27 that's why I use a high level lang to implement it, the only thing it cannot do is to be performant 2023-02-27 17:13:33 until I make a transpiler 2023-02-27 17:13:38 I'm not currently working on a forth either 2023-02-27 17:14:10 I don't really know what I love of forth so much 2023-02-27 17:14:22 It's very counter cultural 2023-02-27 17:14:26 but I'd guess is that it encourages factoring 2023-02-27 17:14:37 also it can do metaprogramming 2023-02-27 17:14:53 metaprogramming is one of the things I like the most of programming 2023-02-27 17:15:16 it lets you do stuff you'd never do 2023-02-27 17:15:47 idk how metaprogramming works in real forth, more than create does 2023-02-27 17:16:07 but in my lang I can just give a list and take it as code 2023-02-27 17:17:04 What I like about Forth is that it's an alternative compromise between machine and person, and it's designed to be practical 2023-02-27 17:17:12 It's lightweight 2023-02-27 17:17:51 what do you mean by alternative compromise 2023-02-27 17:18:03 I know you mean it does it differently, but how 2023-02-27 17:18:22 All programming languages are a compromise between machine and person 2023-02-27 17:18:31 Forth has a very different approach 2023-02-27 17:19:04 It's much more friendly to the machine, and tries to remain practical in the meantime 2023-02-27 17:19:48 so you mean that hides less than most languages do, without giving problems while doing that 2023-02-27 17:19:55 it also allows more freedom that way 2023-02-27 17:20:33 I always need freedom in a language 2023-02-27 17:20:44 that's why I won't use langs like java or python 2023-02-27 17:20:56 and also why I like lisp and perl 2023-02-27 17:21:50 perl even lets you build your own oop, I always thought the perl oop is a joke, but it's actually like a framework to build your own oop, which you can use directly if you don't want to build it 2023-02-27 17:22:02 it lets you decide what an object is and how it behaves 2023-02-27 17:22:12 I'm not a fan of oop anyways 2023-02-27 17:22:26 I like functional programming more 2023-02-27 17:22:57 which is funny cause fp nerds feel so smart using curry on their functions, and that's a feature a concatenative lang has by default 2023-02-27 17:23:06 : sum1 1 + ; 2023-02-27 17:23:20 easy as that 2023-02-27 17:23:22 :D 2023-02-27 17:23:52 Well sometimes order is necessary for freedom 2023-02-27 17:24:30 yeah, but when making software, including a programming language you can't assume the user will use your software as you think he will 2023-02-27 17:26:05 I think you can make good compromises based on your experience and what you want to see in a language 2023-02-27 17:26:53 freedom is not strictly necessary, even some people prefer to not have that freedom 2023-02-27 17:26:58 I just need it 2023-02-27 17:27:10 if I don't have it my creativity goes down 2023-02-27 17:27:27 also I like the language letting me express the ideas the way I see them 2023-02-27 17:28:03 which is a weird way :D 2023-02-27 17:28:03 I know how you feel 2023-02-27 17:28:15 I just do think it's too easy to fall into anarchy 2023-02-27 17:28:37 depends on the kind of software I'd guess 2023-02-27 17:28:53 for a programming language I don't think anarchy is actually a bad thing 2023-02-27 17:29:06 the resposibility always goes to the user 2023-02-27 17:29:06 Forth is definitely very anarchical 2023-02-27 17:29:19 And it's one of the things that attracts me 2023-02-27 17:29:28 But ultimately I do think that's a bad thing 2023-02-27 17:29:39 why? 2023-02-27 17:30:02 like it makes you loose more time instead of focusing? 2023-02-27 17:30:14 Yeah 2023-02-27 17:30:27 What is the point of programming anyway other than to get stuff done 2023-02-27 17:30:34 War is peace, freedom is slavery 2023-02-27 18:05:23 Why, I love having to make my own stdlib just to make something that's basically 2 lines of shellscript 2023-02-27 18:05:33 /s 2023-02-27 18:10:13 I wrote my own fail2ban. it had a few less CVE than fail2ban has racked up 2023-02-27 18:15:01 I had an implementation with 112 words defined and I was starting again for no reason xd 2023-02-27 18:15:47 ahaha it was the one with the . .. ... .... words 2023-02-27 18:16:12 . to print .. to concatenate strings ... concatenate lists and .... hashes 2023-02-27 18:16:37 even has a word named #!/usr/bin/env 2023-02-27 18:16:58 it does skip a line so it can be used as a script 2023-02-27 18:17:53 for some reason NetBSD refuses to use a hashbang that refers to an interpreted lang, so it has to be /usr/env 2023-02-27 18:18:48 /usr/env not /usr/bin/env ? 2023-02-27 18:19:43 oh, in my system is on /usr/bin/env 2023-02-27 18:20:02 localhost$ which env => /usr/bin/env 2023-02-27 18:20:18 and I assumed in linux too 2023-02-27 18:22:04 also in linux 2023-02-27 18:22:06 https://www.cyberciti.biz/tips/finding-bash-perl-python-portably-using-env.html 2023-02-27 18:22:52 ah, sorry I'm dumb 2023-02-27 18:23:15 I did type it wrong the second time and I was looking at the first to see if you meant that 2023-02-27 18:24:43 https://termbin.com/9wuffx this is some example code of that implementation 2023-02-27 18:24:52 it's part of the 99 lisp problems 2023-02-27 18:32:00 it's hard to read 2023-02-27 19:06:04 lol I'm having a hard time understanding what my old code does 2023-02-27 19:06:59 https://termbin.com/bhfak 2023-02-27 22:40:09 that can happen. :-) 2023-02-27 22:40:22 That got to be the case with my Forth I wrote in gcc. 2023-02-27 23:43:28 What are the speeds like on sector forth compared to say jones forth 2023-02-27 23:44:43 dave0: