←2016-03-04 2016-03-05 2016-03-06→ ↑2016 ↑all
00:00:16 -!- hppavilion[1] has joined.
00:00:23 <hppavilion[1]> Here's a problem of theoretical interest to me
00:00:58 <hppavilion[1]> Given a number by its prime factorization, calculate the prime factorization of its successor
00:01:10 <hppavilion[1]> The idea behind it is Esoteric Data Types
00:01:35 <hppavilion[1]> Specifically, the PFact number encoding
00:01:37 <myname> easy, drop everything you have and start from scratch
00:02:01 <hppavilion[1]> myname: Huh?
00:02:44 <myname> i don't think you can get the factorization any easier with the factors of the predecessor
00:02:54 <myname> at least not in the general case
00:03:01 <hppavilion[1]> myname: This isn't for code I'm working on, this is for a humorous data types
00:03:26 <hppavilion[1]> 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 <hppavilion[1]> xD
00:03:51 <hppavilion[1]> (wait, no, smallest 255, where 0b00000000 is 1)
00:04:17 -!- Nithogg has quit (Ping timeout: 260 seconds).
00:04:32 <hppavilion[1]> 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 <hppavilion[1]> Well, up to 8
00:05:22 <hppavilion[1]> 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 <mad> hey
00:18:48 -!- tromp has joined.
00:20:55 <tswett> Lemme find one of those hard-to-factor numbers.
00:21:21 <tswett> Now, the question "given the factorization of n, what is the factorization of n+1?" definitely sounds pretty interesting.
00:21:36 <tswett> And here's one thing that you do know: the two numbers cannot have any prime factors in common.
00:21:52 <Phantom_Hoover> would be surprised if you can say anything enormously stronger than that
00:22:14 <tswett> (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 <mad> afaik the link between the primeness of n and n+2 is still an open problem
00:23:22 <tswett> Here's a number that's hard to factor:
00:23:24 <tswett> 1522605027922533360535618378132637429718068114961380688657908494580122963258952897654000350692006139
00:23:32 <oerjan> also, at most one of the numbers can _be_ prime hth
00:23:44 <oerjan> ...excepting 2 and 3.
00:23:51 <tswett> Except that it's pretty easy to factor it using the Google method.
00:23:59 <tswett> Anyway, let's see what the factorization of its predecessor is.
00:24:24 <coppro> oerjan: 2 and 3 don't have any prime factors in common
00:24:41 <shachaf> Other than 2.5
00:24:46 <oerjan> coppro: and this contradicts what i said how?
00:24:57 <coppro> oh
00:25:01 <coppro> I missed the line above that
00:25:02 <coppro> nvm
00:25:15 <tswett> Okay, I found the factorization. It is:
00:25:41 <tswett> 2 * 3^2 * 210974974123 * 400944086233670527306310281636760087998315351567377660286363410284049027879820778576767
00:25:57 <myname> the 2 was easy
00:25:58 <tswett> That's probably pretty dang unhelpful.
00:26:04 <tswett> Yup.
00:26:28 <tswett> Fun fact: for 100% of all prime numbers p, p-1 has 2 as a factor.
00:26:50 <tswett> I wonder what the factorization of 400944086233670527306310281636760087998315351567377660286363410284049027879820778576766 is...
00:26:52 <myname> what about 2?
00:27:01 <oerjan> 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 <tswett> myname: nope, 2-1 doesn't have 2 as a factor.
00:27:28 <myname> that's not 100% then
00:27:33 <tswett> Of course it is.
00:27:38 <tswett> Surprisingly, 400944086233670527306310281636760087998315351567377660286363410284049027879820778576766 is taking several seconds to factor.
00:27:52 <myname> how is it?
00:28:03 <oerjan> myname: it's 100% by the most useful definition, aka density.
00:28:07 <tswett> Well, what percentage do you think it is?
00:28:22 <myname> i see what you did there
00:32:33 <tswett> 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 <mad> 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 <mad> every 12 steps
00:40:33 <mad> 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 <zzo38> Do you know if it is OK to call Pa_Terminate and/or Pa_CloseStream in a signal handler?
00:41:41 <mad> 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 <mad> ""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 <mad> "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 <tswett> Woo. It took half an hour and fifteen seconds, but I got that number factored. The factorization is:
00:59:25 <tswett> 2 * 3 * 409 * 1645447576107402059859920361500918359 * 99294502354941754852634597949140561238814554731
00:59:35 <tswett> Now, of course, I wonder what the factorization of 99294502354941754852634597949140561238814554730 is.
01:00:27 <myname> go for it
01:00:51 <oerjan> <mad> 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 <tswett> 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 <tswett> 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 <tswett> Done.
01:02:29 <mad> oerjan : RSA and the discrete logarithm are related I think
01:02:30 <myname> weird anchor
01:02:47 <tswett> `? weird anchor
01:02:55 <HackEgo> weird anchor? ¯\(°​_o)/¯
01:03:13 <oerjan> <mad> 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 <oerjan> mad: a bit maybe.
01:04:18 <oerjan> > length $ nub [2^n `mod` 13 | n <- [0..11]]
01:04:19 <lambdabot> 12
01:04:51 <myname> oerjan: huh?
01:04:59 <myname> what did you expect?
01:05:12 <oerjan> > [(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 <lambdabot> [(3,2),(5,4),(7,3),(11,10),(13,12),(17,8),(19,18),(23,11),(29,28),(31,5)]
01:05:30 <oerjan> myname: it could have been something else. of course 13 _wouldn't_ be an example.
01:06:10 <myname> ah, 1,2,4,1
01:06:12 <myname> i see
01:06:23 <oerjan> look at 7, 17, 23 and 31 up there.
01:07:02 <oerjan> in general, the order is some factor of p-1
01:07:19 <oerjan> but not all numbers will give exactly p-1.
01:07:42 <mad> hmm
01:09:40 <oerjan> <mad> 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 <mad> hmmm
01:11:29 <oerjan> hm wait does that make sense.
01:12:19 <oerjan> hm i think so.
01:12:35 <hppavilion[1]> tswett: Oh, you're factoring numbers. Great
01:12:44 <hppavilion[1]> tswett: Of course, you're doing it the noob way
01:12:48 <mad> well
01:13:05 <mad> if you start with some number N, multiply by 2, modulo M
01:13:12 <mad> say M is 17
01:13:16 <mad> repeat
01:13:23 <mad> you have two possible loops
01:13:47 <oerjan> <tswett> Done. <-- now use that to create a prime certificate for whatever it was you started with hth
01:13:56 <hppavilion[1]> Let's play: What's! That! Algorithm!
01:14:34 <hppavilion[1]> 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 <hppavilion[1]> O((log N)2(log log N)(log log log N))
01:15:08 <mad> 1>2>4>8>16>15>13>9>1... and 3>6>12>7>14>11>5>10>3...
01:15:14 <myname> why is the 2 in the middle?
01:15:32 <myname> i guess you are missing stuff
01:15:47 <myname> i guess it is ^2 and there is a / et the end
01:15:49 <hppavilion[1]> myname: It's a suberscript
01:15:56 <mad> the loop time is guaranteed to be p-1 or p-1 divivded by n
01:16:23 <hppavilion[1]> myname: I copied it directly, there are no mistakes
01:17:27 <oerjan> mad: p-1 is just (p-1)/1, anyhow
01:19:05 <oerjan> hppavilion[1]: you're assuming copying a webpage formula gives you a reasonable copy tdnh
01:19:40 <hppavilion[1]> oerjan: It did in this case
01:19:54 <hppavilion[1]> oerjan: O((log N)2(log log N)(log log log N)) is short enough to verify correctness by reading
01:19:58 <oerjan> isn't the 2 a superscript at _least_?
01:20:24 <oerjan> you said as much. so it was not correctly copied.
01:21:17 <mad> n ^ (p-1) modulo p = 1
01:21:20 <mad> I _think
01:21:32 <oerjan> mad: yes, that's fermat's little theorem.
01:22:03 <mad> n ^ (p-1)(q-1) modulo pq = 1
01:22:25 <oerjan> mad: assuming p and q are not factors of n
01:22:57 <mad> well, assuming n < pq
01:23:20 <mad> and yes assuming that p and q are prime
01:23:40 <oerjan> n < pq is not enough, what if n = p
01:24:09 <mad> then it's looping though q only I think?
01:24:20 <oerjan> obviously.
01:24:29 <mad> which means that then n ^ (q-1) = 1
01:25:18 <oerjan> but still you have n ^ ((p-1)(q-1)+1) == n (mod pq), which is what my professor mentioned
01:25:48 <oerjan> or thereabouts.
01:25:55 <mad> n ^ k(p-1)(q-1) modulo pq = 1 for any k
01:26:21 <myname> well, obviously
01:26:36 <myname> 1^k = 1 is no rocket science
01:26:55 <shachaf> except in linear logic hth
01:27:28 <myname> i don't know that stuff yet
01:27:39 <shachaf> oerjan: So what does it mean that LEM is multiplicative?
01:28:23 <oerjan> least evil multiple
01:28:47 <shachaf> law of excluded middle
01:29:22 <oerjan> shachaf: well, you know that proof of LEM (or something equivalent to it) using continuations, right?
01:30:08 <shachaf> Yes.
01:30:10 <oerjan> and using continuations for cheating by passing a counterexample back... which is iiuc also what # allows you to do
01:30:21 <oerjan> so it needs that feature of #.
01:30:21 <shachaf> Right, except it's more/less restricted.
01:30:44 <shachaf> # is a bit like threads.
01:30:50 <shachaf> And so is ⊗
01:33:01 <zzo38> lemCC = callCC (return . Right . (<=< return . Left));
01:33:41 <zzo38> callCC x = lemCC >>= either return x;
01:34:10 <oerjan> :t callCC (return . Right . (<=< return . Left))
01:34:11 <lambdabot> MonadCont m => m (Either a (a -> m b))
01:34:43 <hppavilion[1]> 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 <hppavilion[1]> I would think it does under the Fundamental Theorem of Arithmetic
01:35:21 <oerjan> hppavilion[1]: yes. i think that's usually a lemma used to _prove_ the FTA
01:35:23 <myname> how should it?
01:35:27 <zzo38> Yes it does imply
01:35:40 <oerjan> that is, if p divides m*n, then p must divide either m or n.
01:36:46 <hppavilion[1]> Oh, I see where this bug is coming from
01:36:50 <shachaf> 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 <shachaf> In fact, it's more of a lemma.
01:37:06 <zzo38> Well, either one would work
01:37:17 <oerjan> shachaf: callCC is pierce's law
01:37:22 <shachaf> I know.
01:37:25 <zzo38> Either one can be prove by the other one
01:37:26 <shachaf> I was just going for the pun.
01:37:58 <shachaf> oerjan: also it's peirce's law because why should anything be easy hth
01:38:17 <hppavilion[1]> Wait...
01:38:23 -!- JX7P has joined.
01:38:30 <hppavilion[1]> Intuitionistic logic forgoes the law of excluded middle, does it not?
01:38:32 <oerjan> shachaf: i considered checking and/or lampshading
01:38:37 <oerjan> hppavilion[1]: yes.
01:38:50 <JX7P> this must be the closest to a substitute for ##programming that i can find focusing particularly on PLT/language design
01:38:52 <hppavilion[1]> oerjan: And type systems are typically intuitionistic?
01:39:02 <hppavilion[1]> JX7P: PLT?
01:39:13 <JX7P> programming language theory
01:39:13 <\oren\> wat. kim kardashian's father was oj simsons lawyer?
01:39:15 <hppavilion[1]> JX7P: Yeah, we're the most active one at least
01:39:21 <JX7P> often, like gay rights, symbolised by the lambda
01:39:25 <hppavilion[1]> JX7P: There is ##proglangdesign, but it's not as active
01:39:32 <hppavilion[1]> JX7P: Yeah xD
01:39:38 <JX7P> it is also empty
01:39:42 <zzo38> Yes normally the type system are using intuitionistic logic, although you can use classical logic with continuations
01:39:47 <hppavilion[1]> JX7P: Might've typoed
01:40:03 <hppavilion[1]> JX7P: It was kind of a shock when I first saw the lambda associated with gay rights :P
01:40:19 <myname> wat
01:40:21 <shachaf> oerjan: What do you think about dual-intuitionistic logic?
01:40:33 <hppavilion[1]> 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 <oerjan> shachaf: dual-intuitionistic logic thinks about me hth
01:41:19 <hppavilion[1]> oerjan: Are you a soviet?
01:41:26 <shachaf> 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 <JX7P> hppavilion[1], as a community alone it will be interesting i think
01:41:45 <hppavilion[1]> JX7P: OK
01:41:53 <JX7P> ##programming did not appreciate my constant invocation of dialectical logic, which led to getting quieted
01:41:55 <hppavilion[1]> JX7P: Do you have any ideas in mind?
01:42:03 <hppavilion[1]> Dialectical?
01:42:19 <\oren\> what's dialectical logic?
01:42:20 <JX7P> 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 <shachaf> whoa whoa whoa
01:42:58 <JX7P> it's the logic developed by plato, hegel, marx, and adorno
01:42:58 <zzo38> "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 <shachaf> Is that like dialectica categories?
01:43:14 <oerjan> <hppavilion[1]> oerjan: Are you a soviet? <-- no, but dual logic clearly is hth
01:43:22 <hppavilion[1]> oerjan: Yeah
01:43:26 <hppavilion[1]> oerjan: Also, dialectical
01:44:11 <JX7P> 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 <shachaf> oerjan: Dual-intuitionstic logic has DNE but not DNI
01:44:54 <JX7P> the negation of the negation is 'enriched', it is the original but of a higher order
01:45:03 <oerjan> <JX7P> ##programming did not appreciate my constant invocation of dialectical logic, which led to getting quieted <-- such is being the antithesis?
01:45:24 <JX7P> oerjan, the synthesis being my joining this channel
01:45:34 <shachaf> 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 <JX7P> now I am back at the thesis, being in a channel about programming
01:46:01 <JX7P> but this time it has become refined, enriched, by finding a channel more specifically suited to my particular interests
01:46:20 <oerjan> shachaf: you know, that sounds strangely like what JX7P said above
01:46:25 <hppavilion[1]> JX7P: Checked out the wiki yet?
01:46:34 <oerjan> somehow.
01:46:37 <JX7P> hppavilion[1], i'm afraid i haven't
01:46:40 <zzo38> You can tell me if you intend to design any kind of programming language and whatever
01:46:45 <hppavilion[1]> `wiki
01:46:46 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: wiki: not found
01:46:51 <hppavilion[1]> Damn, was hoping that'd work
01:46:53 <shachaf> oerjan: whoa whoa whoa, so it is
01:47:01 <oerjan> maybe dual-intuitionistic logic and dialectic logic is the same thing!
01:47:02 <zzo38> http://esolangs.org/ is wiki
01:47:40 <JX7P> dual intuitionistic logics have some similarity since they can handle contradictions
01:47:42 <hppavilion[1]> `` echo "echo \"http://esolangs.org/wiki/Main_Page\"" > bin/wiki
01:47:42 <shachaf> oerjan: maybe you and i are the same thing
01:47:45 <HackEgo> No output.
01:47:48 <hppavilion[1]> `wiki
01:47:49 <HackEgo> ​/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 <hppavilion[1]> ...
01:47:56 <hppavilion[1]> I'm not going to go there today
01:47:58 <shachaf> hppavilion[1]: should've used mkx
01:48:04 <hppavilion[1]> shachaf: Right, right
01:48:24 <hppavilion[1]> `rm bin/wiki
01:48:27 <shachaf> But also shouldn't've cluttered bin/ like that. That's why we have wisdom.
01:48:28 <HackEgo> No output.
01:48:33 <shachaf> ...To be cluttered up?
01:48:42 <hppavilion[1]> shachaf: Yes, but this way we can just do `wiki
01:48:45 <hppavilion[1]> And look badass
01:48:51 <hppavilion[1]> (Relatively)
01:49:03 <oerjan> ^wiki
01:49:03 <fungot> http://esolangs.org/wiki/
01:49:04 <JX7P> anyway, thanks zzo38
01:49:04 <hppavilion[1]> JX7P: Know any LISP?
01:49:07 <hppavilion[1]> oerjan: Thank you
01:49:11 <myname> hppavilion[1]: why not add a factoid instead of a command?
01:49:20 <JX7P> hppavilion[1], i'm familiar with scheme at a basic level
01:49:21 <hppavilion[1]> `? wiki
01:49:23 <HackEgo> The wiki is at http://esolangs.org/wiki
01:49:28 <hppavilion[1]> JX7P: Made your own LISP yet?
01:49:28 <shachaf> hppavilion[1]: I didn't even do that for `weather
01:49:31 <shachaf> `? weather
01:49:32 <HackEgo> lambdabot: @@ @@ (@where weather) CYUL ENVA ESSB KOAK
01:49:34 <lambdabot> 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 <JX7P> also Coke (which is not quite Lisp but is close)
01:49:39 -!- augur has joined.
01:49:40 <shachaf> lambdabot: THAMBDABOT
01:49:46 <hppavilion[1]> `misle/rn wiki/The wiki is at http://esolangs.org/wiki
01:49:49 <HackEgo> Was lied to about «wiki»
01:50:00 <JX7P> hppavilion[1], it formed a very useful avenue for research https://github.com/Valutron/Valutron
01:50:11 <shachaf> i really want to misle rn
01:50:15 <myname> hppavilion[1]: why?
01:50:28 <JX7P> it was a partnership effort. unfortunately my partner lost interest
01:50:36 <hppavilion[1]> Can we make `? wiki direct you to an ancient stone tablet or give you an ISBN? xD
01:50:46 <shachaf> Why?
01:50:53 <zzo38> I think the esolang wiki is not a book?
01:50:53 <myname> what for?
01:51:08 <hppavilion[1]> myname: shachaf: zzo38: To be more in line with wisdom
01:51:16 <myname> eh?
01:51:23 <shachaf> What are you suggesting?
01:51:27 <shachaf> That wisdom isn't useful?
01:51:30 <hppavilion[1]> `tomfoolery wisdom
01:51:33 <HackEgo> wisdom is tomfoolery
01:51:51 <hppavilion[1]> shachaf: No
01:51:59 <hppavilion[1]> shachaf: It'd be the ISBN for a really good book
01:52:05 <hppavilion[1]> shachaf: Which would be useful
01:52:10 <shachaf> But that's not what people want.
01:52:14 <myname> that would not be the wiki
01:52:18 <JX7P> 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 <hppavilion[1]> \oren\: OO language alert
01:54:00 <oerjan> hppavilion[1]: any attempt to cleanse wisdom of everything true may lead to me merging tomfoolery back into it hth
01:55:07 <mad> hppavilion[1] : the world is OO
01:55:44 <JX7P> what i particularly like about SmallTalk is that Alan Kay describes the objects as monadic
01:55:50 <JX7P> (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 <JX7P> this causes no end of confusion to functional people
01:56:08 <hppavilion[1]> https://www.quora.com/What-is-the-most-illegal-thing-you-could-possibly-do/answer/Phil-Albert
01:56:28 <JX7P> \oren\, perhaps you would respect the Combined Object-Lambda Abstraction and its implementation Coke
01:56:43 <myname> plot twist: removing true wisdoms is illegal?
01:57:15 <JX7P> or even SmallTalk-71/72, when it was still obviously lisp
01:57:30 <mad> \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 <JX7P> this is a design element
02:00:29 <mad> and? you can have a static function instead, that's functionally equivalent
02:00:35 <JX7P> 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 <JX7P> in SmallTalk-family languages, one can simply pass a selector or a block to functions
02:02:34 <JX7P> or even a whole message ready to be sent
02:02:46 <JX7P> there are no functions in the Kayian OO
02:02:55 <mad> \oren\ : java uses interfaces instead of pointers for callbacks yes
02:03:35 <hppavilion[1]> I want to make a hackable LISPlike2JS compiler
02:03:45 <hppavilion[1]> s/compiler/transpiler/
02:04:04 <hppavilion[1]> Something that people can download and reengineer into a custom language for their own devious purposes
02:05:20 <mad> 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 <JX7P> i think it's important not to conflate Java and C++ with authentic Kayian OO
02:06:04 <hppavilion[1]> \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 <JX7P> you have experimented with the SmallTalk?
02:06:46 <JX7P> (or even Objective-C?)
02:07:31 <zzo38> JavaScript supports real function-oriented programming, and so does Haskell
02:08:04 <myname> i like ruby more
02:08:37 <hppavilion[1]> myname: BOOOOOOOOO
02:08:40 <myname> everything is an object, but in a way that doesn't throw sticks at you if you ignore that
02:09:09 <myname> it is like 110% syntax sugar
02:09:17 <JX7P> i observed a large deal of smalltalk influence in the ruby
02:09:20 <zzo38> 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 <myname> if ypu ever even need one gem in ruby, you are screwed, though
02:18:58 <mad> null is evil
02:19:43 <JX7P> 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 <myname> On Error Resume Next
02:30:57 <zzo38> 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 <prooftechnique> myname: What's wrong with gems?
03:34:37 -!- oerjan has quit (Quit: Nite).
03:37:10 <zzo38> 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 <zzo38> (Sound output nevertheless seems to work)
03:39:54 <zzo38> I found something I can try
03:41:49 <zzo38> I got rid of the first three lines at least
03:48:07 <zzo38> 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 <zzo38> Is 735 a too low frame count?
04:10:01 <zzo38> 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 <HackEgo> ​[U+FA46 CJK COMPATIBILITY IDEOGRAPH-FA46]
04:43:12 -!- treaki_ has joined.
04:43:17 <\oren\> `u8tbl 0x6e1a 0x6e1a
04:43:18 <HackEgo> Segmentation fault
04:43:23 <\oren\> `` u8tbl 0x6e1a 0x6e1a
04:43:24 <HackEgo> ​渚
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 <shachaf> This certainly won't get confusing: http://slbkbs.org/coherent-notations.png
06:01:22 -!- hppavilion[1] has joined.
06:02:45 <hppavilion[1]> https://en.wikipedia.org/wiki/Category:Category-theoretic_categories is a fun wikipedia category
06:03:50 <hppavilion[1]> 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 <lambdabot> 5360
06:52:28 <prooftechnique> hppavilion[1]: What's the initial object of a wiki category?
06:52:45 <hppavilion[1]> prooftechnique: The main page for that category
06:53:10 <hppavilion[1]> prooftechnique: What is an "Initial Object"?
06:55:04 <shachaf> An object L such that for any object X there's a unique arrow from L to X.
06:55:27 <hppavilion[1]> shachaf: Ah
06:55:32 <shachaf> What objects are initial in the categories I talked about the other day?
06:55:42 <hppavilion[1]> shachaf: Let me check
06:56:25 <hppavilion[1]> shachaf: Well 0 in category A, off the top of my head
06:56:32 <hppavilion[1]> shachaf: (I don't have my notes open yet)
06:56:59 <shachaf> They should have better names.
06:57:08 <shachaf> A should be called N.
06:57:33 <shachaf> B should be called Lin
06:57:36 <shachaf> C should be called Fnord
06:57:56 <hppavilion[1]> shachaf: Blackboard Bold N?
06:58:10 <shachaf> Whatever you want.
06:58:23 <prooftechnique> Fraktur N is prettier
06:58:54 <hppavilion[1]> My internet is going REALLY slow :/
06:59:06 <hppavilion[1]> I think I hit the data cap and it hasn't reset yet
07:00:17 <hppavilion[1]> shachaf: So composition in ℕ is just the transitive property of ≤, correct?
07:00:30 <prooftechnique> 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 <shachaf> Composition is a function.
07:01:00 <hppavilion[1]> prooftechnique: Can a category have more than one initial object?
07:01:07 <hppavilion[1]> shachaf: Ah
07:01:12 <prooftechnique> They're isomorphic
07:01:13 <hppavilion[1]> shachaf: See, I knew that, but I wasn't sure
07:01:30 <shachaf> The answer is either yes or no depending on what you mean.
07:01:35 <hppavilion[1]> I wasn't sure it HAD to be a function
07:01:36 <prooftechnique> On the other hand, the category listing page is almost certainly a terminal object
07:02:06 <shachaf> Well, it doesn't have to be function.
07:02:13 <shachaf> Some categories are too large for it to be a function.
07:02:16 <hppavilion[1]> prooftechnique: Is linking an arrow from the linker or from the linkee?
07:02:40 <hppavilion[1]> shachaf: What function is there that is suitable for composition in ℕ?
07:02:44 <hppavilion[1]> shachaf: I can't think of any
07:02:46 <prooftechnique> Depends if you can go the other way, I guess
07:02:55 <shachaf> hppavilion[1]: It composes arrows.
07:03:13 <hppavilion[1]> shachaf: OK...
07:03:20 <shachaf> 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 <shachaf> It corresponds to transitivity, sure.
07:03:55 <hppavilion[1]> OK
07:04:02 <hppavilion[1]> shachaf: But is that right? xD
07:04:09 <shachaf> What?
07:04:37 <hppavilion[1]> shachaf: What is composition in ℕ? Is it just the transitive property, or is it something else?
07:04:49 <shachaf> I don't know.
07:04:56 <hppavilion[1]> shachaf: I'm unsure if that last message is a yes because of the word "corresponds"
07:05:02 <shachaf> I'd say that it's a function and not a property.
07:05:07 <hppavilion[1]> OK
07:05:09 <shachaf> But it's substantially the same thing.
07:05:42 <hppavilion[1]> shachaf: If it's properties, it works well because x ≤ x, which of course works with the identity morphisms nicely
07:06:44 <shachaf> 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 <shachaf> 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 <hppavilion[1]> shachaf: Yes, knew that
07:07:18 <hppavilion[1]> shachaf: OK
07:07:27 <shachaf> In this case that's pretty boring because there's only one arrow : A -> C
07:09:24 <hppavilion[1]> 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 <hppavilion[1]> s/in/with the objects as/
07:09:39 <shachaf> They aren't anything.
07:09:43 <hppavilion[1]> OK
07:09:50 <hppavilion[1]> That's what I've been assuming, but I had to check
07:09:58 <shachaf> They aren't anything in Set either.
07:10:09 <hppavilion[1]> shachaf: They /represent/ functions
07:10:27 <shachaf> OK.
07:10:36 <shachaf> Then these arrows represent the relationship <=
07:10:39 <hppavilion[1]> shachaf: At least that's what wikipedia told me
07:10:50 <hppavilion[1]> shachaf: Yes, that was a given
07:12:28 <shachaf> Anyway the question of what object is initial is easy
07:13:26 <hppavilion[1]> shachaf: My money's on 0
07:13:41 <shachaf> Why?
07:14:00 <hppavilion[1]> shachaf: Because all natural numbers are greater than or equal to 0
07:14:13 <shachaf> sgtm
07:14:19 <shachaf> What about a terminal object?
07:14:32 <hppavilion[1]> shachaf: None; there's always a bigger number
07:14:40 <hppavilion[1]> shachaf: You can always add 1
07:14:40 <shachaf> sgtm
07:14:43 <prooftechnique> Same
07:14:43 <hppavilion[1]> sgtm?
07:14:45 <prooftechnique> Heh
07:14:47 <shachaf> What if we add infinity?
07:14:56 <prooftechnique> (silently giggling to myself)
07:15:00 <hppavilion[1]> shachaf: Then infinity is a terminal object, assuming you don't have inf+1 and such
07:15:04 <hppavilion[1]> prooftechnique: *Sigh*
07:15:10 <hppavilion[1]> prooftechnique: What did I do?
07:15:11 <shachaf> "sounds good to me"
07:15:13 <hppavilion[1]> `? sgtm
07:15:14 <hppavilion[1]> Oh
07:15:15 <HackEgo> sgtm? ¯\(°​_o)/¯
07:15:26 <hppavilion[1]> Makes sense
07:15:44 <shachaf> `le/rn sgtm/Sergeant Mustard
07:15:51 <HackEgo> Learned «sgtm»
07:16:52 <shachaf> Anyway this is barely category theory, it's just order theory.
07:16:54 <hppavilion[1]> shachaf: Did he get a promotion?
07:16:57 <hppavilion[1]> (Or demotion?)
07:16:59 <hppavilion[1]> damn
07:17:11 <shachaf> You should figure out Fnord.
07:17:30 <hppavilion[1]> shachaf: Working on that, but I'm still yet to figure out pointwise indexing
07:17:44 <shachaf> Oh, pointwise indexing is easy.
07:18:28 <hppavilion[1]> shachaf: OK
07:18:37 <shachaf> Take (3,4,5) : 3 -> 6
07:19:01 <prooftechnique> Easy? So Sgeo invented it?
07:19:11 <shachaf> Compose it with (10,20,30,40,50,60) : 6 -> 100
07:19:24 <shachaf> What do you get?
07:19:56 <hppavilion[1]> shachaf: (30, 40, 50) : 3 -> 100 ??
07:20:12 <shachaf> (40,50,60) : 3 -> 100, because it's 0-indexed
07:20:18 <hppavilion[1]> Oh, right
07:20:32 <hppavilion[1]> shachaf: So it's exactly what I tried to ask the other day with INTERCAL's select operator
07:20:34 <hppavilion[1]> Where you said it isn't
07:20:35 <hppavilion[1]> xD
07:20:35 <shachaf> What's the identity : 3 -> 3?
07:20:45 <shachaf> I looked up that operator and I don't think it's that.
07:21:02 <shachaf> Also I don't like the sequence of characters "xD".
07:21:20 <hppavilion[1]> shachaf: Why not?
07:21:27 <hppavilion[1]> The latter, not the former
07:21:43 <shachaf> I don't have to justify it.
07:22:37 <hppavilion[1]> shachaf: Do you prefer (╯°□°)╯︵ ┻━┻?
07:22:39 <shachaf> No.
07:23:36 <shachaf> Anyway now that you know what composition is you can invent identity.
07:23:41 <prooftechnique> \oren\: You will be pleased to know that kaomoji are rendered beautifully in your font
07:24:33 <hppavilion[1]> shachaf: How about <コ:彡?
07:24:42 <shachaf> No. Please stop sending them to me.
07:24:47 <hppavilion[1]> Fine...
07:24:49 -!- lambda-11235 has quit (Quit: Bye).
07:27:29 <hppavilion[1]> shachaf: Are they the empty tuple or the tuple (0) ?
07:27:38 <hppavilion[1]> (1-tuple? Is that even allowed?)
07:27:49 <hppavilion[1]> Wait, maybe not
07:27:49 <shachaf> An arrow : N -> M is an N-tuple
07:27:54 <hppavilion[1]> Yes
07:28:01 <hppavilion[1]> Where all values < M
07:28:12 <shachaf> So an arrow : 3 -> 3 isn't a 1-tuple
07:28:27 <hppavilion[1]> shachaf: So it has to be a tuple... containing all numbers 0 .. M-1
07:28:32 <hppavilion[1]> Maybe?
07:28:39 <shachaf> Maybe.
07:28:53 <hppavilion[1]> shachaf: Wait, no
07:29:08 <zzo38> Each initial object of a category can also define a comonad
07:29:09 <hppavilion[1]> shachaf: It just has to have all numbers 0 .. q-1, where q < M
07:29:32 <shachaf> sgtm
07:29:44 <shachaf> zzo38: Which comonad?
07:29:49 <hppavilion[1]> shachaf: Perhaps they have to be in order, too
07:29:55 <hppavilion[1]> shachaf: But I'm not sure
07:29:59 <hppavilion[1]> Let me think about it
07:30:06 <shachaf> hppavilion[1]: What's (0,1) . (1,0)?
07:30:13 <shachaf> And (1,0) . (0,1)?
07:30:21 <hppavilion[1]> shachaf: (1, 0) and (1, 0)
07:30:29 <hppavilion[1]> shachaf: But does that work in the general case?
07:30:44 <zzo38> 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 <shachaf> you tell me hth
07:32:25 <hppavilion[1]> shachaf: Theory: They have to contain the numbers 0 .. q-1 : q < M in either ascending or descending order
07:32:32 <zzo38> 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 <zzo38> And a category with more than one object always has more monads than final objects and more comonads than initial objects.
07:33:42 <shachaf> Why?
07:34:23 <hppavilion[1]> shachaf: Because that way it will always produce itself... hm...
07:34:43 <zzo38> 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 <hppavilion[1]> shachaf: I suppose they don't need to have any particular order
07:36:34 <izabera> http://www.emojicode.org/docs/
07:38:32 <shachaf> zzo38: Oh, right.
07:41:12 <izabera> that thing supports sqlite http://www.emojicode.org/docs/packages/sqlite/t5535756538.html
07:57:50 -!- vodkode has joined.
08:03:01 <hppavilion[1]> 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 <shachaf> Also if your enemy is their own enemy.
08:04:32 <shachaf> Or you're your own enemy.
08:17:39 -!- hppavilion[1] has quit (Ping timeout: 248 seconds).
08:22:46 <prooftechnique> 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 <myname> prooftechnique: gems tend to break a lot during updates. and too long at that
08:25:15 <prooftechnique> I see
08:25:58 <myname> i used to use sup as a mail client
08:26:17 <myname> until it broke for weeks due to ruby updates
08:26:54 <prooftechnique> I think I tried to use sup during one of those weeks. Couldn't get it to build
08:26:58 <prooftechnique> Now I just use mutt and notmuch
08:27:23 <myname> notmuch is interesting
08:27:42 <prooftechnique> Ain't that the truth
08:27:43 <myname> last time i checked, mutt was horrible for multiple accounts
08:28:09 <prooftechnique> I'm finding it pretty straightforward. I use OfflineIMAP to actually fetch the mail, though
08:28:18 <prooftechnique> And msmtp to send it
08:28:25 <myname> i did that for sup, too
08:28:47 <myname> sup just had one global inbox for every account
08:29:11 <prooftechnique> 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 <myname> i thought of writing my own notmuch ui, but i got a smartphone since then ...
08:29:45 <myname> as i said, horrible for multiple accounts
08:29:55 <prooftechnique> How's that horrible?
08:30:26 <prooftechnique> The account configs are just Maildir, Use GPG?, and account names
08:30:38 <myname> why do need to do that weird stuff? i just want one inbox
08:30:49 <myname> and it would not even be hard to do that
08:31:00 <prooftechnique> Because I have work email and personal email that I want to keep separate
08:31:04 -!- AnotherTest has joined.
08:31:48 <prooftechnique> 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 <prooftechnique> 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 <prooftechnique> Email is awful and we should kill it
08:36:15 <prooftechnique> But it's still better than the telophone
08:36:18 <prooftechnique> *telephone
09:24:01 -!- tromp has joined.
09:24:37 -!- lleu has quit (Quit: That's what she said).
09:24:58 <zzo38> I use Heirloom Mailx as the email program
09:25:26 <zzo38> But I do telephone call and postal too
09:26:57 <shachaf> How can I reach you via telephone call and postal?
09:27:19 <shachaf> I guess I can use the information in your whois records.
09:29:51 -!- tromp has quit (Ping timeout: 264 seconds).
09:39:53 <zzo38> 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 <shachaf> What if I want to send you a cake?
09:44:57 <zzo38> 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 <shachaf> Isn't it better when the cake is a gift, though?
09:50:50 <zzo38> 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 <shachaf> What! Only from family?
09:55:25 -!- Elronnd has joined.
09:59:57 <zzo38> 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 <fizzie> fungot: Surely a cake is also a message, of sorts.
11:36:54 <fungot> 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 <zzo38> 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 <boily> @metar CYQB
13:45:09 <lambdabot> CYQB 051300Z VRB02KT 30SM FEW005 FEW090 M19/M23 A3026 RMK ST1AC1 ST TR ST OVR RVR SLP257
13:50:44 <boily> @metar CYUL
13:50:45 <lambdabot> 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 <boily> hellørjan!
14:53:21 <oerjan> afternoily!
14:54:01 <HackEgo> [wiki] [[Brainfuck]] https://esolangs.org/w/index.php?diff=46496&oldid=46459 * Rdebath * (+126) Smaller, faster, easier, cleaner and commented.
14:54:21 <boily> I'm realizing I lack a sauna in my life.
14:55:46 <izabera> as long as you shower...
14:57:18 <boily> I had a nice Scottish shower this morning.
14:57:30 <boily> (izabellora!)
15:01:51 <izabera> must write an highlighter that understands that
15:02:31 -!- Lord_of_Life has quit (Excess Flood).
15:03:41 <int-e> hmm, isabelle
15:04:37 -!- Lord_of_Life has joined.
15:05:14 <izabera> and that
15:05:56 <izabera> my whole life seems to be focused on parsing random input
15:06:06 * izabera is depressed
15:06:07 <int-e> ( https://isabelle.in.tum.de/ ... might be confusing. )
15:06:07 <idris-bot> (input):1:9: error: unexpected
15:06:08 <idris-bot> Operator without known fixity:
15:06:08 <idris-bot> ://, expected: space
15:06:08 <idris-bot> https://isabelle.in.tum.de/ ... might be confusing. )<EOF>
15:06:08 <idris-bot> ^
15:06:27 <oerjan> int-e: you confused idris-bot, at least.
15:06:48 <int-e> Yes, and all because I put spaces around urls in IRC.
15:07:08 <oerjan> int-e: btw are you up to date on girl genius
15:07:08 <int-e> ( cookie
15:07:09 <idris-bot> No such variable cookie
15:07:15 <int-e> no, I'm not
15:07:27 <myname> the rfc for declaring urls is <> hth
15:07:29 <oerjan> 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 <oerjan> figuratively, that is. in reality i happened to sneeze just then.
15:08:17 <myname> <https://isabelle.in.tum.de/> ... might be confusing.
15:09:02 <int-e> now I am.
15:09:58 <int-e> myname: that's unlikely to affect my habit :P (and what's "the" rfc anyway?)
15:10:52 <myname> i am way to lazy to look tht up
15:11:07 <myname> i am trying to get motivated for grocery shopping
15:11:25 <int-e> that sounds familiar
15:11:45 <int-e> I have almost 2 hours left to actually do it.
15:12:15 <oerjan> 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 <myname> i may go after the podcast finished
15:12:56 <oerjan> for some value of "first".
15:13:14 -!- Lord_of_Life has quit (Excess Flood).
15:13:15 <oerjan> (obviously ordinary time need not apply)
15:13:37 -!- Lord_of_Life has joined.
15:15:16 <oerjan> by the first "first one", i mean way back in the first comic chapter.
15:15:38 <oerjan> by the second, i mean, whether the Other originated with lucrezia.
15:17:46 <int-e> 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 <oerjan> 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 <oerjan> *her
15:19:20 <int-e> (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 <oerjan> 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 <oerjan> or wait, is that what you meant.
15:20:57 <oerjan> i think there's more than one such novel. not that i've read more than plot summaries.
15:21:12 <int-e> 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 <oerjan> int-e: hm
15:23:16 <oerjan> . o O ( maybe time passes in the opposite direction in the geisterdamen's world )
15:23:17 <int-e> (at least jumping back and forth is certainly sufficient to explain that statement)
15:23:28 <oerjan> *s'
15:23:38 <oerjan> wait, no
15:23:40 <oerjan> *'s
15:23:49 <oerjan> silly mixed language plurals
15:23:54 <int-e> perhaps it should be geisterdamen'
15:24:09 <oerjan> i don't think so. it's children's, after all.
15:24:29 <int-e> anyway... shopping... bbl
15:25:52 -!- zadock has joined.
15:29:52 <boily> `relcome zadock
15:30:22 <HackEgo> zadock: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: <http://esolangs.org/>. (For the other kind of esoterica, try #esoteric on EFnet or DALnet.)
15:30:39 <myname> 40 seconds ...
15:30:52 <myname> 30
15:31:16 <boily> Gregor: Grellogor. your bot, it is slow.
15:32:09 <boily> imagine, a bunch of sudden newcomers, improperly `relcomed. consequences will never be the same.
15:32:26 -!- tromp has joined.
15:33:48 <oerjan> boily: problem is, Gregor himself is slower
15:34:10 <oerjan> he may be living near a black hole.
15:34:34 <boily> that's not impossible.
15:34:56 <boily> lots of people live in unusual places.
15:35:24 <myname> 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 <int-e> oerjan: thanks for the children example btw
16:06:46 <oerjan> yw
16:11:46 -!- AlexR42 has joined.
17:17:50 -!- password2 has joined.
17:18:02 <password2> G'day
17:24:59 -!- oerjan has quit (Quit: Later).
17:29:09 <int-e> `? password
17:29:14 <HackEgo> The password of the month is fisherman3
17:32:39 <myname> does it ever change?
17:33:56 <int-e> `learn The password of the month is qjkxbmwvz
17:34:00 <HackEgo> Learned 'password': The password of the month is qjkxbmwvz
17:34:13 <int-e> not by itself ;)
17:34:16 <myname> i cpunt that as a yes
17:34:36 <myname> well, you could make a command out of it that just hashes the month
17:34:59 <int-e> that would be too random
17:36:19 <prooftechnique> int-e is a cryptographically secure source of entropy, so this method works
17:36:41 <int-e> @google qjkxbmwvz
17:36:43 <lambdabot> Plugin `search' failed with: connect: does not exist (No route to host)
17:36:58 <int-e> Ah, I may have broken that.
17:37:15 <int-e> hmm, well, actually I wouldn't know how
17:37:18 <int-e> @metar lowi
17:37:18 <lambdabot> 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 <HackEgo> ​✑✒
18:24:12 -!- lleu has joined.
18:25:24 <\oren\> `` u8tbl 0x27a2 0x27a8
18:25:25 <HackEgo> ​➢➣➤➥➦➧➨
18:25:54 <\oren\> `` u8tbl 0x2795 0x2797
18:25:57 <HackEgo> ​➕➖➗
18:27:48 <\oren\> `` u8tbl 0x2912 0x2913
18:27:49 <HackEgo> ​⤒⤓
18:28:09 <password2> "/
18:29:10 <\oren\> `` u8tbl 0x29b0 0x29b6
18:29:11 <HackEgo> ​⦰⦱⦲⦳⦴⦵⦶
18:42:16 <\oren\> `` u8tbl 0x3037 0x3037
18:42:17 <HackEgo> ​〷
18:43:07 <\oren\> `` u8tbl 0x303c 0x303f
18:43:08 <HackEgo> ​〼〽〾〿
18:47:32 <\oren\> new ttf is up. not much added, really
18:47:46 <int-e> @google qjkxbmwvz
18:47:47 <lambdabot> Plugin `search' failed with: connect: does not exist (No route to host)
18:48:53 <int-e> oh... I guess the query succeeds but it fails to find the page title.
19:05:31 <\oren\> @google ➥
19:05:32 <lambdabot> 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 <lambdabot> 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 <lambdabot> 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 <lambdabot> 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 <int-e> urkh
19:06:03 <\oren\> uhh, lamby, would you mind not percent encoding that
19:06:21 <int-e> it would have to decode it
19:06:41 <\oren\> boo
19:09:13 <\oren\> @google 〾
19:09:14 <lambdabot> http://get-simple.info/forums/showthread.php?tid=1995
19:09:14 <lambdabot> Title: Проблема с...
19:09:26 <\oren\> um, wtf
19:10:40 <prooftechnique> That forum does not get Cyrillic, I guess
19:11:57 <\oren\> what character encoding is that?
19:12:30 <prooftechnique> I have no idea. It's full of 0x0090, which I've never seen before
19:12:34 <prooftechnique> "Device Control String"?
19:13:07 <int-e> well, the page says, <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
19:13:45 <int-e> but it really doesn't look like that, not even in a browser
19:14:00 <int-e> (as you have, no doubt, already seen)
19:14:05 <prooftechnique> Haha, yes
19:15:54 <\oren\> @google 〽
19:15:56 <lambdabot> http://www.tinyportal.net/index.php?topic=30323.0
19:15:56 <lambdabot> Title: Strange: � in articles
19:16:05 <prooftechnique> 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 <int-e> 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 <b_jonas> 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 <b_jonas> Ah no, it was on another channel, sorry.
20:11:13 <JX7P> ah, ye olde gnu library gpl
20:18:12 -!- zadock has quit (Ping timeout: 260 seconds).
20:41:32 <b_jonas> `? glados
20:41:40 <HackEgo> glados? ¯\(°​_o)/¯
20:41:46 <b_jonas> fungot, what are the disclaimers about the Enrichment Center again?
20:41:46 <fungot> 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 <b_jonas> fungot: that's surprisingly approperiate.
20:42:04 <fungot> 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 <Sgeo__> "Chess is really beginning to show its age. They should increase the resolution from 8x8 to 1920x1080, at least."
20:43:26 <b_jonas> fungot, is it Utumno or Orodruin that was heated by earth spirits?
20:43:26 <fungot> 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 <b_jonas> fungot, do you think that kind of heating is similar to the Tűzgagó from the Szabó Magda novel?
20:44:03 <fungot> 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 <b_jonas> `? Enrichment center
20:45:50 <HackEgo> Enrichment center? ¯\(°​_o)/¯
20:52:52 -!- hppavilion[1] has joined.
20:59:37 <hppavilion[1]> http://smbc-comics.com/index.php?id=2135
21:09:06 <int-e> b_jonas: The enrichment center regrets to inform you that this next test is impossible.
21:09:38 <myname> holy shit, why did i never clicked that button?
21:10:42 <b_jonas> `slashlearn enrichment center/The Enrichment center regrets to inform you that this next test is impossible.
21:10:44 <int-e> `? victory candescence
21:10:45 <HackEgo> Learned «enrichment center»
21:10:46 <HackEgo> victory candescence? ¯\(°​_o)/¯
21:10:58 <b_jonas> `slashlearn enrichment centre/The Enrichment center regrets to inform you that this next test is impossible.
21:11:01 <HackEgo> Learned «enrichment centre»
21:12:24 <lambda-11235> Best cheat sheet ever https://www.tug.org/texshowcase/cheat.pdf.
21:12:52 <int-e> 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 <int-e> s/for/at/, I guess
21:17:04 <b_jonas> `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 <HackEgo> No output.
21:17:12 <b_jonas> `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 <HackEgo> 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 <fizzie> But that makes no sense!
21:49:21 <int-e> `? atm
21:49:23 <HackEgo> An ATM is when you're withdrawing money right now at a machine that will steal your relevant info.
21:49:50 <fizzie> 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 <int-e> "Definition 2.1. An alternating Turing machine (ATM) is a seven-tuple [...]"
21:52:07 <int-e> `? sauron
21:52:09 <HackEgo> sauron? ¯\(°​_o)/¯
21:52:32 <int-e> maybe Sauron is the secret identity of the Balrog superher^H^H^Hmonster.
21:53:44 <b_jonas> ``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 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: `learn: not found
21:53:48 <b_jonas> `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 <HackEgo> 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 <myname> what is an alternating tm?
21:54:31 <fizzie> myname: A seven-tuple.
21:55:51 <b_jonas> `learn Utumno is Morgoth's first dungeon. It is where he was defeated, and the Silmarils temporarily reclaimed from him.
21:55:52 <myname> well, yeah
21:55:53 <HackEgo> Learned 'utumno': Utumno is Morgoth's first dungeon. It is where he was defeated, and the Silmarils temporarily reclaimed from him.
21:56:07 <int-e> 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 <myname> how does it differ from a normal tm
21:56:18 <myname> ah
21:56:37 <b_jonas> fizzie: ah sorry, that's supposed to be Mordor
21:56:51 <b_jonas> `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 <HackEgo> 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 <int-e> where one = at least one.
21:57:49 <b_jonas> `? sauron
21:57:50 <HackEgo> sauron? ¯\(°​_o)/¯
21:58:04 <b_jonas> `? morgoth
21:58:05 <HackEgo> morgoth? ¯\(°​_o)/¯
21:58:33 <b_jonas> ``` find wisdom -iname "*il*"
21:58:35 <HackEgo> 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 <b_jonas> ``` find wisdom -iname "*il*" | tail -n+7
21:58:54 <HackEgo> 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 <b_jonas> ``` find wisdom -iname "*il*" | tail -n+10
21:59:09 <HackEgo> 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 <int-e> 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 <prooftechnique> `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 <HackEgo> 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 <int-e> myname: "alternating" refers to the alternation between existential and universal quantifiers.
22:00:07 <myname> sounds a bit like modal logic
22:00:23 <myname> always eventually ...
22:00:59 <b_jonas> `? cake
22:01:02 <HackEgo> The Enrichment Center is required to remind you that you will be baked, and then there will be cake.
22:01:15 <int-e> I'm afraid that one is my fault
22:01:21 <int-e> `culprits wisdom/cake
22:01:25 <HackEgo> int-e ais523 int-e
22:01:26 <b_jonas> `? submarine
22:01:27 <HackEgo> submarine? ¯\(°​_o)/¯
22:02:17 <int-e> `learn submarine is the same as suburban... except for bodies of ocean water instead of cities.
22:02:22 <HackEgo> Learned 'submarine': submarine is the same as suburban... except for bodies of ocean water instead of cities.
22:02:27 <prooftechnique> `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 <HackEgo> 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 <b_jonas> HEY!
22:02:42 <b_jonas> I was just going to write an entry for Sauron
22:02:47 <b_jonas> argh
22:02:53 <prooftechnique> I mean, you still can
22:03:58 <int-e> `? gollum
22:03:59 <HackEgo> gollum? ¯\(°​_o)/¯
22:04:46 <b_jonas> `? mario
22:04:47 <HackEgo> Mario is a classic NP-complete problem invented by Nintendo.
22:04:51 <int-e> . o ( Gollum is the rightful, crispy, owner of the One Ring. )
22:05:38 <int-e> `sed -i s/complete/hard/ wisdom/mario
22:05:39 <HackEgo> 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 <int-e> `` sed -i s/complete/hard/ wisdom/mario
22:05:45 <HackEgo> No output.
22:06:03 <prooftechnique> `? mario
22:06:04 <HackEgo> Mario is a classic NP-hard problem invented by Nintendo.
22:07:27 <b_jonas> `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 <HackEgo> 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 <b_jonas> `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 <HackEgo> 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 <prooftechnique> `? Elrond
22:07:51 <HackEgo> Elrond? ¯\(°​_o)/¯
22:08:13 <int-e> `? numeria
22:08:14 <HackEgo> numeria? ¯\(°​_o)/¯
22:09:02 <b_jonas> `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 <HackEgo> 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 <b_jonas> `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 <HackEgo> 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 <int-e> ah they made it to beta apparently
22:09:21 <b_jonas> int-e: who?
22:09:36 <fizzie> 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 <prooftechnique> `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 <HackEgo> 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 <b_jonas> fizzie: dunno, I don't really understand Middle-Earth history. it's all confusing.
22:10:09 <fizzie> His dad did, and then didn't return.
22:10:13 <prooftechnique> `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 <int-e> the tides of numenera people (I misspelled it, I wonder why... mixed it with Nymeria (game of thrones), perhaps)
22:10:16 <HackEgo> 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 <b_jonas> fizzie: that was his dad? um... and what happened to the dad then?
22:10:50 <fizzie> "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 <b_jonas> 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 <fizzie> 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 <b_jonas> fizzie: I see
22:11:25 <fizzie> ... treason of Númenor there was no easy absolving."
22:11:51 <b_jonas> fizzie: ah, so he probably met a boojum
22:11:53 <b_jonas> um
22:11:56 <b_jonas> let's see
22:12:06 <int-e> it's a successor to planescape: torment: https://torment.inxile-entertainment.com/
22:12:34 <int-e> no clue whether it'll be good
22:13:05 <prooftechnique> More Planescape is always good
22:13:32 <fizzie> I bought into the Tides of Numenera start-kicker; the only one I've backed so far.
22:13:50 <fizzie> Not enough to be in the beta they have now, though.
22:13:56 <b_jonas> `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 <HackEgo> No output.
22:14:54 <b_jonas> `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 <HackEgo> No output.
22:15:35 <b_jonas> `? portal
22:15:36 <HackEgo> portal? ¯\(°​_o)/¯
22:15:54 <myname> dafuq
22:16:07 <b_jonas> ``` (cd ~/wisdom && find -iname "*cube*" | sort)
22:16:08 <HackEgo> bash: line 0: cd: /tmp/wisdom: No such file or directory
22:16:26 <b_jonas> ``` echo ~ ~+
22:16:27 <HackEgo> ​/tmp /hackenv
22:16:31 <int-e> drop the ~/
22:16:36 <b_jonas> ``` (cd /hackenv/wisdom && find -iname "*cube*" | sort)
22:16:38 <HackEgo> ​./cube
22:17:07 <b_jonas> ``` find wisdom -ianem "*cube*" -printf "%n\n" | sort
22:17:08 <HackEgo> find: unknown predicate `-ianem'
22:17:13 <b_jonas> ``` find wisdom -iname "*cube*" -printf "%n\n" | sort
22:17:14 <HackEgo> 1
22:17:14 <int-e> `? cube
22:17:15 <HackEgo> Cubes come in all sizes, colors and materials, but only one shape.
22:17:17 <b_jonas> ``` find wisdom -iname "*il*" -printf "%n\n" | sort
22:17:18 <HackEgo> 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1
22:17:23 <b_jonas> ``` find wisdom -iname "*il*" -printf "%f\n" | sort
22:17:24 <HackEgo> 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 <b_jonas> ``` find wisdom -iname "*il*" -printf "%f\n" | sort | tail -n+10
22:17:37 <HackEgo> hppavilion1 \ hppavilion[1] \ llanfairpwllgwyngyllgogerychwyrndrobwllllantysiliogogogoch \ perpetuum mobile \ quadrilateral \ ratatouille \ smileyiese \ supercalifragilisticexponential growth \ things boily likes \ til \ vanila
22:17:52 <int-e> `learn-append cube The companion cube does not speak, however.
22:17:53 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: learn-append: not found
22:17:58 <myname> wtf for further details
22:17:59 <int-e> `learn_append cube The companion cube does not speak, however.
22:18:01 <b_jonas> `? recursion
22:18:02 <HackEgo> Learned 'cube': Cubes come in all sizes, colors and materials, but only one shape. The companion cube does not speak, however.
22:18:04 <HackEgo> You might expect a reference to recursion here, but to make it interesting you'll actuallSTACK OVERFLOW
22:18:18 <b_jonas> `? gold
22:18:19 <HackEgo> gold? ¯\(°​_o)/¯
22:18:27 <int-e> `? silence
22:18:28 <HackEgo> silence? ¯\(°​_o)/¯
22:19:55 <b_jonas> ``` find wisdom -iname "*dor*|*gil*" -printf "%f\n" | sort | tail -n+10
22:19:56 <HackEgo> No output.
22:20:06 <b_jonas> ``` find wisdom -iname "*dor*" -o -iname "*gil*" -printf "%f\n" | sort | tail -n+10
22:20:07 <HackEgo> No output.
22:20:27 <b_jonas> ``` find wisdom -iname "*mes*|*per*" -printf "%f\n" | sort | tail -n+10
22:20:28 <HackEgo> No output.
22:20:44 <b_jonas> ``` find wisdom \( -iname "*mes*" -o -iname "*per*" \) -printf "%f\n" | sort | tail -n+10
22:20:45 <HackEgo> 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 <int-e> `? supermarionation
22:22:59 <HackEgo> supermarionation is another name for the mushroom kingdom.
22:23:53 <myname> that long thing is exactly as wide as my terminal
22:24:12 <b_jonas> `? death
22:24:13 <HackEgo> death? ¯\(°​_o)/¯
22:24:14 <b_jonas> `? dead
22:24:15 <HackEgo> dead? ¯\(°​_o)/¯
22:24:16 <b_jonas> `? die
22:24:17 <HackEgo> die? ¯\(°​_o)/¯
22:24:33 <int-e> `` grep death wisdom/*
22:24:45 <b_jonas> `? much
22:24:45 <HackEgo> 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 <HackEgo> much? ¯\(°​_o)/¯
22:24:51 <int-e> `quote death
22:24:52 <HackEgo> 91) <alise> like, just like I'd mark "Bob knob hobs deathly poop violation EXCREMENT unto;" as English <ais523> alise: that's great filler <alise> ais523: well it contains all the important words in the english language... \ 630) <itidus21> 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 <b_jonas> `? cheesemakers
22:24:57 <HackEgo> cheesemakers? ¯\(°​_o)/¯
22:25:37 <int-e> @roll 42d23
22:25:38 <lambdabot> int-e: 551
22:29:42 <b_jonas> `? guards
22:29:44 <HackEgo> guards? ¯\(°​_o)/¯
22:30:19 <b_jonas> `learn The guards are immune to electricity. They're humans to rubber pig suits. They're insulated.
22:30:22 <HackEgo> Learned 'guard': The guards are immune to electricity. They're humans to rubber pig suits. They're insulated.
22:30:31 <b_jonas> `? throw
22:30:32 <HackEgo> throw? ¯\(°​_o)/¯
22:30:32 <b_jonas> `? ball
22:30:33 <HackEgo> ball? ¯\(°​_o)/¯
22:30:36 <int-e> b_jonas: "to"?
22:30:43 <prooftechnique> `? ball in a cup
22:30:44 <HackEgo> ball in a cup? ¯\(°​_o)/¯
22:30:52 <b_jonas> `learn The guards are immune to electricity. They're humans in rubber pig suits. They're insulated.
22:30:54 <HackEgo> Learned 'guard': The guards are immune to electricity. They're humans in rubber pig suits. They're insulated.
22:31:17 <b_jonas> `? sun
22:31:19 <b_jonas> `? daystar
22:31:21 <HackEgo> The Sun *may* be retroreflectorey, it's hard to be sure.
22:31:22 <HackEgo> 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 <b_jonas> `? water
22:31:45 <HackEgo> Water is a squishy substance that creeps along the floor and can suddenly fall from the heavens.
22:31:53 <b_jonas> `? chocolate
22:31:54 <HackEgo> chocolate? ¯\(°​_o)/¯
22:31:55 <b_jonas> `? salt
22:31:56 <HackEgo> salt? ¯\(°​_o)/¯
22:31:58 <b_jonas> `? pizza
22:31:59 <HackEgo> Pizza is a kind of rhubarb pie made without rhubarb.
22:32:10 <b_jonas> `? chicken
22:32:11 <HackEgo> chicken is boily af
22:32:52 -!- Lymia has quit (Ping timeout: 264 seconds).
22:33:19 <b_jonas> `? protein
22:33:20 <HackEgo> protein? ¯\(°​_o)/¯
22:33:25 <b_jonas> `? fat
22:33:26 <HackEgo> fat? ¯\(°​_o)/¯
22:33:35 <prooftechnique> `? cat
22:33:36 <HackEgo> Cats are cool, but should be illegal.
22:34:03 <b_jonas> `learn Fats are one of the four basic classes of nutrients. The other three are sugars, salt, and pizza.
22:34:06 <HackEgo> Learned 'fat': Fats are one of the four basic classes of nutrients. The other three are sugars, salt, and pizza.
22:35:38 <b_jonas> `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 <HackEgo> 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 <b_jonas> `culprits wisdom/vampires
22:36:05 <HackEgo> No output.
22:36:08 <b_jonas> `culprits wisdom/vampire
22:36:12 -!- ais523 has joined.
22:36:12 <HackEgo> b_jonas
22:36:42 <int-e> `? culprit
22:36:42 <ais523> huh, why is HackEgo saying "b_jonas"?
22:36:43 <HackEgo> ​`culprits` is a program that lists the lists the nicks responsible for a wisdom entry. Usage: `culprits wisdom/ENTRY
22:37:23 <b_jonas> ais523: as a reply to a query I sent a few seconds before that
22:37:32 <ais523> !bfjoust margins3 http://nethack4.org/esolangs/margins3.bfjoust
22:37:33 <b_jonas> `culprits wisdom/vampire
22:37:35 <HackEgo> b_jonas
22:37:38 <b_jonas> ^ that was the query
22:37:41 <EgoBot> ​Score for ais523_margins3: 24.2
22:37:46 <ais523> !zjoust margins3 http://nethack4.org/esolangs/margins3.bfjoust
22:37:48 <zemhill> ais523.margins3: points 11.07, score 54.72, rank 1/47
22:37:55 <ais523> wait, it topped the hill?
22:37:57 <ais523> seriously?
22:37:59 <ais523> I wasn't expecting that
22:38:22 <ais523> and neither impomatic nor oerjan is here to gloat at
22:38:47 <ais523> it is 32nd on the egojoust hill, and first on zemhill
22:38:55 <ais523> I suspect, because they use different scoring methods
22:39:05 <ais523> (after all, it /is/ a margins derivative)
22:40:08 <ais523> look at all these beautiful gray Xes: http://zem.fi/bfjoust/breakdown/#ais523.margins3
22:40:10 -!- Lymia has joined.
22:40:31 <ais523> Lymia: I just topped zemhill using a margins derivative
22:41:42 <ais523> 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 <ais523> 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 <fizzie> 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 <ais523> well, I was optimizing it against a slightly old version of zemhill
22:46:27 <ais523> so it's possible that some of egobot's programs are better against it
22:46:49 <ais523> 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 <fizzie> I will rerun the plots. If I can figure out the commands needed for that.
22:51:40 <Lymia> ais523, I still don't quite understand why it works so well.
22:51:46 <Lymia> It does nothing remotely fancy, just some hirsutics.
22:52:08 <ais523> Lymia: why what does? margins3?
22:52:11 <ais523> or nyuroki?
22:52:35 <b_jonas> ais523: I wanted to ask some other crazy stuff related to ayacc.
22:52:47 <ais523> 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 <boily> `wisdom
22:56:07 <HackEgo> php/php is the PigeonHole Principle
23:03:33 <Lymia> Nyuroki. It does nothing fancy, but somehow works.
23:03:51 <boily> Hellymia. long time no see.
23:03:52 <b_jonas> 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 <Lymia> ~
23:04:21 <b_jonas> Take a more complicated language like this, with possibly more than one kind of optional terminator symbol.
23:04:59 <b_jonas> 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 <ais523> b_jonas: I don't think that grammar does what you want even if interpreted as general context-free
23:05:45 <b_jonas> ais523: yes, that's probably a very stupid example
23:05:47 <ais523> it allows ATOM PLUS ATOM PLUS ATOM END END END
23:05:54 <ais523> err, no
23:06:00 <ais523> ATOM PLUS ATOM PLUS ATOM END END
23:06:12 <b_jonas> no, it doesn't allow anything starting with ATOM PLUS
23:06:19 <b_jonas> note that PLUS is a _prefix_ operator
23:06:23 <b_jonas> with any number of arguments after
23:06:24 <ais523> oh, hmm
23:06:32 <b_jonas> so eg. + 3 5 10 would mean the sum of 3 and 5 and 10
23:06:42 <b_jonas> but you can use one operator and any number of expressions after, and it will sum them
23:06:49 <b_jonas> obviously this is just a stupid toy example
23:07:10 <b_jonas> if doesn't make much sense without other rules
23:07:30 <ais523> it allows PLUS PLUS
23:07:40 <ais523> and PLUS PLUS ATOM is ambiguous because it's unclear which PLUS the ATOM belongs to
23:08:29 <b_jonas> 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 <b_jonas> so that the END shows where the arguments to the PLUS stop
23:08:42 <ais523> oh, I see
23:09:23 <b_jonas> now this example is stupid of course because you can omit END only at the end
23:09:57 <b_jonas> 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 <myname> js?
23:10:29 <b_jonas> myname: no, I don't think so.
23:10:45 <b_jonas> doesn't matter probably
23:10:55 <myname> i don't know anything more crazy with optional ; than js
23:11:17 <b_jonas> anyway,
23:12:04 <b_jonas> 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 <b_jonas> \oren\: not the kind I was thinking about
23:12:38 <b_jonas> In particular, here I'd probably need a backend that allows copying the parser state.
23:12:40 <ais523> b_jonas: you can always predict where a semicolon needs to go in Lua, I think
23:12:41 <b_jonas> Efficiently.
23:13:00 <b_jonas> 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 <ais523> hmm, ayacc's parser state is the call stack
23:13:14 <b_jonas> ais523: yes, but you could write a backend where that's not so
23:13:33 <ais523> I guess, although you'd probably have to implement "function calls" manually
23:15:30 <b_jonas> 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 <b_jonas> But I probably want to generate or preprocess grammars anyway.
23:16:11 <b_jonas> Useful for multiple reasons.
23:16:39 <ais523> fwiw, something I should do in ayacc but haven't yet
23:16:49 <ais523> is to output two copies of the code implementing the parsing, one with debug information, one without
23:16:57 <ais523> instead of checking to see if debug information is on whenever I do anything
23:17:06 <ais523> that'd probably make things rather faster
23:17:27 <ais523> although, hmm, would that violate POSIX if debug information was turned on/off during the actual parse?
23:20:10 <b_jonas> 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 <ais523> b_jonas: it makes the code a lot less tight
23:21:22 <ais523> because you have to print debug info for almost everything
23:21:57 <b_jonas> Isn't that normally disabled at ayacc time unless you use some command-line option though?
23:22:56 <ais523> normally the code's removed by a preprocessor macro
23:23:01 <ais523> the option changes the default setting of the macro
23:23:27 <ais523> 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 <b_jonas> 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 <ais523> b_jonas: no
23:25:17 <ais523> 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 <b_jonas> ais523: in that case I think it's fine to just leave the statements in
23:25:37 <b_jonas> the if skipping will be efficient enough
23:25:53 <b_jonas> because, you know, since you rarely toggle the condition, the processor predicts the branches perfectly
23:26:05 <b_jonas> and will just skip straight through those statements
23:26:27 <b_jonas> if you want, you can add compiler hints to help that a bit more
23:26:33 <b_jonas> but it probably doesn't matter too much
23:26:35 -!- oerjan has joined.
23:27:36 <oerjan> ais523: you may now proceed with gloating hth
23:27:47 <ais523> :-)
23:27:49 * ais523 gloats
23:28:00 <ais523> oerjan: how quickly did you expect me to top the hill?
23:28:11 <ais523> 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 <oerjan> ERM
23:29:26 <oerjan> well it was either this, or just barely in time for the anniversary
23:30:04 <ais523> I'll update the strategy page later
23:33:23 <b_jonas> `? horn
23:33:25 <HackEgo> horn? ¯\(°​_o)/¯
23:33:42 <zzo38> How can I create a bitmap font for X window?
23:34:12 <oerjan> 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 <b_jonas> 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 <zzo38> O, OK
23:35:31 <zzo38> The man page does not document the file format
23:35:45 <zzo38> It only specifies command-line options.
23:35:51 <b_jonas> 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 <b_jonas> zzo38: (alternately, you can use font files on a remote machine with xfs, a tcp-based font server)
23:37:40 <b_jonas> 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 <b_jonas> And if the font isn't found, you're stuck blindly debugging undebuggable stuff.
23:38:17 <b_jonas> zzo38: wait, I have a document of the bdf format somewhere,
23:38:49 <zzo38> 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 <b_jonas> zzo38: https://partners.adobe.com/public/developer/en/font/5005.BDF_Spec.pdf
23:42:12 <oerjan> <int-e> Ah, I may have broken that. <-- it worked a day or so ago...
23:42:22 <oerjan> @google qjkxbmwvz
23:42:23 <lambdabot> Plugin `search' failed with: connect: does not exist (No route to host)
23:42:47 <b_jonas> 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 <oerjan> @google quantum
23:43:06 <lambdabot> http://www.quantum.com/
23:43:06 <lambdabot> Title: Quantum Data Storage - Data Center and Scale-out Storage Solutions
23:43:37 <b_jonas> so you install the .pcf.gz to the font directory rather than the straight .pcf
23:44:01 <oerjan> oh it may just be for nonexisting results
23:44:05 <oerjan> @google feiubrøogreøo
23:44:06 <lambdabot> No Result Found.
23:44:09 <oerjan> or not.
23:44:49 <boily> @google canada
23:44:50 <lambdabot> https://en.wikipedia.org/wiki/Canada
23:44:58 <boily> huh, Canada exists.
23:45:24 <oerjan> @ask int-e why in the world does @google qjkxbmwvz fail when others work, including searches with no result...
23:45:24 <lambdabot> Consider it noted.
23:46:11 <oerjan> @google yeti
23:46:13 <lambdabot> http://yeticoolers.com/
23:46:13 <lambdabot> Title: YETI Coolers- Premium Ice Chests, Apparel, and Gear
23:46:28 <oerjan> lambdabot: DON
23:46:35 <oerjan> 'T RUIN MY DEMONSTRATION
23:46:45 <oerjan> @google cupachabra
23:46:45 <lambdabot> https://id-id.facebook.com/WeAreBstarzLoveBastianBastianSteel/posts/504931756229719
23:47:03 <oerjan> @google xenu
23:47:04 <lambdabot> https://en.wikipedia.org/wiki/Xenu
23:47:17 <oerjan> boily: Xenu exists tdnh
23:47:37 <shachaf> `? weather
23:47:38 <HackEgo> lambdabot: @@ @@ (@where weather) CYUL ENVA ESSB KOAK
23:47:40 <lambdabot> 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 <lambdabot> T01670139
23:48:17 <b_jonas> @google S4ys9N66zps
23:48:17 <lambdabot> No Result Found.
23:49:59 <boily> fungot: T01670139
23:49:59 <fungot> 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 <boily> GG?
23:50:16 <boily> ^style
23:50:16 <fungot> 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 <boily> ^style ct
23:50:31 <fungot> Selected style: ct (Chrono Trigger game script)
23:50:43 <boily> I was waaaay off...
23:50:50 <boily> ^style jargon
23:50:50 <fungot> Selected style: jargon (UNIX-HATERS mailing list archive)
23:50:57 <boily> fungot: nostril?
23:50:57 <fungot> 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 <boily> oerjan: TDNH.
23:53:13 <\oren\> boily: well both GG and chrono trigger are epic steampunk fantasy
23:57:48 <ais523> \oren\: is UNIX-HATERS also epic steampunk fantasy? (hi fungot btw)
23:57:48 <fungot> 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 <boily> he\\oren\. indeed.
←2016-03-04 2016-03-05 2016-03-06→ ↑2016 ↑all