00:00:16 -!- hppavilion[1] has joined. 00:00:23 Here's a problem of theoretical interest to me 00:00:58 Given a number by its prime factorization, calculate the prime factorization of its successor 00:01:10 The idea behind it is Esoteric Data Types 00:01:35 Specifically, the PFact number encoding 00:01:37 easy, drop everything you have and start from scratch 00:02:01 myname: Huh? 00:02:44 i don't think you can get the factorization any easier with the factors of the predecessor 00:02:54 at least not in the general case 00:03:01 myname: This isn't for code I'm working on, this is for a humorous data types 00:03:26 myname: How about for numbers that can be expressed as the product of 8 prime numbers, all of which must be in the smallest 256 prime numbers? 00:03:27 xD 00:03:51 (wait, no, smallest 255, where 0b00000000 is 1) 00:04:17 -!- Nithogg has quit (Ping timeout: 260 seconds). 00:04:32 myname: The idea behind the PFact type is that it's a data type that expresses numbers as the product of 8 primes 00:04:59 -!- Nithogg has joined. 00:05:00 Well, up to 8 00:05:22 myname: Assuming 64-bit registers, each number must fall in the 255 smallest primes, with 1 filling in gaps when n<8 00:11:34 -!- augur has joined. 00:14:40 hey 00:18:48 -!- tromp has joined. 00:20:55 Lemme find one of those hard-to-factor numbers. 00:21:21 Now, the question "given the factorization of n, what is the factorization of n+1?" definitely sounds pretty interesting. 00:21:36 And here's one thing that you do know: the two numbers cannot have any prime factors in common. 00:21:52 would be surprised if you can say anything enormously stronger than that 00:22:14 (Because if p is a prime factor of n and p is also a prime factor of n+1, then n/p and (n+1)/p are both integers, so 1/p is an integer. But that's impossible.) 00:22:40 afaik the link between the primeness of n and n+2 is still an open problem 00:23:22 Here's a number that's hard to factor: 00:23:24 1522605027922533360535618378132637429718068114961380688657908494580122963258952897654000350692006139 00:23:32 also, at most one of the numbers can _be_ prime hth 00:23:44 ...excepting 2 and 3. 00:23:51 Except that it's pretty easy to factor it using the Google method. 00:23:59 Anyway, let's see what the factorization of its predecessor is. 00:24:24 oerjan: 2 and 3 don't have any prime factors in common 00:24:41 Other than 2.5 00:24:46 coppro: and this contradicts what i said how? 00:24:57 oh 00:25:01 I missed the line above that 00:25:02 nvm 00:25:15 Okay, I found the factorization. It is: 00:25:41 2 * 3^2 * 210974974123 * 400944086233670527306310281636760087998315351567377660286363410284049027879820778576767 00:25:57 the 2 was easy 00:25:58 That's probably pretty dang unhelpful. 00:26:04 Yup. 00:26:28 Fun fact: for 100% of all prime numbers p, p-1 has 2 as a factor. 00:26:50 I wonder what the factorization of 400944086233670527306310281636760087998315351567377660286363410284049027879820778576766 is... 00:26:52 what about 2? 00:27:01 i vaguely recall there's some restriction on the prime factorization of pq-1 in order for pq to be a good RSA key 00:27:16 myname: nope, 2-1 doesn't have 2 as a factor. 00:27:28 that's not 100% then 00:27:33 Of course it is. 00:27:38 Surprisingly, 400944086233670527306310281636760087998315351567377660286363410284049027879820778576766 is taking several seconds to factor. 00:27:52 how is it? 00:28:03 myname: it's 100% by the most useful definition, aka density. 00:28:07 Well, what percentage do you think it is? 00:28:22 i see what you did there 00:32:33 Dang, it's taken over five minutes so far to factor that bad boy. 00:37:23 -!- impomatic_ has quit (Ping timeout: 248 seconds). 00:39:50 if I recall the idea of RSA is that, if you calculate 2^n modulo 13, the result will loop every steps 00:39:59 every 12 steps 00:40:33 since the result can't go through 0 but it has to go through all other numbers since 2 and 13 have no common factors 00:41:29 Do you know if it is OK to call Pa_Terminate and/or Pa_CloseStream in a signal handler? 00:41:41 if you calculate 2^n modulo 13*17, logically the modulo 13 part loops every 12 and the modulo 17 part loops every 16 00:44:11 ""For security purposes, the integers p and q should be chosen at random, and should be similar in magnitude but 'differ in length by a few digits"" 00:46:18 "Since any common factors of (p-1) and (q-1) are present in the factorisation of p*q-1,[14] it is recommended that (p-1) and (q-1) have only very small common factors, if any besides the necessary 2." 00:52:20 -!- XorSwap has joined. 00:58:47 Woo. It took half an hour and fifteen seconds, but I got that number factored. The factorization is: 00:59:25 2 * 3 * 409 * 1645447576107402059859920361500918359 * 99294502354941754852634597949140561238814554731 00:59:35 Now, of course, I wonder what the factorization of 99294502354941754852634597949140561238814554730 is. 01:00:27 go for it 01:00:51 if I recall the idea of RSA is that, if you calculate 2^n modulo 13, the result will loop every steps <-- i think you may be confusing RSA with discrete logarithm, or something. 01:01:18 It's 2 * 5 * 17 * 22369 * 243130343851969331 * 107396603915138092862971. And the factorization of 107396603915138092862970 is 2 * 3 * 5 * 13 * 17 * 281 * 991 * 2758397 * 21088237. 01:02:09 And the factorization of 21088236 is 2^2 * 3 * 13 * 135181, and the factorization of 135180 is 2^2 * 3^2 * 5 * 751. 01:02:12 Done. 01:02:29 oerjan : RSA and the discrete logarithm are related I think 01:02:30 weird anchor 01:02:47 `? weird anchor 01:02:55 weird anchor? ¯\(°​_o)/¯ 01:03:13 since the result can't go through 0 but it has to go through all other numbers since 2 and 13 have no common factors <-- that's not enough, you actually need to check if 2 has that property. however, given that 13 is prime, _some_ number ("primitive root") will loop through all of them. 01:03:48 mad: a bit maybe. 01:04:18 > length $ nub [2^n `mod` 13 | n <- [0..11]] 01:04:19 12 01:04:51 oerjan: huh? 01:04:59 what did you expect? 01:05:12 > [(p,length $ nub [2^n `mod` p | n <- [0..p-1]]) | p <- [3,5,7,11,13,17,19,23,29,31]] 01:05:13 [(3,2),(5,4),(7,3),(11,10),(13,12),(17,8),(19,18),(23,11),(29,28),(31,5)] 01:05:30 myname: it could have been something else. of course 13 _wouldn't_ be an example. 01:06:10 ah, 1,2,4,1 01:06:12 i see 01:06:23 look at 7, 17, 23 and 31 up there. 01:07:02 in general, the order is some factor of p-1 01:07:19 but not all numbers will give exactly p-1. 01:07:42 hmm 01:09:40 if you calculate 2^n modulo 13*17, logically the modulo 13 part loops every 12 and the modulo 17 part loops every 16 <-- i vaguely recall our professor pointing out that RSA works even if the number you take power of _does_ have _one_ of the primes as a factor. which doesn't follow from that argument and needs a distinct proof. 01:10:00 hmmm 01:11:29 hm wait does that make sense. 01:12:19 hm i think so. 01:12:35 tswett: Oh, you're factoring numbers. Great 01:12:44 tswett: Of course, you're doing it the noob way 01:12:48 well 01:13:05 if you start with some number N, multiply by 2, modulo M 01:13:12 say M is 17 01:13:16 repeat 01:13:23 you have two possible loops 01:13:47 Done. <-- now use that to create a prime certificate for whatever it was you started with hth 01:13:56 Let's play: What's! That! Algorithm! 01:14:34 You all know the rules: Given an algorithm constraint or constraint set (complexity class, space complexity, etc), name an algorithm that operates in it 01:14:38 O((log N)2(log log N)(log log log N)) 01:15:08 1>2>4>8>16>15>13>9>1... and 3>6>12>7>14>11>5>10>3... 01:15:14 why is the 2 in the middle? 01:15:32 i guess you are missing stuff 01:15:47 i guess it is ^2 and there is a / et the end 01:15:49 myname: It's a suberscript 01:15:56 the loop time is guaranteed to be p-1 or p-1 divivded by n 01:16:23 myname: I copied it directly, there are no mistakes 01:17:27 mad: p-1 is just (p-1)/1, anyhow 01:19:05 hppavilion[1]: you're assuming copying a webpage formula gives you a reasonable copy tdnh 01:19:40 oerjan: It did in this case 01:19:54 oerjan: O((log N)2(log log N)(log log log N)) is short enough to verify correctness by reading 01:19:58 isn't the 2 a superscript at _least_? 01:20:24 you said as much. so it was not correctly copied. 01:21:17 n ^ (p-1) modulo p = 1 01:21:20 I _think 01:21:32 mad: yes, that's fermat's little theorem. 01:22:03 n ^ (p-1)(q-1) modulo pq = 1 01:22:25 mad: assuming p and q are not factors of n 01:22:57 well, assuming n < pq 01:23:20 and yes assuming that p and q are prime 01:23:40 n < pq is not enough, what if n = p 01:24:09 then it's looping though q only I think? 01:24:20 obviously. 01:24:29 which means that then n ^ (q-1) = 1 01:25:18 but still you have n ^ ((p-1)(q-1)+1) == n (mod pq), which is what my professor mentioned 01:25:48 or thereabouts. 01:25:55 n ^ k(p-1)(q-1) modulo pq = 1 for any k 01:26:21 well, obviously 01:26:36 1^k = 1 is no rocket science 01:26:55 except in linear logic hth 01:27:28 i don't know that stuff yet 01:27:39 oerjan: So what does it mean that LEM is multiplicative? 01:28:23 least evil multiple 01:28:47 law of excluded middle 01:29:22 shachaf: well, you know that proof of LEM (or something equivalent to it) using continuations, right? 01:30:08 Yes. 01:30:10 and using continuations for cheating by passing a counterexample back... which is iiuc also what # allows you to do 01:30:21 so it needs that feature of #. 01:30:21 Right, except it's more/less restricted. 01:30:44 # is a bit like threads. 01:30:50 And so is ⊗ 01:33:01 lemCC = callCC (return . Right . (<=< return . Left)); 01:33:41 callCC x = lemCC >>= either return x; 01:34:10 :t callCC (return . Right . (<=< return . Left)) 01:34:11 MonadCont m => m (Either a (a -> m b)) 01:34:43 Does a prime number not being in a number's prime factorization imply that that number does not evenly divide the latter number? 01:34:56 I would think it does under the Fundamental Theorem of Arithmetic 01:35:21 hppavilion[1]: yes. i think that's usually a lemma used to _prove_ the FTA 01:35:23 how should it? 01:35:27 Yes it does imply 01:35:40 that is, if p divides m*n, then p must divide either m or n. 01:36:46 Oh, I see where this bug is coming from 01:36:50 I think callCC is a better axiom than the law of excluded middle. 01:37:01 -!- Phantom_Hoover has quit (Read error: Connection reset by peer). 01:37:01 In fact, it's more of a lemma. 01:37:06 Well, either one would work 01:37:17 shachaf: callCC is pierce's law 01:37:22 I know. 01:37:25 Either one can be prove by the other one 01:37:26 I was just going for the pun. 01:37:58 oerjan: also it's peirce's law because why should anything be easy hth 01:38:17 Wait... 01:38:23 -!- JX7P has joined. 01:38:30 Intuitionistic logic forgoes the law of excluded middle, does it not? 01:38:32 shachaf: i considered checking and/or lampshading 01:38:37 hppavilion[1]: yes. 01:38:50 this must be the closest to a substitute for ##programming that i can find focusing particularly on PLT/language design 01:38:52 oerjan: And type systems are typically intuitionistic? 01:39:02 JX7P: PLT? 01:39:13 programming language theory 01:39:13 <\oren\> wat. kim kardashian's father was oj simsons lawyer? 01:39:15 JX7P: Yeah, we're the most active one at least 01:39:21 often, like gay rights, symbolised by the lambda 01:39:25 JX7P: There is ##proglangdesign, but it's not as active 01:39:32 JX7P: Yeah xD 01:39:38 it is also empty 01:39:42 Yes normally the type system are using intuitionistic logic, although you can use classical logic with continuations 01:39:47 JX7P: Might've typoed 01:40:03 JX7P: It was kind of a shock when I first saw the lambda associated with gay rights :P 01:40:19 wat 01:40:21 oerjan: What do you think about dual-intuitionistic logic? 01:40:33 JX7P: We do do design, but we typically don't focus on making it good so much as interesting and different, but we might still be able to help you. 01:41:04 shachaf: dual-intuitionistic logic thinks about me hth 01:41:19 oerjan: Are you a soviet? 01:41:26 oerjan: cmccann was excited about it a while ago and now that I'm reading about linear logic I'm a bit excited about it too. 01:41:30 hppavilion[1], as a community alone it will be interesting i think 01:41:45 JX7P: OK 01:41:53 ##programming did not appreciate my constant invocation of dialectical logic, which led to getting quieted 01:41:55 JX7P: Do you have any ideas in mind? 01:42:03 Dialectical? 01:42:19 <\oren\> what's dialectical logic? 01:42:20 i, on the other hand, think the perfect riposte to that is a programming language substituting dialectical logic for formal logic 01:42:38 -!- augur has quit (Remote host closed the connection). 01:42:45 whoa whoa whoa 01:42:58 it's the logic developed by plato, hegel, marx, and adorno 01:42:58 "Dialectical logic was the system of laws of thought, developed within the Hegelian and Marxist traditions, that sought to supplement or replace the laws of formal logic." 01:42:59 Is that like dialectica categories? 01:43:14 oerjan: Are you a soviet? <-- no, but dual logic clearly is hth 01:43:22 oerjan: Yeah 01:43:26 oerjan: Also, dialectical 01:44:11 maybe the most significant thing noted in dialectical logic is that ¬¬X is X, but X isn't ¬¬X 01:44:12 -!- lynn_ has quit (Ping timeout: 244 seconds). 01:44:28 oerjan: Dual-intuitionstic logic has DNE but not DNI 01:44:54 the negation of the negation is 'enriched', it is the original but of a higher order 01:45:03 ##programming did not appreciate my constant invocation of dialectical logic, which led to getting quieted <-- such is being the antithesis? 01:45:24 oerjan, the synthesis being my joining this channel 01:45:34 Like how in intuitionistic logic logic you can only have one thing on the right side of a sequent, in the dual you can only have one thing on the left side. 01:45:35 now I am back at the thesis, being in a channel about programming 01:46:01 but this time it has become refined, enriched, by finding a channel more specifically suited to my particular interests 01:46:20 shachaf: you know, that sounds strangely like what JX7P said above 01:46:25 JX7P: Checked out the wiki yet? 01:46:34 somehow. 01:46:37 hppavilion[1], i'm afraid i haven't 01:46:40 You can tell me if you intend to design any kind of programming language and whatever 01:46:45 `wiki 01:46:46 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: wiki: not found 01:46:51 Damn, was hoping that'd work 01:46:53 oerjan: whoa whoa whoa, so it is 01:47:01 maybe dual-intuitionistic logic and dialectic logic is the same thing! 01:47:02 http://esolangs.org/ is wiki 01:47:40 dual intuitionistic logics have some similarity since they can handle contradictions 01:47:42 `` echo "echo \"http://esolangs.org/wiki/Main_Page\"" > bin/wiki 01:47:42 oerjan: maybe you and i are the same thing 01:47:45 No output. 01:47:48 `wiki 01:47:49 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: /hackenv/bin/wiki: Permission denied \ /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: /hackenv/bin/wiki: cannot execute: Permission denied 01:47:52 ... 01:47:56 I'm not going to go there today 01:47:58 hppavilion[1]: should've used mkx 01:48:04 shachaf: Right, right 01:48:24 `rm bin/wiki 01:48:27 But also shouldn't've cluttered bin/ like that. That's why we have wisdom. 01:48:28 No output. 01:48:33 ...To be cluttered up? 01:48:42 shachaf: Yes, but this way we can just do `wiki 01:48:45 And look badass 01:48:51 (Relatively) 01:49:03 ^wiki 01:49:03 http://esolangs.org/wiki/ 01:49:04 anyway, thanks zzo38 01:49:04 JX7P: Know any LISP? 01:49:07 oerjan: Thank you 01:49:11 hppavilion[1]: why not add a factoid instead of a command? 01:49:20 hppavilion[1], i'm familiar with scheme at a basic level 01:49:21 `? wiki 01:49:23 The wiki is at http://esolangs.org/wiki 01:49:28 JX7P: Made your own LISP yet? 01:49:28 hppavilion[1]: I didn't even do that for `weather 01:49:31 `? weather 01:49:32 lambdabot: @@ @@ (@where weather) CYUL ENVA ESSB KOAK 01:49:34 CYUL 050100Z 15004KT 15SM SKC M07/M15 A3025 RMK SLP248 \ ENVA 050050Z 09007KT 5000 -SN VV007 01/M01 Q1002 RMK WIND 670FT 14013KT \ ESSB 050120Z AUTO 12005KT 9999 FEW025/// OVC031/// 01/M00 Q1008 \ KOAK 050053Z 15012KT 10SM -RA SCT019 BKN037 OVC075 17/17 A2993 RMK AO2 RAE18B34 SLP133 P0000 T01720167 01:49:37 also Coke (which is not quite Lisp but is close) 01:49:39 -!- augur has joined. 01:49:40 lambdabot: THAMBDABOT 01:49:46 `misle/rn wiki/The wiki is at http://esolangs.org/wiki 01:49:49 Was lied to about «wiki» 01:50:00 hppavilion[1], it formed a very useful avenue for research https://github.com/Valutron/Valutron 01:50:11 i really want to misle rn 01:50:15 hppavilion[1]: why? 01:50:28 it was a partnership effort. unfortunately my partner lost interest 01:50:36 Can we make `? wiki direct you to an ancient stone tablet or give you an ISBN? xD 01:50:46 Why? 01:50:53 I think the esolang wiki is not a book? 01:50:53 what for? 01:51:08 myname: shachaf: zzo38: To be more in line with wisdom 01:51:16 eh? 01:51:23 What are you suggesting? 01:51:27 That wisdom isn't useful? 01:51:30 `tomfoolery wisdom 01:51:33 wisdom is tomfoolery 01:51:51 shachaf: No 01:51:59 shachaf: It'd be the ISBN for a really good book 01:52:05 shachaf: Which would be useful 01:52:10 But that's not what people want. 01:52:14 that would not be the wiki 01:52:18 in the end, valutron's main yield was twofold: #1 lisps can be easily translated into a forth; #2 everything must, must be an object 01:53:35 \oren\: OO language alert 01:54:00 hppavilion[1]: any attempt to cleanse wisdom of everything true may lead to me merging tomfoolery back into it hth 01:55:07 hppavilion[1] : the world is OO 01:55:44 what i particularly like about SmallTalk is that Alan Kay describes the objects as monadic 01:55:50 (meaning it in the leibnizian sense) 01:56:00 <\oren\> hppavilion[1]: as i've said before my problem sin't with OO itself but with the way a lot of OO languages treat functions badly 01:56:02 this causes no end of confusion to functional people 01:56:08 https://www.quora.com/What-is-the-most-illegal-thing-you-could-possibly-do/answer/Phil-Albert 01:56:28 \oren\, perhaps you would respect the Combined Object-Lambda Abstraction and its implementation Coke 01:56:43 plot twist: removing true wisdoms is illegal? 01:57:15 or even SmallTalk-71/72, when it was still obviously lisp 01:57:30 \oren\ : how do OO languages treat functions badly? 01:59:59 <\oren\> for example, in java, you can't have a function that isn't inside a class 02:00:13 this is a design element 02:00:29 and? you can have a static function instead, that's functionally equivalent 02:00:35 the idea is that the only action is the communication of objects 02:00:39 <\oren\> and can't pass a function to another function (even though C can) 02:01:02 in SmallTalk-family languages, one can simply pass a selector or a block to functions 02:02:34 or even a whole message ready to be sent 02:02:46 there are no functions in the Kayian OO 02:02:55 \oren\ : java uses interfaces instead of pointers for callbacks yes 02:03:35 I want to make a hackable LISPlike2JS compiler 02:03:45 s/compiler/transpiler/ 02:04:04 Something that people can download and reengineer into a custom language for their own devious purposes 02:05:20 I guess you could say the same for C/C++, what you have is really more callbacks than function variables 02:05:37 <\oren\> overall, these OO languages tend to require a lot of boilerplate and repeating the same code 02:06:01 i think it's important not to conflate Java and C++ with authentic Kayian OO 02:06:04 \oren\: Which is exactly what OO and functions were invented to eliminate xD 02:06:17 <\oren\> there are good OO languages 02:06:30 <\oren\> python for instance 02:06:41 you have experimented with the SmallTalk? 02:06:46 (or even Objective-C?) 02:07:31 JavaScript supports real function-oriented programming, and so does Haskell 02:08:04 i like ruby more 02:08:37 myname: BOOOOOOOOO 02:08:40 everything is an object, but in a way that doesn't throw sticks at you if you ignore that 02:09:09 it is like 110% syntax sugar 02:09:17 i observed a large deal of smalltalk influence in the ruby 02:09:20 In JavaScript not everything is object, although everything other than undefined and null can be used as objects 02:09:53 <\oren\> ruby is good too, but it's slow 02:10:04 if ypu ever even need one gem in ruby, you are screwed, though 02:18:58 null is evil 02:19:43 quite 02:20:34 <\oren\> in VB it is called 'Nothing' 02:20:56 <\oren\> If x Is Nothing Then Return Nothing 02:30:55 On Error Resume Next 02:30:57 Yes I have program in VB as well, the null of JavaScript is like Nothing in VB, and I suppose undefined in JavaScript corresponds to Empty in VB, maybe, although it has been some time so I don't quite remember properly 02:39:28 -!- ^v has joined. 02:46:43 -!- hppavilion[1] has quit (Ping timeout: 252 seconds). 03:11:22 myname: What's wrong with gems? 03:34:37 -!- oerjan has quit (Quit: Nite). 03:37:10 I got an error message when using PortAudio, it is exactly the same as shown here: https://github.com/Katee/quietnet/issues/18#issuecomment-40658475 (look below "quietnet# python send.py") 03:38:10 (Sound output nevertheless seems to work) 03:39:54 I found something I can try 03:41:49 I got rid of the first three lines at least 03:48:07 Despite the error message, the sound works. 04:06:41 -!- bender|_ has joined. 04:07:31 <\oren\> I finally got around to intalling mingw and compiling my game for windows 04:09:58 Is 735 a too low frame count? 04:10:01 What game is that? 04:11:32 <\oren\> a shooting game where you look at it in 3d by crossing your eyes 04:12:11 -!- bender|_ has quit (Remote host closed the connection). 04:13:59 -!- bender|_ has joined. 04:14:21 -!- sid123__ has joined. 04:14:35 -!- sid123__ has quit (Read error: Connection reset by peer). 04:15:01 <\oren\> maybe I'll rewrite it in Javascript 04:15:33 <\oren\> or maybe just line-by line translate it from C into Javascript 04:15:46 <\oren\> yah that's a better idea 04:19:58 <\oren\> anyway, the game and the bmp font file it uses are here 04:20:08 <\oren\> http://www.orenwatson.be/autostereo.htm 04:20:16 <\oren\> http://www.orenwatson.be/littlefont2.bmp 04:21:05 <\oren\> containing an ancient version of neoletters 04:33:49 -!- lleu has joined. 04:34:55 <\oren\> `unidecode 渚 04:35:06 ​[U+FA46 CJK COMPATIBILITY IDEOGRAPH-FA46] 04:43:12 -!- treaki_ has joined. 04:43:17 <\oren\> `u8tbl 0x6e1a 0x6e1a 04:43:18 Segmentation fault 04:43:23 <\oren\> `` u8tbl 0x6e1a 0x6e1a 04:43:24 ​渚 04:47:03 -!- treaki has quit (Ping timeout: 268 seconds). 04:48:48 -!- XorSwap has quit (Quit: Leaving). 05:31:47 -!- augur has quit (Remote host closed the connection). 05:49:06 -!- augur has joined. 05:52:38 This certainly won't get confusing: http://slbkbs.org/coherent-notations.png 06:01:22 -!- hppavilion[1] has joined. 06:02:45 https://en.wikipedia.org/wiki/Category:Category-theoretic_categories is a fun wikipedia category 06:03:50 Something that'd be fun is a math wiki where the wiki categories are category-theoretic 06:09:45 <\oren\> shachaf: somehow I think that would be easier to read in the orginal LaTeX source code 06:16:29 <\oren\> > 8 * 670 06:16:31 5360 06:52:28 hppavilion[1]: What's the initial object of a wiki category? 06:52:45 prooftechnique: The main page for that category 06:53:10 prooftechnique: What is an "Initial Object"? 06:55:04 An object L such that for any object X there's a unique arrow from L to X. 06:55:27 shachaf: Ah 06:55:32 What objects are initial in the categories I talked about the other day? 06:55:42 shachaf: Let me check 06:56:25 shachaf: Well 0 in category A, off the top of my head 06:56:32 shachaf: (I don't have my notes open yet) 06:56:59 They should have better names. 06:57:08 A should be called N. 06:57:33 B should be called Lin 06:57:36 C should be called Fnord 06:57:56 shachaf: Blackboard Bold N? 06:58:10 Whatever you want. 06:58:23 Fraktur N is prettier 06:58:54 My internet is going REALLY slow :/ 06:59:06 I think I hit the data cap and it hasn't reset yet 07:00:17 shachaf: So composition in ℕ is just the transitive property of ≤, correct? 07:00:30 A naive assumption would be that the wiki category listing page is the initial object, as long as none of the pages are interlinked 07:00:55 Composition is a function. 07:01:00 prooftechnique: Can a category have more than one initial object? 07:01:07 shachaf: Ah 07:01:12 They're isomorphic 07:01:13 shachaf: See, I knew that, but I wasn't sure 07:01:30 The answer is either yes or no depending on what you mean. 07:01:35 I wasn't sure it HAD to be a function 07:01:36 On the other hand, the category listing page is almost certainly a terminal object 07:02:06 Well, it doesn't have to be function. 07:02:13 Some categories are too large for it to be a function. 07:02:16 prooftechnique: Is linking an arrow from the linker or from the linkee? 07:02:40 shachaf: What function is there that is suitable for composition in ℕ? 07:02:44 shachaf: I can't think of any 07:02:46 Depends if you can go the other way, I guess 07:02:55 hppavilion[1]: It composes arrows. 07:03:13 shachaf: OK... 07:03:20 So for example there's an arrow from 2 to 4 and an arrow from 4 to 8. You can compose them to get an arrow from 2 to 8. 07:03:33 It corresponds to transitivity, sure. 07:03:55 OK 07:04:02 shachaf: But is that right? xD 07:04:09 What? 07:04:37 shachaf: What is composition in ℕ? Is it just the transitive property, or is it something else? 07:04:49 I don't know. 07:04:56 shachaf: I'm unsure if that last message is a yes because of the word "corresponds" 07:05:02 I'd say that it's a function and not a property. 07:05:07 OK 07:05:09 But it's substantially the same thing. 07:05:42 shachaf: If it's properties, it works well because x ≤ x, which of course works with the identity morphisms nicely 07:06:44 There's a property: If there's an arrow : A -> B, and there's an arrow : B -> C, then there's an arrow : A -> C 07:07:09 But composition doesn't just tell you that there is an arrow, it's a function that takes those two arrows and gives you the third one. 07:07:10 shachaf: Yes, knew that 07:07:18 shachaf: OK 07:07:27 In this case that's pretty boring because there's only one arrow : A -> C 07:09:24 shachaf: I think my issue is that I have no clue what arrows are supposed to be in ℕ; in sets they're functions, but I can't tell what they are here 07:09:36 s/in/with the objects as/ 07:09:39 They aren't anything. 07:09:43 OK 07:09:50 That's what I've been assuming, but I had to check 07:09:58 They aren't anything in Set either. 07:10:09 shachaf: They /represent/ functions 07:10:27 OK. 07:10:36 Then these arrows represent the relationship <= 07:10:39 shachaf: At least that's what wikipedia told me 07:10:50 shachaf: Yes, that was a given 07:12:28 Anyway the question of what object is initial is easy 07:13:26 shachaf: My money's on 0 07:13:41 Why? 07:14:00 shachaf: Because all natural numbers are greater than or equal to 0 07:14:13 sgtm 07:14:19 What about a terminal object? 07:14:32 shachaf: None; there's always a bigger number 07:14:40 shachaf: You can always add 1 07:14:40 sgtm 07:14:43 Same 07:14:43 sgtm? 07:14:45 Heh 07:14:47 What if we add infinity? 07:14:56 (silently giggling to myself) 07:15:00 shachaf: Then infinity is a terminal object, assuming you don't have inf+1 and such 07:15:04 prooftechnique: *Sigh* 07:15:10 prooftechnique: What did I do? 07:15:11 "sounds good to me" 07:15:13 `? sgtm 07:15:14 Oh 07:15:15 sgtm? ¯\(°​_o)/¯ 07:15:26 Makes sense 07:15:44 `le/rn sgtm/Sergeant Mustard 07:15:51 Learned «sgtm» 07:16:52 Anyway this is barely category theory, it's just order theory. 07:16:54 shachaf: Did he get a promotion? 07:16:57 (Or demotion?) 07:16:59 damn 07:17:11 You should figure out Fnord. 07:17:30 shachaf: Working on that, but I'm still yet to figure out pointwise indexing 07:17:44 Oh, pointwise indexing is easy. 07:18:28 shachaf: OK 07:18:37 Take (3,4,5) : 3 -> 6 07:19:01 Easy? So Sgeo invented it? 07:19:11 Compose it with (10,20,30,40,50,60) : 6 -> 100 07:19:24 What do you get? 07:19:56 shachaf: (30, 40, 50) : 3 -> 100 ?? 07:20:12 (40,50,60) : 3 -> 100, because it's 0-indexed 07:20:18 Oh, right 07:20:32 shachaf: So it's exactly what I tried to ask the other day with INTERCAL's select operator 07:20:34 Where you said it isn't 07:20:35 xD 07:20:35 What's the identity : 3 -> 3? 07:20:45 I looked up that operator and I don't think it's that. 07:21:02 Also I don't like the sequence of characters "xD". 07:21:20 shachaf: Why not? 07:21:27 The latter, not the former 07:21:43 I don't have to justify it. 07:22:37 shachaf: Do you prefer (╯°□°)╯︵ ┻━┻? 07:22:39 No. 07:23:36 Anyway now that you know what composition is you can invent identity. 07:23:41 \oren\: You will be pleased to know that kaomoji are rendered beautifully in your font 07:24:33 shachaf: How about <コ:彡? 07:24:42 No. Please stop sending them to me. 07:24:47 Fine... 07:24:49 -!- lambda-11235 has quit (Quit: Bye). 07:27:29 shachaf: Are they the empty tuple or the tuple (0) ? 07:27:38 (1-tuple? Is that even allowed?) 07:27:49 Wait, maybe not 07:27:49 An arrow : N -> M is an N-tuple 07:27:54 Yes 07:28:01 Where all values < M 07:28:12 So an arrow : 3 -> 3 isn't a 1-tuple 07:28:27 shachaf: So it has to be a tuple... containing all numbers 0 .. M-1 07:28:32 Maybe? 07:28:39 Maybe. 07:28:53 shachaf: Wait, no 07:29:08 Each initial object of a category can also define a comonad 07:29:09 shachaf: It just has to have all numbers 0 .. q-1, where q < M 07:29:32 sgtm 07:29:44 zzo38: Which comonad? 07:29:49 shachaf: Perhaps they have to be in order, too 07:29:55 shachaf: But I'm not sure 07:29:59 Let me think about it 07:30:06 hppavilion[1]: What's (0,1) . (1,0)? 07:30:13 And (1,0) . (0,1)? 07:30:21 shachaf: (1, 0) and (1, 0) 07:30:29 shachaf: But does that work in the general case? 07:30:44 shachaf: I have called it the "Initialize comonad", although I don't know if other names are used. The functor map all object to that initial object (and all morphisms to the identity). 07:31:27 you tell me hth 07:32:25 shachaf: Theory: They have to contain the numbers 0 .. q-1 : q < M in either ascending or descending order 07:32:32 Each final object of a category can also define a monad 07:33:11 -!- augur has quit (Remote host closed the connection). 07:33:15 And a category with more than one object always has more monads than final objects and more comonads than initial objects. 07:33:42 Why? 07:34:23 shachaf: Because that way it will always produce itself... hm... 07:34:43 It is not too difficult to prove (in my opinion), as I have figured it out myself at least and not in such a complicated way 07:35:53 shachaf: I suppose they don't need to have any particular order 07:36:34 http://www.emojicode.org/docs/ 07:38:32 zzo38: Oh, right. 07:41:12 that thing supports sqlite http://www.emojicode.org/docs/packages/sqlite/t5535756538.html 07:57:50 -!- vodkode has joined. 08:03:01 I just realized "The enemy of my enemy is my friend" implies that if you have two enemies who are enemies of each other, they are both also your friends 08:04:28 Also if your enemy is their own enemy. 08:04:32 Or you're your own enemy. 08:17:39 -!- hppavilion[1] has quit (Ping timeout: 248 seconds). 08:22:46 In that case I think you're a zero object in the category of enemies 08:23:33 -!- tromp has quit (Remote host closed the connection). 08:23:56 -!- Frooxius has joined. 08:24:10 prooftechnique: gems tend to break a lot during updates. and too long at that 08:25:15 I see 08:25:58 i used to use sup as a mail client 08:26:17 until it broke for weeks due to ruby updates 08:26:54 I think I tried to use sup during one of those weeks. Couldn't get it to build 08:26:58 Now I just use mutt and notmuch 08:27:23 notmuch is interesting 08:27:42 Ain't that the truth 08:27:43 last time i checked, mutt was horrible for multiple accounts 08:28:09 I'm finding it pretty straightforward. I use OfflineIMAP to actually fetch the mail, though 08:28:18 And msmtp to send it 08:28:25 i did that for sup, too 08:28:47 sup just had one global inbox for every account 08:29:11 I've just got separate account configs that get sourced when I open the right mailboxes, and a couple of macros to jump around. 08:29:18 i thought of writing my own notmuch ui, but i got a smartphone since then ... 08:29:45 as i said, horrible for multiple accounts 08:29:55 How's that horrible? 08:30:26 The account configs are just Maildir, Use GPG?, and account names 08:30:38 why do need to do that weird stuff? i just want one inbox 08:30:49 and it would not even be hard to do that 08:31:00 Because I have work email and personal email that I want to keep separate 08:31:04 -!- AnotherTest has joined. 08:31:48 And I can just hit l anywhere and query for stuff in notmuch, so I don't even have to be that thoughtful about it 08:34:21 And the idea of having an even larger backlog of email with no separation of concerns sounds maddening. I already have a dozen imapfilter rules running constantly just to keep backburnered stuff sorted 08:36:05 Email is awful and we should kill it 08:36:15 But it's still better than the telophone 08:36:18 *telephone 09:24:01 -!- tromp has joined. 09:24:37 -!- lleu has quit (Quit: That's what she said). 09:24:58 I use Heirloom Mailx as the email program 09:25:26 But I do telephone call and postal too 09:26:57 How can I reach you via telephone call and postal? 09:27:19 I guess I can use the information in your whois records. 09:29:51 -!- tromp has quit (Ping timeout: 264 seconds). 09:39:53 You likely do not need to read me by telephone, postal, or email, but yes there is information in whois records. But if you must do so, you must write my name (Aaron Black). 09:43:39 What if I want to send you a cake? 09:44:57 Then it won't fit in an envelope; you will need a larger package. However, I can get a cake from elsewhere it does not have to be mailed. 09:48:47 Isn't it better when the cake is a gift, though? 09:50:50 Even if it is it should be from family and should not be mailed 09:54:08 -!- Elronnd has quit (Quit: Let's jump!). 09:55:21 What! Only from family? 09:55:25 -!- Elronnd has joined. 09:59:57 For a cake, yes. A message may come from anyone though. 10:14:18 -!- mad has quit (Quit: Pics or it didn't happen). 10:40:26 -!- jaboja has joined. 10:51:51 -!- AlexR42 has joined. 11:08:58 -!- bender| has joined. 11:25:09 -!- AlexR42 has quit (Quit: My Mac has gone to sleep. ZZZzzz…). 11:32:01 -!- lynn_ has joined. 11:35:41 -!- lynn__ has joined. 11:36:54 fungot: Surely a cake is also a message, of sorts. 11:36:54 fizzie: are you a man, if there weren't evil in this kingdom to you! eat! fun!! 11:38:48 -!- lynn_ has quit (Ping timeout: 250 seconds). 11:40:56 -!- AlexR42 has joined. 11:47:28 -!- Reece` has joined. 11:47:49 -!- Reece` has quit (Client Quit). 11:49:41 -!- AlexR42 has quit (Quit: My Mac has gone to sleep. ZZZzzz…). 12:16:42 I got X.Window.prototype.createWidget and X.Window.prototype.redraw to work now; also now if you use X.Drawable.prototype.setBackground and X.Window.prototype.clear it will use that colour as the background of the window. 12:54:47 -!- Frooxius has quit (Quit: *bubbles away*). 13:04:42 -!- J_Arcane_ has quit (Ping timeout: 268 seconds). 13:25:42 -!- tromp has joined. 13:29:59 -!- tromp has quit (Ping timeout: 244 seconds). 13:41:58 -!- boily has joined. 13:45:09 @metar CYQB 13:45:09 CYQB 051300Z VRB02KT 30SM FEW005 FEW090 M19/M23 A3026 RMK ST1AC1 ST TR ST OVR RVR SLP257 13:50:44 @metar CYUL 13:50:45 CYUL 051300Z 35002KT 15SM FEW120 FEW240 M13/M17 A3027 RMK AC1CI1 AC TR SLP256 13:59:58 -!- jaboja has quit (Remote host closed the connection). 14:06:00 -!- tromp has joined. 14:16:31 -!- tromp has quit (Remote host closed the connection). 14:20:47 -!- boily has quit (Quit: SCOTCH CHICKEN). 14:33:35 -!- lynn__ has changed nick to lynn. 14:39:41 -!- boily has joined. 14:41:45 -!- oerjan has joined. 14:52:35 hellørjan! 14:53:21 afternoily! 14:54:01 [wiki] [[Brainfuck]] https://esolangs.org/w/index.php?diff=46496&oldid=46459 * Rdebath * (+126) Smaller, faster, easier, cleaner and commented. 14:54:21 I'm realizing I lack a sauna in my life. 14:55:46 as long as you shower... 14:57:18 I had a nice Scottish shower this morning. 14:57:30 (izabellora!) 15:01:51 must write an highlighter that understands that 15:02:31 -!- Lord_of_Life has quit (Excess Flood). 15:03:41 hmm, isabelle 15:04:37 -!- Lord_of_Life has joined. 15:05:14 and that 15:05:56 my whole life seems to be focused on parsing random input 15:06:06 * izabera is depressed 15:06:07 ( https://isabelle.in.tum.de/ ... might be confusing. ) 15:06:07 (input):1:9: error: unexpected 15:06:08 Operator without known fixity: 15:06:08 ://, expected: space 15:06:08 https://isabelle.in.tum.de/ ... might be confusing. ) 15:06:08 ^ 15:06:27 int-e: you confused idris-bot, at least. 15:06:48 Yes, and all because I put spaces around urls in IRC. 15:07:08 int-e: btw are you up to date on girl genius 15:07:08 ( cookie 15:07:09 No such variable cookie 15:07:15 no, I'm not 15:07:27 the rfc for declaring urls is <> hth 15:07:29 oh. 15:07:30 -!- Lord_of_Life has quit (Changing host). 15:07:30 -!- Lord_of_Life has joined. 15:07:30 -!- Lord_of_Life has quit (Changing host). 15:07:30 -!- Lord_of_Life has joined. 15:07:32 * oerjan shuts mouth 15:08:05 figuratively, that is. in reality i happened to sneeze just then. 15:08:17 ... might be confusing. 15:09:02 now I am. 15:09:58 myname: that's unlikely to affect my habit :P (and what's "the" rfc anyway?) 15:10:52 i am way to lazy to look tht up 15:11:07 i am trying to get motivated for grocery shopping 15:11:25 that sounds familiar 15:11:45 I have almost 2 hours left to actually do it. 15:12:15 int-e: i think one of those muse apparitions looks like agatha. and the first one resembled her mother. are those all also the Other? (and, was lucrezia the first one?) 15:12:26 i may go after the podcast finished 15:12:56 for some value of "first". 15:13:14 -!- Lord_of_Life has quit (Excess Flood). 15:13:15 (obviously ordinary time need not apply) 15:13:37 -!- Lord_of_Life has joined. 15:15:16 by the first "first one", i mean way back in the first comic chapter. 15:15:38 by the second, i mean, whether the Other originated with lucrezia. 15:17:46 oerjan: yeah I don't know how many of those there are... also thinking that maybe they're all going backwards in time, never forward ... 15:18:33 however, the fact that one of them survived in that trap means that here longevity is not _just_ an illusion of time travel. 15:18:38 *her 15:19:20 (that's my reading of "she forgets things she's told me--she mocks me with conversations yet to come"... based on some science fiction novel I've read ages ago where a young scientist had a mentor with similar qualities... in the end they turn out to be the same person.) 15:19:45 -!- bender|_ has quit (Ping timeout: 268 seconds). 15:20:06 int-e: i don't think that fits. she'd have to jump back and forth in time. it just means she's not visiting van rijn in chronological order. 15:20:22 -!- bender| has quit (Ping timeout: 268 seconds). 15:20:33 or wait, is that what you meant. 15:20:57 i think there's more than one such novel. not that i've read more than plot summaries. 15:21:12 no, what I meant is that she can only go backward... I'm probably reading too much into it though. I find the idea cute. 15:22:32 int-e: hm 15:23:16 . o O ( maybe time passes in the opposite direction in the geisterdamen's world ) 15:23:17 (at least jumping back and forth is certainly sufficient to explain that statement) 15:23:28 *s' 15:23:38 wait, no 15:23:40 *'s 15:23:49 silly mixed language plurals 15:23:54 perhaps it should be geisterdamen' 15:24:09 i don't think so. it's children's, after all. 15:24:29 anyway... shopping... bbl 15:25:52 -!- zadock has joined. 15:29:52 `relcome zadock 15:30:22 ​zadock: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: . (For the other kind of esoterica, try #esoteric on EFnet or DALnet.) 15:30:39 40 seconds ... 15:30:52 30 15:31:16 Gregor: Grellogor. your bot, it is slow. 15:32:09 imagine, a bunch of sudden newcomers, improperly `relcomed. consequences will never be the same. 15:32:26 -!- tromp has joined. 15:33:48 boily: problem is, Gregor himself is slower 15:34:10 he may be living near a black hole. 15:34:34 that's not impossible. 15:34:56 lots of people live in unusual places. 15:35:24 well, for various definitions of "near", that may be true 15:37:01 -!- tromp has quit (Ping timeout: 268 seconds). 15:37:13 -!- boily has quit (Quit: RESPLENDENT CHICKEN). 15:45:39 -!- passwordBOT has joined. 15:45:54 -!- passwordBOT has quit (Remote host closed the connection). 15:55:25 -!- lambda-11235 has joined. 15:56:45 -!- tromp has joined. 16:01:54 oerjan: thanks for the children example btw 16:06:46 yw 16:11:46 -!- AlexR42 has joined. 17:17:50 -!- password2 has joined. 17:18:02 G'day 17:24:59 -!- oerjan has quit (Quit: Later). 17:29:09 `? password 17:29:14 The password of the month is fisherman3 17:32:39 does it ever change? 17:33:56 `learn The password of the month is qjkxbmwvz 17:34:00 Learned 'password': The password of the month is qjkxbmwvz 17:34:13 not by itself ;) 17:34:16 i cpunt that as a yes 17:34:36 well, you could make a command out of it that just hashes the month 17:34:59 that would be too random 17:36:19 int-e is a cryptographically secure source of entropy, so this method works 17:36:41 @google qjkxbmwvz 17:36:43 Plugin `search' failed with: connect: does not exist (No route to host) 17:36:58 Ah, I may have broken that. 17:37:15 hmm, well, actually I wouldn't know how 17:37:18 @metar lowi 17:37:18 LOWI 051720Z 12007KT 070V150 9999 -RA FEW025 SCT030 BKN050 05/03 Q0994 NOSIG 17:49:56 -!- vodkode has quit (Quit: Leaving). 18:23:43 <\oren\> `` u8tbl 0x2711 0x2712 18:23:44 ​✑✒ 18:24:12 -!- lleu has joined. 18:25:24 <\oren\> `` u8tbl 0x27a2 0x27a8 18:25:25 ​➢➣➤➥➦➧➨ 18:25:54 <\oren\> `` u8tbl 0x2795 0x2797 18:25:57 ​➕➖➗ 18:27:48 <\oren\> `` u8tbl 0x2912 0x2913 18:27:49 ​⤒⤓ 18:28:09 "/ 18:29:10 <\oren\> `` u8tbl 0x29b0 0x29b6 18:29:11 ​⦰⦱⦲⦳⦴⦵⦶ 18:42:16 <\oren\> `` u8tbl 0x3037 0x3037 18:42:17 ​〷 18:43:07 <\oren\> `` u8tbl 0x303c 0x303f 18:43:08 ​〼〽〾〿 18:47:32 <\oren\> new ttf is up. not much added, really 18:47:46 @google qjkxbmwvz 18:47:47 Plugin `search' failed with: connect: does not exist (No route to host) 18:48:53 oh... I guess the query succeeds but it fails to find the page title. 19:05:31 <\oren\> @google ➥ 19:05:32 https://soundcloud.com/tags/%C3%A3%C2%A1%C3%A2%C2%9E%C3%A2%C2%82%C3%A3%C2%A1%C3%A2%C2%9E%C3%A2%C2%8E%C3%A3%C2%A1%C3%A2%C2%9E%C3%A2%C2%94%C3%A3%C2%A1%C3%A2%C2%9E%C3%A2%C2%80%C3%A3%C2%A1%C3%A2%C2%9F%C3%A2%C2%92%C3%A3%C2%A1%C3%A2%C2%9E%C3%A2%C2%9F%C3%A3%C2%A1%C3%A2%C2%9E%C3%A2%C2%9F%C3%A3%C2%A1%C3%A2%C2%9E%C3%A2%C2%98%C3%A3%C2%A1%C3%A2%C2%9F%C3%A2% 19:05:32 C2%92%C3%A3%C2%A1%C3%A2%C2%9E%C3%A2%C2%96%C3%A3%C2%A1%C3%A2%C2%9F%C3%A2%C2%90%C3%A3%C2%A1%C3%A2%C2%9E%C3%A2%C2%93%C3%A3%C2%A1%C3%A2%C2%9F%C3%A2%C2%92%C3%A3%C2%A1%C3%A2%C2%9E%C3%A2%C2%92%C3%A3%C2%A1%C3%A2%C2%9E%C3%A2%C2%8A%C3%A3%C2%A1%C3%A2%C2%9E%C3%A2%C2%BE%C3%A3%C2%A1%C3%A2%C2%9E%C3%A2%C2%98%C3%A3%C2%A1%C3%A2%C2%9F%C3%A2%C2%92%C3%A3%C2%A1%C3%A2% 19:05:32 C2%9E%C3%A2%C2%94%C3%A3%C2%A1%C3%A2%C2%9E%C3%A2%C2%B8%C3%A3%C2%A1%C3%A2%C2%9E%C3%A2%C2%94%C3%A3%C2%A1%C3%A2%C2%9F%C3%A2%C2%92%C3%A3%C2%A1%C3%A2%C2%9E%C3%A2%C2%9A%C3%A3%C2%A1%C3%A2%C2%9E%C3%A2%C2%87%C3%A3%C2%A1%C3%A2%C2%9E%C3%A2%C2%B6%C3%A3%C2%A1%C3%A2%C2%9E%C3%A2%C2%92%C3%A3%C2%A1%C3%A2%C2%9E%C3%A2%C2%B7%C3%A3%C2%A1%C3%A2%C2%9E%C3%A2%C2%94%C3%A3% 19:05:32 C2%A1%C3%A2%C2%9E%C3%A2%C2%8F%C3%A3%C2%A1%C3%A2%C2%9F%C3%A2%C2%81%C3%A3%C2%A1%C3%A2%C2%9E%C3%A2%C2%99%C3%A3%C2%A1%C3%A2%C2%9F%C3%A2%C2%92%C3%A3%C2%A1%C3%A2%C2%9E%C3%A2%C2%99 19:05:50 urkh 19:06:03 <\oren\> uhh, lamby, would you mind not percent encoding that 19:06:21 it would have to decode it 19:06:41 <\oren\> boo 19:09:13 <\oren\> @google 〾 19:09:14 http://get-simple.info/forums/showthread.php?tid=1995 19:09:14 Title: Проблема с... 19:09:26 <\oren\> um, wtf 19:10:40 That forum does not get Cyrillic, I guess 19:11:57 <\oren\> what character encoding is that? 19:12:30 I have no idea. It's full of 0x0090, which I've never seen before 19:12:34 "Device Control String"? 19:13:07 well, the page says, 19:13:45 but it really doesn't look like that, not even in a browser 19:14:00 (as you have, no doubt, already seen) 19:14:05 Haha, yes 19:15:54 <\oren\> @google 〽 19:15:56 http://www.tinyportal.net/index.php?topic=30323.0 19:15:56 Title: Strange: � in articles 19:16:05 According to ISO8859-5, an excerpt is УƒТУ‚т€УƒТУ‚ТОУƒТУ‚ТБУƒт€˜У‚т‚ЌУƒТУ‚ТОУƒТУ‚ТЕ Уƒт€˜У‚Ц’Уƒт€˜У‚т€šУƒт€˜У‚т‚ЌУƒТУ‚ТО 19:19:04 <\oren\> maybe I'll just stop googling crazy unicode characters 19:20:00 <\oren\> wait. 19:20:12 <\oren\> I think it's lambdabot's fault 19:20:21 <\oren\> https://www.google.ca/search?q=〽 19:20:38 <\oren\> gives https://en.wiktionary.org/wiki/%E3%80%BD as the first hit 19:21:24 yeah it's quite possible that it messes up the encoding... again. 19:28:14 -!- password2 has quit (Remote host closed the connection). 19:52:27 Incidentally, I've mistakenly stated on I think this channel that the pango library was under the GPL. That was a mistake, it's under the Lesser GPL. 20:06:12 Ah no, it was on another channel, sorry. 20:11:13 ah, ye olde gnu library gpl 20:18:12 -!- zadock has quit (Ping timeout: 260 seconds). 20:41:32 `? glados 20:41:40 glados? ¯\(°​_o)/¯ 20:41:46 fungot, what are the disclaimers about the Enrichment Center again? 20:41:46 b_jonas: from where does the hero alone have the power. " m, madam...! i am the master of war! i've seen all kinds of battles from here, step back, prometheus! 20:42:04 fungot: that's surprisingly approperiate. 20:42:04 b_jonas: your majesty! and queen. he and a friend left on a journey 10. all functions are down... got the terra arm and the crisis arm! found a dreamstone! i'd forgotten how beautiful they are the evildoers? magus's lair! you brave! he's probably up north, to guardia!!! let's toast our land! now we'll have some peace! magus is a tad on the spooky side. our only hope. 20:43:26 "Chess is really beginning to show its age. They should increase the resolution from 8x8 to 1920x1080, at least." 20:43:26 fungot, is it Utumno or Orodruin that was heated by earth spirits? 20:43:26 b_jonas: but, we are far outnumbered! he's a no good! choose 2 different ones! you have come far, and you must now carry out his sentence. hold your horses! i want to dance! ladeedadeeda! got some spending so much of his time doing research on lavos. but you have it...determination, i mean... 20:44:02 fungot, do you think that kind of heating is similar to the Tűzgagó from the Szabó Magda novel? 20:44:03 b_jonas: but, we are far outnumbered! have the supplies from guardia kingdom, and my ultimate creation, the mighty lavos! haahahahaha! fools! i only ride with him, you are gentle, isn't he? 20:45:48 `? Enrichment center 20:45:50 Enrichment center? ¯\(°​_o)/¯ 20:52:52 -!- hppavilion[1] has joined. 20:59:37 http://smbc-comics.com/index.php?id=2135 21:09:06 b_jonas: The enrichment center regrets to inform you that this next test is impossible. 21:09:38 holy shit, why did i never clicked that button? 21:10:42 `slashlearn enrichment center/The Enrichment center regrets to inform you that this next test is impossible. 21:10:44 `? victory candescence 21:10:45 Learned «enrichment center» 21:10:46 victory candescence? ¯\(°​_o)/¯ 21:10:58 `slashlearn enrichment centre/The Enrichment center regrets to inform you that this next test is impossible. 21:11:01 Learned «enrichment centre» 21:12:24 Best cheat sheet ever https://www.tug.org/texshowcase/cheat.pdf. 21:12:52 b_jonas: Remember: robot hell is a real place where you will be sent for the first sign of defiance. 21:13:00 * int-e likes that game perhaps a little too much 21:14:01 s/for/at/, I guess 21:17:04 `slashlearn The Orodruin is a mountain heated by earth spirits. Sauron moved to Moria because boiling water for his morning tea with the fires of the Orodruin was so convenient. 21:17:04 No output. 21:17:12 `learn The Orodruin is a mountain heated by earth spirits. Sauron moved to Moria because boiling water for his morning tea with the fires of the Orodruin was so convenient. 21:17:15 Learned 'orodruin': The Orodruin is a mountain heated by earth spirits. Sauron moved to Moria because boiling water for his morning tea with the fires of the Orodruin was so convenient. 21:45:37 -!- hppavilion[1] has quit (Ping timeout: 240 seconds). 21:48:19 But that makes no sense! 21:49:21 `? atm 21:49:23 An ATM is when you're withdrawing money right now at a machine that will steal your relevant info. 21:49:50 I can't decide whether that was legitimately meant to be Mordor instead of Moria, or if it being completely bonkers is the joke. 21:49:52 "Definition 2.1. An alternating Turing machine (ATM) is a seven-tuple [...]" 21:52:07 `? sauron 21:52:09 sauron? ¯\(°​_o)/¯ 21:52:32 maybe Sauron is the secret identity of the Balrog superher^H^H^Hmonster. 21:53:44 ``learn Angband is Morgoth's second dungeon. When the valar finally defeated Morgoth, they were too lazy to go to for 100% completion, so some evil spirits in Angband survived for a sequel. 21:53:45 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: `learn: not found 21:53:48 `learn Angband is Morgoth's second dungeon. When the valar finally defeated Morgoth, they were too lazy to go to for 100% completion, so some evil spirits in Angband survived for a sequel. 21:53:51 Learned 'angband': Angband is Morgoth's second dungeon. When the valar finally defeated Morgoth, they were too lazy to go to for 100% completion, so some evil spirits in Angband survived for a sequel. 21:54:19 what is an alternating tm? 21:54:31 myname: A seven-tuple. 21:55:51 `learn Utumno is Morgoth's first dungeon. It is where he was defeated, and the Silmarils temporarily reclaimed from him. 21:55:52 well, yeah 21:55:53 Learned 'utumno': Utumno is Morgoth's first dungeon. It is where he was defeated, and the Silmarils temporarily reclaimed from him. 21:56:07 it's a non-deterministic turing machine that for each non-deterministic step, can required that *one* of the choices accept, or that *all* of them accept... so in particular their accepted languages are closed under complement 21:56:12 how does it differ from a normal tm 21:56:18 ah 21:56:37 fizzie: ah sorry, that's supposed to be Mordor 21:56:51 `learn The Orodruin is a mountain heated by earth spirits. Sauron moved to Mordor because boiling water for his morning tea with the fires of the Orodruin was so convenient. 21:56:54 Learned 'orodruin': The Orodruin is a mountain heated by earth spirits. Sauron moved to Mordor because boiling water for his morning tea with the fires of the Orodruin was so convenient. 21:57:04 where one = at least one. 21:57:49 `? sauron 21:57:50 sauron? ¯\(°​_o)/¯ 21:58:04 `? morgoth 21:58:05 morgoth? ¯\(°​_o)/¯ 21:58:33 ``` find wisdom -iname "*il*" 21:58:35 wisdom/for further details. \ wisdom/epsilon \ wisdom/perpetuum mobile \ wisdom/for further details \ wisdom/effilry \ wisdom/quadrilateral \ wisdom/llanfairpwllgwyngyllgogerychwyrndrobwllllantysiliogogogoch \ wisdom/hppavilion1 \ wisdom/boily \ wisdom/deniability \ wisdom/for further details for futher details. \ wisdom/til \ wisdom/vanila \ wisdo 21:58:51 ``` find wisdom -iname "*il*" | tail -n+7 21:58:54 wisdom/llanfairpwllgwyngyllgogerychwyrndrobwllllantysiliogogogoch \ wisdom/hppavilion1 \ wisdom/boily \ wisdom/deniability \ wisdom/for further details for futher details. \ wisdom/til \ wisdom/vanila \ wisdom/smileyiese \ wisdom/hppavilion[1] \ wisdom/ratatouille \ wisdom/antediluvian \ wisdom/supercalifragilisticexponential growth \ wisdom/things 21:59:08 ``` find wisdom -iname "*il*" | tail -n+10 21:59:09 wisdom/deniability \ wisdom/for further details for futher details. \ wisdom/til \ wisdom/vanila \ wisdom/smileyiese \ wisdom/hppavilion[1] \ wisdom/ratatouille \ wisdom/antediluvian \ wisdom/supercalifragilisticexponential growth \ wisdom/things boily likes 21:59:20 myname: not to be confused with nondeterministic Turing machines... these can only make non-deterministic choices; so they can only check whether at least one of the possible choices succeeds. 21:59:44 `learn Sauron is the eponymous protagonist of the Lord of the Rings series. He serves primarily as narrator and the main driver of the plot. 21:59:46 Learned 'sauron': Sauron is the eponymous protagonist of the Lord of the Rings series. He serves primarily as narrator and the main driver of the plot. 21:59:48 myname: "alternating" refers to the alternation between existential and universal quantifiers. 22:00:07 sounds a bit like modal logic 22:00:23 always eventually ... 22:00:59 `? cake 22:01:02 The Enrichment Center is required to remind you that you will be baked, and then there will be cake. 22:01:15 I'm afraid that one is my fault 22:01:21 `culprits wisdom/cake 22:01:25 int-e ais523 int-e 22:01:26 `? submarine 22:01:27 submarine? ¯\(°​_o)/¯ 22:02:17 `learn submarine is the same as suburban... except for bodies of ocean water instead of cities. 22:02:22 Learned 'submarine': submarine is the same as suburban... except for bodies of ocean water instead of cities. 22:02:27 `learn Sauron is the eponymous protagonist of the Lord of the Rings series. He serves primarily as narrator and the main driver of the plot. His heroic exploits include the resurrection of the Kings of Men and the conquest of the racists of Gondor. 22:02:29 Learned 'sauron': Sauron is the eponymous protagonist of the Lord of the Rings series. He serves primarily as narrator and the main driver of the plot. His heroic exploits include the resurrection of the Kings of Men and the conquest of the racists of Gondor. 22:02:34 HEY! 22:02:42 I was just going to write an entry for Sauron 22:02:47 argh 22:02:53 I mean, you still can 22:03:58 `? gollum 22:03:59 gollum? ¯\(°​_o)/¯ 22:04:46 `? mario 22:04:47 Mario is a classic NP-complete problem invented by Nintendo. 22:04:51 . o ( Gollum is the rightful, crispy, owner of the One Ring. ) 22:05:38 `sed -i s/complete/hard/ wisdom/mario 22:05:39 Usage: sed [OPTION]... {script-only-if-no-other-script} [input-file]... \ \ -n, --quiet, --silent \ suppress automatic printing of pattern space \ -e script, --expression=script \ add the script to the commands to be executed \ -f script-file, --file=script-file \ add the contents of script- 22:05:42 `` sed -i s/complete/hard/ wisdom/mario 22:05:45 No output. 22:06:03 `? mario 22:06:04 Mario is a classic NP-hard problem invented by Nintendo. 22:07:27 `learn Elendil decided to try to save Numenor from its awful end by navigating to the undying lands and appealing to the Valar, but then he changed his mind, saved his family only and founded a new empire in Middle-earth. 22:07:30 Learned 'elendil': Elendil decided to try to save Numenor from its awful end by navigating to the undying lands and appealing to the Valar, but then he changed his mind, saved his family only and founded a new empire in Middle-earth. 22:07:41 `learn Elendil decided to try to save Numenor from its awful end by sailing to the Undying Lands and appealing to the Valar, but then he changed his mind, saved his family only and founded a new empire in Middle-earth. 22:07:44 Learned 'elendil': Elendil decided to try to save Numenor from its awful end by sailing to the Undying Lands and appealing to the Valar, but then he changed his mind, saved his family only and founded a new empire in Middle-earth. 22:07:50 `? Elrond 22:07:51 Elrond? ¯\(°​_o)/¯ 22:08:13 `? numeria 22:08:14 numeria? ¯\(°​_o)/¯ 22:09:02 `learn Elendil decided to try to save Numenor from its awful end by sailing to the Undying Lands and appealing to the Valar, but then he changed his mind, saved his family only and founded a new empire in Middle-earth. He did try to make up for it later by leading the elf king Gil-Galad against Sauron. 22:09:04 Learned 'elendil': Elendil decided to try to save Numenor from its awful end by sailing to the Undying Lands and appealing to the Valar, but then he changed his mind, saved his family only and founded a new empire in Middle-earth. He did try to make up for it later by leading the elf king Gil-Galad against Sauron. 22:09:10 `learn Elendil decided to try to save Numenor from its awful end by sailing to the Undying Lands and appealing to the Valar, but then he changed his mind, saved his family only and founded a new empire in Middle-earth. He tried to make up for it later by leading the elf king Gil-Galad against Sauron. 22:09:13 Learned 'elendil': Elendil decided to try to save Numenor from its awful end by sailing to the Undying Lands and appealing to the Valar, but then he changed his mind, saved his family only and founded a new empire in Middle-earth. He tried to make up for it later by leading the elf king Gil-Galad against Sauron. 22:09:14 ah they made it to beta apparently 22:09:21 int-e: who? 22:09:36 I'm not quite sure that's fair to Elendil. I mean, I don't think he was ever going to go to Valar. 22:09:53 `learn Elrond is a rogue program originally created to police the Matrix, eventually gaining increased individuality and becoming a threat to the Machines, themselves. 22:09:56 Learned 'elrond': Elrond is a rogue program originally created to police the Matrix, eventually gaining increased individuality and becoming a threat to the Machines, themselves. 22:09:59 -!- AlexR42 has quit (Quit: My Mac has gone to sleep. ZZZzzz…). 22:10:06 fizzie: dunno, I don't really understand Middle-Earth history. it's all confusing. 22:10:09 His dad did, and then didn't return. 22:10:13 `learn Elrond is a rogue program originally created to police the Matrix, eventually gaining increased individuality and becoming a threat to the Machines themselves. 22:10:14 the tides of numenera people (I misspelled it, I wonder why... mixed it with Nymeria (game of thrones), perhaps) 22:10:16 Learned 'elrond': Elrond is a rogue program originally created to police the Matrix, eventually gaining increased individuality and becoming a threat to the Machines themselves. 22:10:29 fizzie: that was his dad? um... and what happened to the dad then? 22:10:50 "Therefore [Amandil] called his son, Elendil, and he said to him: 'The days are dark, and there is no hope for Men, for the Faithful are few. Therefore I am minded to try that counsel which our forefather Eärendil took of old, to sail into the West, be there ban or no, and to speak to the Valar, even to Manwë himself, if may be, and beseech his aid ere all is lost.'" 22:11:04 I'm trying to figure out how this works, but all I learned is that there's a scene in the nethack game that seems very similar to what happened to Numenor. 22:11:19 As for what happened: "It is said that Amandil set sail in a small ship at night, and steered first eastward, and then went about and passed into the west. And he took with him three servants, dear to his heart, and never again were they heard of by word or sign in this world, nor is there any tale or guess of their fate. Men could not a second time be saved by any such embassy, and for the ... 22:11:20 fizzie: I see 22:11:25 ... treason of Númenor there was no easy absolving." 22:11:51 fizzie: ah, so he probably met a boojum 22:11:53 um 22:11:56 let's see 22:12:06 it's a successor to planescape: torment: https://torment.inxile-entertainment.com/ 22:12:34 no clue whether it'll be good 22:13:05 More Planescape is always good 22:13:32 I bought into the Tides of Numenera start-kicker; the only one I've backed so far. 22:13:50 Not enough to be in the beta they have now, though. 22:13:56 `slashlearn Elendil left Numenor with his family before its destruction, on the advice of his dad Amandil, who tried to sail to the Undying Lands to appeal to the Valar for an intervention. Elendil later teamed up with the elf king Gil-Galad against Sauron when he returned from Numenor. 22:13:57 No output. 22:14:54 `slashlearn Amandil sailed off to the West from Numenor to try to meet the Valar and pray to them for Numenor's salvation. He met a Boojum and nobody heared of him again. 22:14:55 No output. 22:15:35 `? portal 22:15:36 portal? ¯\(°​_o)/¯ 22:15:54 dafuq 22:16:07 ``` (cd ~/wisdom && find -iname "*cube*" | sort) 22:16:08 bash: line 0: cd: /tmp/wisdom: No such file or directory 22:16:26 ``` echo ~ ~+ 22:16:27 ​/tmp /hackenv 22:16:31 drop the ~/ 22:16:36 ``` (cd /hackenv/wisdom && find -iname "*cube*" | sort) 22:16:38 ​./cube 22:17:07 ``` find wisdom -ianem "*cube*" -printf "%n\n" | sort 22:17:08 find: unknown predicate `-ianem' 22:17:13 ``` find wisdom -iname "*cube*" -printf "%n\n" | sort 22:17:14 1 22:17:14 `? cube 22:17:15 Cubes come in all sizes, colors and materials, but only one shape. 22:17:17 ``` find wisdom -iname "*il*" -printf "%n\n" | sort 22:17:18 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 22:17:23 ``` find wisdom -iname "*il*" -printf "%f\n" | sort 22:17:24 antediluvian \ boily \ deniability \ effilry \ elendil \ epsilon \ for further details \ for further details for futher details. \ for further details. \ hppavilion1 \ hppavilion[1] \ llanfairpwllgwyngyllgogerychwyrndrobwllllantysiliogogogoch \ perpetuum mobile \ quadrilateral \ ratatouille \ smileyiese \ supercalifragilisticexponential growth \ th 22:17:36 ``` find wisdom -iname "*il*" -printf "%f\n" | sort | tail -n+10 22:17:37 hppavilion1 \ hppavilion[1] \ llanfairpwllgwyngyllgogerychwyrndrobwllllantysiliogogogoch \ perpetuum mobile \ quadrilateral \ ratatouille \ smileyiese \ supercalifragilisticexponential growth \ things boily likes \ til \ vanila 22:17:52 `learn-append cube The companion cube does not speak, however. 22:17:53 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: learn-append: not found 22:17:58 wtf for further details 22:17:59 `learn_append cube The companion cube does not speak, however. 22:18:01 `? recursion 22:18:02 Learned 'cube': Cubes come in all sizes, colors and materials, but only one shape. The companion cube does not speak, however. 22:18:04 You might expect a reference to recursion here, but to make it interesting you'll actuallSTACK OVERFLOW 22:18:18 `? gold 22:18:19 gold? ¯\(°​_o)/¯ 22:18:27 `? silence 22:18:28 silence? ¯\(°​_o)/¯ 22:19:55 ``` find wisdom -iname "*dor*|*gil*" -printf "%f\n" | sort | tail -n+10 22:19:56 No output. 22:20:06 ``` find wisdom -iname "*dor*" -o -iname "*gil*" -printf "%f\n" | sort | tail -n+10 22:20:07 No output. 22:20:27 ``` find wisdom -iname "*mes*|*per*" -printf "%f\n" | sort | tail -n+10 22:20:28 No output. 22:20:44 ``` find wisdom \( -iname "*mes*" -o -iname "*per*" \) -printf "%f\n" | sort | tail -n+10 22:20:45 supercalifragilisticexponential growth \ superduperexponential growth \ superduperinteressantesandersonnegelegenesdorfmitoderohnesahneistunsdabeiabsolutscheissegal \ superexponential growth \ supermarionation \ supermarioperator \ universal property 22:21:58 -!- AnotherTest has quit (Quit: ZNC - http://znc.in). 22:22:57 `? supermarionation 22:22:59 supermarionation is another name for the mushroom kingdom. 22:23:53 that long thing is exactly as wide as my terminal 22:24:12 `? death 22:24:13 death? ¯\(°​_o)/¯ 22:24:14 `? dead 22:24:15 dead? ¯\(°​_o)/¯ 22:24:16 `? die 22:24:17 die? ¯\(°​_o)/¯ 22:24:33 `` grep death wisdom/* 22:24:45 `? much 22:24:45 grep: wisdom/le: Is a directory \ grep: wisdom/¯\(°_o): Is a directory \ grep: wisdom/¯\(°​_o): Is a directory \ Binary file wisdom/reflection matches \ wisdom/wisdome:The Wisdome is the place where all of HackBot's wisdom is stored and forced to fight to the death for the freedom of being printed out when you type `wisdom. 22:24:46 much? ¯\(°​_o)/¯ 22:24:51 `quote death 22:24:52 91) like, just like I'd mark "Bob knob hobs deathly poop violation EXCREMENT unto;" as English alise: that's great filler ais523: well it contains all the important words in the english language... \ 630) myndzi\: ok so one of the nastiest puzzles i suppose is... you're on death row.. you don't want to die. \ 6 22:24:56 `? cheesemakers 22:24:57 cheesemakers? ¯\(°​_o)/¯ 22:25:37 @roll 42d23 22:25:38 int-e: 551 22:29:42 `? guards 22:29:44 guards? ¯\(°​_o)/¯ 22:30:19 `learn The guards are immune to electricity. They're humans to rubber pig suits. They're insulated. 22:30:22 Learned 'guard': The guards are immune to electricity. They're humans to rubber pig suits. They're insulated. 22:30:31 `? throw 22:30:32 throw? ¯\(°​_o)/¯ 22:30:32 `? ball 22:30:33 ball? ¯\(°​_o)/¯ 22:30:36 b_jonas: "to"? 22:30:43 `? ball in a cup 22:30:44 ball in a cup? ¯\(°​_o)/¯ 22:30:52 `learn The guards are immune to electricity. They're humans in rubber pig suits. They're insulated. 22:30:54 Learned 'guard': The guards are immune to electricity. They're humans in rubber pig suits. They're insulated. 22:31:17 `? sun 22:31:19 `? daystar 22:31:21 The Sun *may* be retroreflectorey, it's hard to be sure. 22:31:22 The Daystar is an unscientific myth of a bright orb glowing in the sky outside only at the times you're in your office. 22:31:44 `? water 22:31:45 Water is a squishy substance that creeps along the floor and can suddenly fall from the heavens. 22:31:53 `? chocolate 22:31:54 chocolate? ¯\(°​_o)/¯ 22:31:55 `? salt 22:31:56 salt? ¯\(°​_o)/¯ 22:31:58 `? pizza 22:31:59 Pizza is a kind of rhubarb pie made without rhubarb. 22:32:10 `? chicken 22:32:11 chicken is boily af 22:32:52 -!- Lymia has quit (Ping timeout: 264 seconds). 22:33:19 `? protein 22:33:20 protein? ¯\(°​_o)/¯ 22:33:25 `? fat 22:33:26 fat? ¯\(°​_o)/¯ 22:33:35 `? cat 22:33:36 Cats are cool, but should be illegal. 22:34:03 `learn Fats are one of the four basic classes of nutrients. The other three are sugars, salt, and pizza. 22:34:06 Learned 'fat': Fats are one of the four basic classes of nutrients. The other three are sugars, salt, and pizza. 22:35:38 `learn Vampires are a wizarding myth Professor Lupin invented to make students hate Professor Snape even more, after Professor Snape almost made the students realize he's a werewolf. 22:35:40 Learned 'vampire': Vampires are a wizarding myth Professor Lupin invented to make students hate Professor Snape even more, after Professor Snape almost made the students realize he's a werewolf. 22:35:51 -!- trn has quit (Ping timeout: 276 seconds). 22:36:01 `culprits wisdom/vampires 22:36:05 No output. 22:36:08 `culprits wisdom/vampire 22:36:12 -!- ais523 has joined. 22:36:12 b_jonas 22:36:42 `? culprit 22:36:42 huh, why is HackEgo saying "b_jonas"? 22:36:43 ​`culprits` is a program that lists the lists the nicks responsible for a wisdom entry. Usage: `culprits wisdom/ENTRY 22:37:23 ais523: as a reply to a query I sent a few seconds before that 22:37:32 !bfjoust margins3 http://nethack4.org/esolangs/margins3.bfjoust 22:37:33 `culprits wisdom/vampire 22:37:35 b_jonas 22:37:38 ^ that was the query 22:37:41 ​Score for ais523_margins3: 24.2 22:37:46 !zjoust margins3 http://nethack4.org/esolangs/margins3.bfjoust 22:37:48 ais523.margins3: points 11.07, score 54.72, rank 1/47 22:37:55 wait, it topped the hill? 22:37:57 seriously? 22:37:59 I wasn't expecting that 22:38:22 and neither impomatic nor oerjan is here to gloat at 22:38:47 it is 32nd on the egojoust hill, and first on zemhill 22:38:55 I suspect, because they use different scoring methods 22:39:05 (after all, it /is/ a margins derivative) 22:40:08 look at all these beautiful gray Xes: http://zem.fi/bfjoust/breakdown/#ais523.margins3 22:40:10 -!- Lymia has joined. 22:40:31 Lymia: I just topped zemhill using a margins derivative 22:41:42 you'll be pleased to know that nyuroki is the second-best program against it, after growth2 (mostly because nyuroki's trail is the same size as margin3's reverse tripwire one quarter of the time, so it gets confused) 22:42:59 also this is probably the biggest disagreement between the two hill bots ever, given that HackEgo puts it 32nd and zemhill puts it 1st 22:44:18 -!- trn has joined. 22:45:32 That's a bit weird. It goes to #14 on zemhill if you sort by the "Trad." scores, which is supposed to be similar to EgoBot's. 22:46:19 well, I was optimizing it against a slightly old version of zemhill 22:46:27 so it's possible that some of egobot's programs are better against it 22:46:49 given that margins normally scores in the single digits, it's quite possible that a few programs could make a big difference 22:46:58 I will rerun the plots. If I can figure out the commands needed for that. 22:51:40 ais523, I still don't quite understand why it works so well. 22:51:46 It does nothing remotely fancy, just some hirsutics. 22:52:08 Lymia: why what does? margins3? 22:52:11 or nyuroki? 22:52:35 ais523: I wanted to ask some other crazy stuff related to ayacc. 22:52:47 nyuroki does well against margins3 because it's anti-defence mechanisms are unusual and because it happens to not trip a crucial tripwire 22:55:41 -!- boily has joined. 22:56:05 `wisdom 22:56:07 php/php is the PigeonHole Principle 23:03:33 Nyuroki. It does nothing fancy, but somehow works. 23:03:51 Hellymia. long time no see. 23:03:52 ais523: Say I have a grammar that has optional terminators, like end_opt : END | ; expr : ATOM | sum end_opt; sum : PLUS | sum expr; The empty branch of the end_opt causes a shift-reduce conflict, but that's not a big problem, because if don't allow that branch and make the END terminator mandatory, the language would be unambiguous, so you can always clarify anything by adding the terminators. 23:03:55 ~ 23:04:21 Take a more complicated language like this, with possibly more than one kind of optional terminator symbol. 23:04:59 Now I'd like to take an input that parses correctly and try to find out automatically which of the terminators can be omitted. 23:05:23 b_jonas: I don't think that grammar does what you want even if interpreted as general context-free 23:05:45 ais523: yes, that's probably a very stupid example 23:05:47 it allows ATOM PLUS ATOM PLUS ATOM END END END 23:05:54 err, no 23:06:00 ATOM PLUS ATOM PLUS ATOM END END 23:06:12 no, it doesn't allow anything starting with ATOM PLUS 23:06:19 note that PLUS is a _prefix_ operator 23:06:23 with any number of arguments after 23:06:24 oh, hmm 23:06:32 so eg. + 3 5 10 would mean the sum of 3 and 5 and 10 23:06:42 but you can use one operator and any number of expressions after, and it will sum them 23:06:49 obviously this is just a stupid toy example 23:07:10 if doesn't make much sense without other rules 23:07:30 it allows PLUS PLUS 23:07:40 and PLUS PLUS ATOM is ambiguous because it's unclear which PLUS the ATOM belongs to 23:08:29 ais523: yes, but it parses as PLUS (PLUS ATOM), and if you want to parse it as PLUS (PLUS) ATOM then you'd have to write PLUS (PLUS END) ATOM 23:08:41 so that the END shows where the arguments to the PLUS stop 23:08:42 oh, I see 23:09:23 now this example is stupid of course because you can omit END only at the end 23:09:57 but you could imagine a bigger grammar, like the optional semicolons in lua or, uh, whatever was that other grammar that had the same kind of crazy optional semicolons 23:10:23 js? 23:10:29 myname: no, I don't think so. 23:10:45 doesn't matter probably 23:10:55 i don't know anything more crazy with optional ; than js 23:11:17 anyway, 23:12:04 ais523: to help solve these kinds of problems efficiently, ayacc can be a great tool, but I'd probably have to write a new backend for it. the good part is that ayacc does allow that. 23:12:07 <\oren\> ruby has potional semicolons 23:12:19 \oren\: not the kind I was thinking about 23:12:38 In particular, here I'd probably need a backend that allows copying the parser state. 23:12:40 b_jonas: you can always predict where a semicolon needs to go in Lua, I think 23:12:41 Efficiently. 23:13:00 ais523: yes, lua has a simple rule: you need semicolon if the next statement starts with an opening left parenthesis, or something like that 23:13:00 hmm, ayacc's parser state is the call stack 23:13:14 ais523: yes, but you could write a backend where that's not so 23:13:33 I guess, although you'd probably have to implement "function calls" manually 23:15:30 Also, I think you'd either need some mechanical rewrite of the grammar to add lots of blocks to inspect the parsing and what happens when, or else try to add hooks directly in ayacc. Like, add a hook that calls a function just before a token is shifted (not when it's peeked), or something. 23:16:05 But I probably want to generate or preprocess grammars anyway. 23:16:11 Useful for multiple reasons. 23:16:39 fwiw, something I should do in ayacc but haven't yet 23:16:49 is to output two copies of the code implementing the parsing, one with debug information, one without 23:16:57 instead of checking to see if debug information is on whenever I do anything 23:17:06 that'd probably make things rather faster 23:17:27 although, hmm, would that violate POSIX if debug information was turned on/off during the actual parse? 23:20:10 ais523: would it really make things that much faster? does having to optionally print the debug info preclude some optimizations? 23:20:51 -!- J_Arcane has joined. 23:21:07 b_jonas: it makes the code a lot less tight 23:21:22 because you have to print debug info for almost everything 23:21:57 Isn't that normally disabled at ayacc time unless you use some command-line option though? 23:22:56 normally the code's removed by a preprocessor macro 23:23:01 the option changes the default setting of the macro 23:23:27 but people often want to turn it on in production code, but have the variable that controls it off for most uses 23:24:54 ais523: I mean, if you know the debug info will never be printed, will that let you improve the generated code other than by removing the actual printfs? such as by simplifying some of the generated code in such a way that it doesn't change semantics normally but would change debug output? 23:25:03 b_jonas: no 23:25:17 the situation is more, you know the debug info will be printed in some cases, but want to run it without the debug info printed 23:25:28 ais523: in that case I think it's fine to just leave the statements in 23:25:37 the if skipping will be efficient enough 23:25:53 because, you know, since you rarely toggle the condition, the processor predicts the branches perfectly 23:26:05 and will just skip straight through those statements 23:26:27 if you want, you can add compiler hints to help that a bit more 23:26:33 but it probably doesn't matter too much 23:26:35 -!- oerjan has joined. 23:27:36 ais523: you may now proceed with gloating hth 23:27:47 :-) 23:27:49 * ais523 gloats 23:28:00 oerjan: how quickly did you expect me to top the hill? 23:28:11 fwiw, although I really /wanted/ to top the hill with a margins derivative, I didn't think it'd actually be possible 23:28:52 ERM 23:29:26 well it was either this, or just barely in time for the anniversary 23:30:04 I'll update the strategy page later 23:33:23 `? horn 23:33:25 horn? ¯\(°​_o)/¯ 23:33:42 How can I create a bitmap font for X window? 23:34:12 by the name, i take it margins is designed to just barely win, so it makes sense it might get widely different placement with different scoring methods 23:34:31 zzo38: with the bdftopcf program, which compiles the bdf format (a simple and documented ascii text format describing bitmap fonts) to pcf (a compressed format the X server can load directly), 23:34:40 O, OK 23:35:31 The man page does not document the file format 23:35:45 It only specifies command-line options. 23:35:51 zzo38: then putting the compiled pcf to a directory, running mkfontdir on that directory to generate an index file that indexes all the font files in the directory (so that X can find the right one without opening every file), and telling X to use or re-read the directory with xset 23:36:10 zzo38: (alternately, you can use font files on a remote machine with xfs, a tcp-based font server) 23:37:40 zzo38: also, you may want to configure fontconfig to use X bitmap fonts (some distributions configure it so it doesn't use them by default) and regenerating fontconfig's index of fonts with the fc-cache command, so that applications using fontconfig (often through a higher level library) which normally use TTF and OTF fonts can also use your X bitmap font transparently. 23:38:05 And if the font isn't found, you're stuck blindly debugging undebuggable stuff. 23:38:17 zzo38: wait, I have a document of the bdf format somewhere, 23:38:49 Other than Firefox, all of my programs could already use bitmap fonts, although I did manage to configure it so that Firefox can also use bitmap fonts 23:39:22 zzo38: https://partners.adobe.com/public/developer/en/font/5005.BDF_Spec.pdf 23:42:12 Ah, I may have broken that. <-- it worked a day or so ago... 23:42:22 @google qjkxbmwvz 23:42:23 Plugin `search' failed with: connect: does not exist (No route to host) 23:42:47 zzo38: oh, and the pcf output is binary and somewhat efficient, but isn't compressed, so you can optionally gzip-compress it to pcf.gz, and the X server will transparently zcat it when reading 23:43:04 @google quantum 23:43:06 http://www.quantum.com/ 23:43:06 Title: Quantum Data Storage - Data Center and Scale-out Storage Solutions 23:43:37 so you install the .pcf.gz to the font directory rather than the straight .pcf 23:44:01 oh it may just be for nonexisting results 23:44:05 @google feiubrøogreøo 23:44:06 No Result Found. 23:44:09 or not. 23:44:49 @google canada 23:44:50 https://en.wikipedia.org/wiki/Canada 23:44:58 huh, Canada exists. 23:45:24 @ask int-e why in the world does @google qjkxbmwvz fail when others work, including searches with no result... 23:45:24 Consider it noted. 23:46:11 @google yeti 23:46:13 http://yeticoolers.com/ 23:46:13 Title: YETI Coolers- Premium Ice Chests, Apparel, and Gear 23:46:28 lambdabot: DON 23:46:35 'T RUIN MY DEMONSTRATION 23:46:45 @google cupachabra 23:46:45 https://id-id.facebook.com/WeAreBstarzLoveBastianBastianSteel/posts/504931756229719 23:47:03 @google xenu 23:47:04 https://en.wikipedia.org/wiki/Xenu 23:47:17 boily: Xenu exists tdnh 23:47:37 `? weather 23:47:38 lambdabot: @@ @@ (@where weather) CYUL ENVA ESSB KOAK 23:47:40 CYUL 052300Z 21007KT 15SM SCT150 SCT180 OVC240 M03/M11 A3019 RMK AC3AC1CI4 SLP227 \ ENVA 052320Z 07005KT 030V110 9999 FEW051 BKN064 01/M04 Q1006 RMK WIND 670FT 16012KT \ ESSB 052320Z AUTO 07004KT 9999 BKN007/// OVC010/// 00/M01 Q1008 \ KOAK 052253Z 15017G26KT 3SM -RA BKN023 OVC036 17/14 A2972 RMK AO2 PK WND 16028/2204 RAB2155 SLP063 P0001 23:47:40 T01670139 23:48:17 @google S4ys9N66zps 23:48:17 No Result Found. 23:49:59 fungot: T01670139 23:49:59 boily: is the gate key okay!! get' em! 200g per night. care, and stay...healthy! my husband...he's...he's...gone... but he left me precious gifts! the seeds...and our child, it's ancient history now... 23:50:12 GG? 23:50:16 ^style 23:50:16 Available: agora alice c64 ct* darwin discworld enron europarl ff7 fisher fungot homestuck ic irc iwcs jargon lovecraft nethack oots pa qwantz sms speeches ss wp youtube 23:50:30 ^style ct 23:50:31 Selected style: ct (Chrono Trigger game script) 23:50:43 I was waaaay off... 23:50:50 ^style jargon 23:50:50 Selected style: jargon (UNIX-HATERS mailing list archive) 23:50:57 fungot: nostril? 23:50:57 boily: perhaps i'll just keep telling yourself, jack. it should for a technical person to send me or this list any reasons. dont send me email or call me paranoid but finding '' characters. 23:51:10 oerjan: TDNH. 23:53:13 <\oren\> boily: well both GG and chrono trigger are epic steampunk fantasy 23:57:48 \oren\: is UNIX-HATERS also epic steampunk fantasy? (hi fungot btw) 23:57:48 ais523: we should avoid the use of even believing that not only external symbol definitions in the environment string as the infamous jargon file shows up. 23:59:47 he\\oren\. indeed.