00:11:44 -!- FreeFull has quit (Quit: Sleep). 00:33:10 Axiom of Verge. 00:58:31 fungot: do you plundervolt? 00:58:31 int-e: not the nth? i didn't vote for either of these been used for any significant sites? 01:11:28 fungot: what is your nth-child? 01:11:28 arseniiv: not if you stopped working on it, or lump it.' many compilers will optimize them to the site and got the most interesting code is in 01:11:57 a poor optimized child 01:12:46 int-e: I’d prefer an axiom of chocolate! 01:12:54 or maybe not 01:13:42 axiom of chocolate: the darker the better 01:14:29 (Though honestly I'm not sure about the 90%+ area.) 01:14:49 Someone had left some super-bitter "98%" or whatever chocolate at the snack area, I think that was kind of overdoing it. 01:15:01 There were like six or eight different kinds, and they were all like that. 01:15:07 I'm sure it's healthty, but still. 01:15:44 heh, I don't eat chocolate because it's healthy (or not) 01:16:50 But I just realized that I have some 85% chocolate around. 01:17:14 -!- arseniiv has quit (Ping timeout: 246 seconds). 01:17:18 And that's quite good :) 01:20:25 That sounds reasonable enough. 01:21:09 I had some super high % chocolate and found that it was ... dry, almost dusty. 01:21:24 Do you like B-trees? 01:21:42 I don't like dark chocolate. 01:21:50 So yeah, I share some super dark chocolate skepticism. 01:22:18 shachaf: What's the difference between B+ and B* trees? 01:22:57 I think there are a lot of different points in B-tree design space, and people named a few of those points, but mostly not the ones I actually want to use. 01:23:35 B+ trees store values only in the leaves (reasonable), and also have links between leaf nodes (is that that important?). 01:23:59 B* trees will share keys with both left and right siblings, I think, so nodes can be 2/3 full? 01:24:28 The point is: I thought B-trees were annoying and complicated until recently, when I thought about them. Now I think they're simple. 01:24:45 Hmm, is that that important --> for external storage, I imagine it may help for linear scans? 01:25:25 Sure. I mean, it seems like a reasonable optimization for some uses, but you make lots of those when you implement things in practice. 01:25:28 (But I didn't really expect any answers.) 01:29:55 fungot: do you like side-stepping questions? 01:29:55 int-e: that wraps functions... and just eval it in some ways 01:30:07 Wait, which question did I side-step? 01:30:19 shachaf: that wasn't about you 01:30:37 I've realized that I've identified a thing that *I* like. 01:30:39 But everything is about me. 01:31:31 shachaf: Fine. You were the muse, the catalyst. 01:31:57 `? shachaf 01:31:59 Queen Shachaf of the Dawn sprø som selleri and cosplays Nepeta Leijon on weekends. He hates bell peppers with a passion. He doesn't know when to stop asking questions. We don't like this. 01:32:18 `learn shachaf sprø som selleri and is the muse, the catalyst. 01:32:54 No more passion fruits? 01:33:20 `? bell pepper 01:33:22 bell pepper? ¯\(°​_o)/¯ 01:33:35 whoa 01:33:41 Unicode has two code points with the same name? 01:33:59 U+7 and U+1F514 01:35:02 I think I knew that once. 01:36:13 No bell pepper? Only 🌶... 01:36:37 @google 🔔🌶 01:36:39 http://www.google.com/url?q=https://www.dailykos.com/story/2019/4/19/1849291/-PWB-Freidai-Follies-and-Foolishness 01:36:39 Title: Уведомление о переадресации 01:37:47 Weird page. Oh well, I don't know what I was trying to find there anyway. 01:38:43 ``unidecode 🗭 # not for Democrats? 01:38:44 ​`unidecode? No such file or directory 01:38:48 `` unidecode 🗭 # not for Democrats? 01:38:50 ​[U+1F5ED RIGHT THOUGHT BUBBLE] 01:39:22 `` unidecode 🗬 # this one also exists, of course 01:39:24 ​[U+1F5EC LEFT THOUGHT BUBBLE] 01:40:04 `` unidecode 🗯 # haha! 01:40:11 ​[U+1F5EF RIGHT ANGER BUBBLE] 01:40:23 Where's my RIGHTEOUS ANGER BUBBLE? 01:41:53 `? shachaf 01:41:54 Queen Shachaf of the Dawn sprø som selleri and cosplays Nepeta Leijon on weekends. He hates bell peppers with a passion. He doesn't know when to stop asking questions. We don't like this. 01:42:08 * int-e is missing something 01:43:37 Ah, a ^O. 01:55:11 -!- Lord_of_Life_ has joined. 01:56:55 -!- Lord_of_Life has quit (Ping timeout: 265 seconds). 01:56:55 -!- Lord_of_Life_ has changed nick to Lord_of_Life. 03:08:33 -!- elliemae has joined. 03:50:03 -!- elliemae has quit (Remote host closed the connection). 03:52:45 fungot: hh and cc or hpp and cpp? 03:52:45 int-e: someone is either up very late, which can be checked 03:58:01 h and cc hth 03:59:24 h++ and c++ hth 03:59:55 hmm 03:59:58 h and c hth 04:01:20 shachaf: But I like a language strictly between C and C++... basically C++ without dynamic methods (and consequently, very limited inheritance). 04:01:39 dynamic -> virtual 04:02:49 What's the benefit of inheritance at all? 04:04:28 You can still have some limited aggregation going on. 04:05:09 Only extending interfaces and functionality... no overloading of methods or things will quickly become insane. 04:06:06 (virtual methods are what keep this sane) 04:06:55 Wait, are you for or against virtual methods? 04:06:59 The main thing I want is that every (struct/class) type has an associated namespace. 04:07:42 shachaf: It depends? They are essential for OO. I don't want to do OO though. 04:07:45 I've been wondering how important that is for a while. 04:08:12 Is there a big advantage to x.f() over foo(x)? 04:08:49 I meant x.foo(), of course. 04:08:52 Little, if you can overload foo(). 04:10:05 But C can't overload functions either. 04:10:46 I think there's an advantage over having x.foo() or foo(x) vs. having to write type_foo(x) where 'type' happens to be the type of x. 04:11:44 I'm not a very fast typist, so that kind of redundancy really hurts. 04:14:11 I also find chaining of operations attractive... if you have struct T { T &set_foo(); T &set_bar(); }; T t; and do t.set_foo().set_bar(). 04:15:40 I like (T){.foo = x, .bar = y}; 04:15:53 Which C has had for 20 years and maybe C++ is finally getting? 04:17:19 Anyway, if you were to add methods to structs in C I might consider using it again ;) ) 04:17:42 type_foo has the benefit that you can search for it. 04:18:30 Yes, we all rationalize our own choices. 04:18:54 I said a few lines ago that I've been wondering about it for a while. 04:19:09 In particular I mean that I'm not sure whether it's a good idea or not. 04:21:41 It doesn't help C's case that it's largely a subset of C++. (The field initialisers are a good point, of course.) 04:22:20 So basically the moment a person (like me) finds /anything/ they like in C++, they are tempted to switch. 04:23:31 whoa, I just realized how my own program worked. 04:23:38 Btw I also find the iostream and iomanip stuff cute. 04:23:40 I had a bug which turned out to be a clever trick. 04:23:57 It did exactly the right thing. I'm going to document it and pretend it was what I meant to do all along. 04:24:28 Wait a minute, no. Hmm. 04:24:28 Been a while since I've done that, but yeah... those are interesting experiences. 04:25:09 Well, the last time was actually code that I /knew/ couldn't work, that turned out to work /most/ of the time (much more often than it reasonably should), but not always :) 04:25:39 I was really glad when I finally discovered that it did, in fact, break. 04:26:20 (This was with last month's Ponder This, in code updating determinants which worked with insufficient precision... and still produced exact results most of the time.) 04:26:37 https://slbkbs.org/tmp/b-trees.txt 04:28:20 The time before that was an overzealous (by my understanding at the time of writing it) check in a combinatorial search procedure which I could later justify to actually be valid (for quite subtle reasons). 04:28:58 "overzealous check" -- this was for pruning a search tree, so I pruned more than I thought I could. 04:30:57 shachaf: funny, I always think of B+-trees as 2-3-4-trees, only wider. 04:31:22 And 2-3-4-trees are 2-3-trees with lazier splitting. 04:31:39 I always think of red-black trees as 2-3-4 trees. 04:32:12 (Are B- -trees those that can have between n and 2n-1 children at each node?) 04:32:42 I usually don't think of red-black trees at all. 04:33:08 Did you know they just encode 2-3-4 trees? 04:33:55 Anyway, I like this array perspective. 04:34:01 but yeah, if I have to, I collapse it to a 2-3-4 tree. 04:34:22 I think just about all the operations are obvious from this viewpoint. 04:34:36 AVL trees make so much more sense to me. 04:37:08 shachaf: I think the array perspective is one of many possible views and it's impossible to say which view clicks for any particular person. 04:39:00 Obviously /some/ sort of array is inherent in any Bx-tree because a flat array is what you get for very small data sets. 04:39:28 I mean, I've written a bunch of B-tree code in the past, I was already familiar with the data structure. 04:39:42 And observing some sort of chunking at the leafs when you flatten the tree is also inevitable. 04:40:33 But whether you view the thing top-down, emphasizing the tree structure, or bottom-up, empahsizing the (chunked) flattened array... is up to you. 04:42:12 If you do it bottom-up, you get intermediate forests as you group consecutive chunks under a common ancestor node. 04:42:38 So it's arrays all the way up. ;) 04:42:46 But trees all the way down. 04:43:29 It's plausibly reasonable to use different kinds of indexing for blocks and for values. 04:43:42 Since they're very different sizes. 04:46:10 Btw, I don't know if anything of what I just wrote made any sense. But I'm very happy with the last two lines. 04:48:14 Okay, bedtime. 04:50:10 C++'s std::map is usually a red-black tree. 04:50:12 I'm not sure why. 05:31:52 -!- Frater_EST has joined. 05:45:00 -!- ArthurStrong has quit (Quit: leaving). 06:05:52 -!- Frater_EST has quit (Remote host closed the connection). 06:53:14 -!- kingoffrance has quit (Read error: Connection reset by peer). 06:53:43 -!- kingoffrance has joined. 06:53:47 [[Special:Log/upload]] upload * Quadril-Is * uploaded "[[File:Burn program.png]]" 06:55:10 [[Special:Log/upload]] upload * Quadril-Is * uploaded "[[File:Burn program resized.png]]" 06:58:30 [[Talk:Burn]] https://esolangs.org/w/index.php?diff=67873&oldid=67839 * Quadril-Is * (+324) /* PNG of the program */ new section 08:12:41 -!- Sgeo has quit (Read error: Connection reset by peer). 08:13:07 -!- Sgeo has joined. 08:20:03 -!- hppavilion[1] has joined. 08:32:46 [[User:Dart]] https://esolangs.org/w/index.php?diff=67874&oldid=67769 * Dart * (+233) 09:00:21 shachaf: C++ std::map interface is defined such that when you modify the tree, the address of the contained items doesn't change (unless you erase that specific item), nor can the iterator to items. that negates some of the advantages of better B-trees. it could still use a B-tree with the items accessible through an extra pointer or index, but it's easier to just put every item in a separate node that 09:00:27 never moves like a B-tree does. 09:02:37 -!- b_jonas has quit (Quit: leaving). 09:04:26 OK, that's a good reason not to use std::map. 09:05:08 -!- hppavilion[1] has quit (Quit: Leaving). 09:13:10 izabera: did you figure out graphs? 09:38:19 -!- grumble has quit (Quit: SOMEBODY ONCE TOLD ME). 09:40:21 -!- grumble has joined. 10:01:22 -!- cpressey has joined. 10:16:49 Good morning. Here's a kooky juxtaposition for y'all: The Löwenheim-Skolem theorem says that if a logic has an infinite model, it has a countable one. Meanwhile there's this folk theorem in programming: if a program requires a loop, then it can be written with a single loop. 10:17:09 s/logic/theory/ 10:22:47 heh 10:38:15 -!- wib_jonas has joined. 10:39:24 cpressey: I think that latter is Dijkstra's "Go To Statement Considered Harmful" theorem, though it was probably known before Dijkstra, because people had cpus with a single loop that fetches instructions then executes them 10:43:03 cpressey: "https://esolangs.org/wiki/(0)" may be relevant for some infinite versions 10:52:33 Why is deletion so complicated? 10:53:05 [[Special:Log/newusers]] create * Oklomsy * New user account 10:54:25 shachaf: that's the tradeoff about AVL trees versus B-trees or related. AVL trees have more complicated algorithms in general, but fast and simple deletion; B-trees and red-black trees have simple algorithms, but deletion can take O(log(n)) time. 10:55:58 I don't care about about it being slow, right now, just complicated. 10:56:22 Surely AVL tree deletion takes logarithmic time, anyway. 10:57:41 [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=67875&oldid=67846 * Oklomsy * (+251) /* Introductions */ 10:59:24 shachaf: hmm, I might be misremembering, let me check the Knuth book 11:00:28 Man. 11:00:28 shachaf: you should look at the Okasaki book's description of red-black trees if you want a simple one 11:00:33 Maybe I shouldn't be doing B+ trees? 11:00:43 I'm not interested in red-black trees. 11:00:48 red-black trees look very complicated to me at first, but when Okasaki explains them, they're simpler 11:01:27 shachaf: well, what data structure you want depends on what you want it for. for storing on a disk that you read in sectors/clusters/blocks, some sort of B-tree with high degree is usually better 11:01:41 Binary trees are scow. 11:01:58 shachaf: also you could try to use a library written by someone else, such as that B-tree library from the future that ais523 will write 11:02:23 Why? 11:05:42 ok sorry, I was wrong. AVL tree deletion may require you to modify O(height) nodes 11:05:59 its insertion of a single node into AVL trees that is faster, because it requires you to adjust only O(1) nodes 11:06:12 whereas with a B-tree, an insertion may require you to adjust O(log n) nodes 11:06:47 shachaf: because if someone else already wrote a good and well-tested library, it's less likely to be buggy than if you write one 11:07:03 and there are a lot of balanced search tree libraries out there 11:10:13 [[Furcode]] N https://esolangs.org/w/index.php?oldid=67876 * Oklomsy * (+36) Created page with "Furcode [[Category:Joke_languages]]" 11:10:51 [[Furcode]] M https://esolangs.org/w/index.php?diff=67877&oldid=67876 * Oklomsy * (-36) Blanked the page 11:12:40 [[Dd]] https://esolangs.org/w/index.php?diff=67878&oldid=67864 * Dart * (+275) Added a shorter implementation 11:20:13 [[Esolang:Sandbox]] https://esolangs.org/w/index.php?diff=67879&oldid=67276 * Oklomsy * (+621) 11:21:04 [[Esolang:Sandbox]] https://esolangs.org/w/index.php?diff=67880&oldid=67879 * Oklomsy * (-584) 11:27:46 -!- arseniiv has joined. 11:35:21 [[Dd]] M https://esolangs.org/w/index.php?diff=67881&oldid=67878 * Dart * (-3) 11:38:54 [[Furcode]] https://esolangs.org/w/index.php?diff=67882&oldid=67877 * Oklomsy * (+2023) 11:42:45 [[Furcode]] https://esolangs.org/w/index.php?diff=67883&oldid=67882 * Oklomsy * (+653) 11:43:19 [[Furcode]] M https://esolangs.org/w/index.php?diff=67884&oldid=67883 * Oklomsy * (+6) /* Bash interpreter */ 11:50:22 [[Furcode]] https://esolangs.org/w/index.php?diff=67885&oldid=67884 * Dart * (-1486) There is no point copying the code to the page if there's already a link 11:57:37 [[Joke language list]] https://esolangs.org/w/index.php?diff=67886&oldid=67706 * Oklomsy * (+71) 12:00:10 [[Dd]] M https://esolangs.org/w/index.php?diff=67887&oldid=67881 * Dart * (-20) 12:00:12 [[User:Oklomsy]] N https://esolangs.org/w/index.php?oldid=67888 * Oklomsy * (+148) Created page with "Hello! Welcome to my page, I am [[User:Oklomsy|Oklomsy]] I am the creator of [[Furcode]] I live in Denmark, and my life isn't interesting at all..." 12:09:07 [[Furcode]] https://esolangs.org/w/index.php?diff=67889&oldid=67885 * Oklomsy * (+10) /* Interpreters */ 12:10:04 [[Furcode]] https://esolangs.org/w/index.php?diff=67890&oldid=67889 * Oklomsy * (-1) Marked the broken intrepeter 12:15:12 [[Special:Log/upload]] upload * Oklomsy * uploaded "[[File:Krazykat.png]]": A picture of a crazy cat! 12:16:22 [[User:Oklomsy]] https://esolangs.org/w/index.php?diff=67892&oldid=67888 * Oklomsy * (+77) 12:21:27 [[User:Oklomsy]] https://esolangs.org/w/index.php?diff=67893&oldid=67892 * Oklomsy * (+325) 12:21:40 [[User:Oklomsy]] https://esolangs.org/w/index.php?diff=67894&oldid=67893 * Oklomsy * (+1) 13:56:12 -!- Lord_of_Life_ has joined. 13:57:21 -!- Lord_of_Life has quit (Ping timeout: 250 seconds). 13:57:33 -!- Lord_of_Life_ has changed nick to Lord_of_Life. 15:25:40 -!- MDead has joined. 15:27:16 -!- MDude has quit (Ping timeout: 252 seconds). 15:27:26 -!- MDead has changed nick to MDude. 16:49:19 -!- divergence has quit (Quit: ZNC 1.7.4 - https://znc.in). 16:50:10 -!- diverger has joined. 16:53:30 -!- cpressey has quit (Quit: A la prochaine.). 16:54:34 [[Long]] N https://esolangs.org/w/index.php?oldid=67895 * Hex96 * (+368) Created page with "Long is an esolang that really should not exist. The HELLO world program is this:
 Dwhhwxjwxgxshsxuxsysxhhaxhdhsxhsxhsxh print(string101010100101111001010101010101010101..."
16:55:05  [[Long]]  https://esolangs.org/w/index.php?diff=67896&oldid=67895 * Hex96 * (+1) 
16:55:31  [[Long]]  https://esolangs.org/w/index.php?diff=67897&oldid=67896 * Hex96 * (-1) 
16:56:33  [[User:Hex96]]  https://esolangs.org/w/index.php?diff=67898&oldid=67867 * Hex96 * (+11) /* List of esolangs */
16:57:30 -!- wib_jonas has quit (Remote host closed the connection).
17:03:31  ... so wrong, so nice: pl = read . ("[" ++) . (++ "]")
17:16:00  huh?
17:16:16  ah
17:25:30 -!- ^[ has quit.
17:26:02 -!- ^[ has joined.
17:54:55 -!- LKoen has joined.
18:00:21  Oh yay, another variation on the intcode interpreter.
18:01:29  (Purity means that synchronizing input and output takes extra effort... and as it turns out, that was not really required.)
18:03:25  (while the description says that the hull painting robot can use input instructions all the time, the actual program nicely follows the patter of reading one input, then producing two outputs)
18:05:08 -!- LKoen has quit (Remote host closed the connection).
18:06:52  I've also started to abuse pattern guards a lot...
18:07:12  > let f x | x <- x+1, x <- x*2 = x in f 4
18:07:16   10
18:09:29 -!- LKoen has joined.
18:12:01  Yeah, my prediction that we'd've seen all of Intcode got obsolete in record time.
18:17:51  The one I have now has four I/O mechanisms. One to stdin/out with prompts for interactive use, one that's reads from / writes to a list for earlier problems, one which uses Python's thread-safe queues because I made that feedback loop actually run technically in parallel (I'm sure it's always 4/5 blocking for input though) and now one with just a pair of generic callback functions that do the robot.
18:18:09 -!- LKoen has quit (Remote host closed the connection).
18:21:10  evolution: http://paste.debian.net/1120691/
18:21:17  (very minor spoiler)
18:24:20 -!- LKoen has joined.
18:24:32  Oh the day 2 one didn't have a type signature, but it would've been Int -> [Int] -> [Int].
18:25:19  Maybe we'll see Intcode every second day? :)
18:25:48 -!- FreeFull has joined.
18:26:00  fungot: do you like Langton's ant?
18:26:00  int-e: ( and t f)) if you prefer; the effect is unspecified.
18:27:10  [[User:DmilkaSTD]]  https://esolangs.org/w/index.php?diff=67899&oldid=67844 * DmilkaSTD * (+119) 
18:28:37  [[User:DmilkaSTD]]  https://esolangs.org/w/index.php?diff=67900&oldid=67899 * DmilkaSTD * (-8) 
18:43:53 -!- ^[ has quit.
18:45:02 -!- ^[ has joined.
18:51:58 -!- shikhin has quit (Quit: Quittin'.).
18:53:14 -!- shikhin has joined.
18:53:38  [[Intcode]]  https://esolangs.org/w/index.php?diff=67901&oldid=67851 * Int-e * (+244) /* Example Programs */ Langton's ant
18:58:43  [[Intcode]] M https://esolangs.org/w/index.php?diff=67902&oldid=67901 * Int-e * (+3) days
20:01:22 -!- b_jonas has joined.
20:02:02  fungot, are raspberries better than strawberries?
20:02:02  b_jonas: i am using the fluid-let syntax ( very similar to fnord
20:05:01  oh, that Intcode stuff, is that also about the Advent of Code? good for you. I'm busy doing ugly real-world stuff for work so I didn't bother with that now
20:27:14 -!- LKoen has quit (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”).
20:38:45  [[Intcode]]  https://esolangs.org/w/index.php?diff=67903&oldid=67902 * Int-e * (-78) /* Hello, World! */ a working hello world (the previous version executed undefined opcodes, apparently assuming they would be skipped)
21:31:45  [[Intcode]]  https://esolangs.org/w/index.php?diff=67904&oldid=67903 * Int-e * (+158) Restructure, improve consistency, reduce direct quotes from AoC site, and use less emphasis.
21:33:31  [[Intcode]] M https://esolangs.org/w/index.php?diff=67905&oldid=67904 * Int-e * (+3) missed a spot, as usual...
21:42:53  Hrm, what are the alternatives to  https://esolangs.org/wiki/Category:Usability_unknown ?
21:49:38  int-e: https://esolangs.org/wiki/Category:Unusable_for_programming
21:52:57  int-e: the Categorization page seems to say to me that there's no special category for languages that are usable for programming, I assume because most esolangs should be usable for programming, notwithstanding the large amounts of "brainfuck with some extra instructions but the loops can't nest" nonsense that some users post
21:52:59  [[Intcode]]  https://esolangs.org/w/index.php?diff=67906&oldid=67905 * Int-e * (+501) Computational class, sort categories.
21:54:20  [[Intcode]]  https://esolangs.org/w/index.php?diff=67907&oldid=67906 * Int-e * (-31) I believe Intcode (as of now) is eminently usable for programming
21:54:23  b_jonas: thanks
21:55:05  but, as always, I may just be inventing things, don't trust me when I talk about esolang community traditions
21:56:06 * int-e shrugs.
21:56:29  I take responsibility for the edit, obviously. It's no big deal, it's a wiki, people can overrule things.
21:57:11  . o O ( let's rename it to int-code )
22:08:34  shachaf: How's your SAT learning experience going?
22:09:18  shachaf: I was asleep the last few times you talked about it.
22:25:28  int-e: Haven't touched it since the last time I talked about it here, I think.
22:41:40  for a change, I'm listening to such pop music where the lyrics is pronounced clearly so I can understand every word without refering to a transcript of the lyrics
22:42:02  "enunciates well"
22:43:08  yes, that
22:43:34  though it also slightly helps that these ones are in Hungarian
22:43:55  That's actually a remarkably awful google search term...
22:44:06  Or at least duckduckgo search term.
22:44:49  what is?
22:44:59  The thing in quotes.
22:45:54  "awful" in the sense that none of the hits look in any way interesting... rather they look like actual reviews of singers and speakers of no significance.
22:46:22  Not "awful" in the goatse sense.
22:47:23  well, it's not particularly specific
22:47:31  there are lots of things you could enunciate well or badly
22:50:55  some other times I like to Youtube binge for multiple performances of the same piece of music or poem. it can be interesting to compare them
22:51:26  I mean multiple good performances by different bands or performers
23:11:20 -!- ArthurStrong has joined.
23:13:29  the songs on this album vary a lot in how well the lyrics matches the rhythm of the music