00:00:02 o.O NT was released before 95 00:00:06 Taneb: if you solve the Chu space crossword puzzle at , you could win $2000 from Vaughan Pratt 00:00:20 Taneb: that's enough for air fare to berkeley, where you can have poutine 00:00:27 Sgello_. NT was released before??? 00:00:37 shachaf, this sounds like a plan which doesn't have any flaws whatsoever 00:01:01 the plan with no flaw is not the true plan. 00:01:20 Taneb invent the true plan 00:01:28 Yeah, NT was released in '93. 00:03:03 There's not *much* reason Windows 95 couldn't have used NTFS (aside from the obvious one of "oh sweet jesus we don't want to change more than we have to, cause Windows software be crazy.") 00:03:09 I wonder if NTFS isn't older than NT, or if it was only known as HPFS at that time 00:03:20 for a true plan, you should ask Jim from darths & droids, unfortunately he's also in california so it won't help here. 00:03:21 NTFS is a fork of HPFS. 00:03:25 NTFS probably required proper OS features 00:03:33 like, virtual memory perhaps? 00:03:34 shachaf, is that asking whether the language defined has countable members? 00:04:04 olsner: Win95 has virtual memory. 00:04:28 Taneb, imho maybe 00:04:36 Also, I doubt it. You could quite reasonably write an aftermarket NTFS for DOS thing. :) 00:05:36 yeah :) I meant more that the code for NTFS required ... stuff, not that the file system itself somehow does 00:06:14 (well, I don't think it's technically a language in the infinite case, but...) 00:06:49 I think the Win95 installer wants scratch space 00:07:47 I don't think the Win98 installer DOS has format.exe 00:09:15 Taneb: whoa whoa whoa 00:09:20 Proposed solution (March 23, 2015) 00:09:28 i never saw that 00:14:04 Ooh the Win98 installer formats the disk automatically, I could try that 00:16:47 I think the little "This is why windows is great" things is tied to fily copy progress 00:16:51 They go by too fast to read 00:17:18 Sgeo_: what are you trying to do here? 00:17:40 Wanted to install Windows 95 to a VM. Gave up for a bit so installing Windows 98 to a VM 00:17:53 Glad I did because the 98 installer will do what I need for 95, I think 00:19:59 -!- toxolotl has joined. 00:20:18 OK 00:20:19 `relcome toxolotl 00:20:27 ​toxolotl: 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.) 00:20:40 I was worried that it was something insane like needing a disk formatted as FAT16 and Windows 95 was the only program old enough to do it 00:21:07 I remember when we only had the Windows 95 upgrade edition. 00:21:19 So we'd need to put in the Windows 3.11 floppy in order to install. 00:21:28 Sgeo_: with a windows 9x VM you could get ms comic chat going (though it does tend to crash on normal IRC traffic) 00:21:41 Or maybe it was both Windows 95 and Windows 98 upgrade editions? 00:21:45 It was a big mess, anyway. 00:22:28 ais523, I was dumb enough to grant a program on the WIndows 95 disk (that I don't know where it came from so might be genuine) admin on my real 8.1 machine in hopes that it would work. It bluescreened me, and hopefully was just a bad compatibility issue and not actual malware from 2007 00:22:36 *so might not be genuine 00:23:14 Although if you were to plant malware in a pirated OS, I think you'd go for the OS itself, not in the CDEXPO program 00:23:27 Sgeo_: if it is actual malware from 2007, then any modern antivirus should be able to find it 00:23:55 also, why would malware from 2007 end up on a windows 95 disk? 00:24:18 I obtained the .iso file in 2007. I don't remember where I obtained it from. 00:26:24 ais523: Literally anything that can do FAT can do FAT 16 though. 00:26:27 Yay Win95 setup wrking 00:26:50 -!- Lyka|Away has changed nick to Lyka. 00:26:56 pikhq: including formatting programs? 00:26:59 Fun fact: FAT32 has a *minimum* volume size of 32MB. 00:27:23 Eh, Win95 wants a "20-digit Product Identification Number" 00:27:58 Sgeo_: that's printed on the CD case, I think 00:28:07 or on the computer 00:28:27 As a consequence of that, pretty much anything has to do FAT16 just to handle the full range of volume sizes. 00:28:50 what about ext2? can you sensibly format a floppy like that? 00:29:12 Yes. 00:29:39 FAT32 is unique in having a minimum volume size (beyond "large enough to fit fundamental data structures") 00:29:57 (also, I have *done* such a floppy) 00:30:35 What's slightly trickier would be a FAT12 formatter. 00:30:48 Though IIRC Windows' formatter and mkdosfs both do that. 00:30:50 I didn't know there was a FAT12 00:31:16 floppy disks 00:31:34 As well as very (very) old hard drives. 00:31:46 max size 20 mb 00:32:12 But yeah, floppies in FAT are FAT12 as a rule. 00:33:41 Somewhat unrelatedly, fuck ExFAT. 00:34:32 what's wrong with exfat? nobody ever tells me 00:34:56 MS asserts unspecified patents on it making it impractical to implement in a sane fashion. 00:35:24 ... Erm. In a sane fashion for many vendors. 00:36:21 huh, Perl now has a warning for trying to create an infinitely long string using syntax like "a" x "Inf" 00:36:27 I wonder what that did before 00:36:40 IMO it should just create an infinitely long string, but I guess I'm in the minority here 00:37:06 why is linux ntfs support so slow? 00:37:36 i mean, write speeds 00:38:16 Linux NTFS write support is relatively new, that might be related but I'm not sure 00:38:50 Are we talking the kernel NTFS or the FUSE one? 00:39:07 whichever ubuntu 15.04 uses 00:39:15 Probably the FUSE one then. 00:39:22 huh, I would have guessed kernel 00:39:24 -!- bb010g has quit (Quit: Connection closed for inactivity). 00:47:03 "Code like /$a[/ used to read the next line of input and treat it as though it came immediately after the opening bracket." 00:47:07 wow that's a weird bug 00:47:11 sort-of like Shellshock 00:47:31 I wonder if it works in interpolated code? I'm guessing no without an eval, in which case it's unexpolitable 00:48:08 oh, unexploitable anyway; it lets bits of the code you can't control affect bits of the code you can, which is the opposite of exploitable, really 00:48:19 most you could potentially do is get hold of what one line of source looks like 00:48:54 I have a chart of OEM keys, but I don't know which version of Windows 95 this is 00:49:31 If the bits of code you can't control attempts to process the bits of code you can, could htat be a problem? 00:50:05 Sgeo_: What are the options of versions? 00:50:22 `perl -e print 33 x ~3 00:50:23 panic: memory wrap at -e line 1. 00:50:43 Windows 95 OEM Version, Windows 95 OEM Version (02) ... (16) 00:50:46 apparently that's actually the intended output 00:50:49 It's definitely an OEM version 00:54:33 I think they all work 00:54:36 `perl -e "${< Can't find string terminator "X" anywhere before EOF at -e line 1. 00:54:45 `perl --version 00:54:46 ​ \ This is perl 5, version 14, subversion 2 (v5.14.2) built for x86_64-linux-gnu-thread-multi \ (with 88 registered patches, see perl -V for more detail) \ \ Copyright 1987-2011, Larry Wall \ \ Perl may be copied only under the terms of either the Artistic License or the \ GNU General Public License, which may be found in the Perl 5 source kit 00:54:51 aha, too early to crash 00:55:24 "System error Cannot read from drive A" 00:55:27 `perl -e s/${<>{}}// 00:55:28 syntax error at -e line 1, near "<>{" \ Execution of -e aborted due to compilation errors. 00:55:39 wait 00:55:42 `perl -e s/${<>{})// 00:55:43 syntax error at -e line 1, near "<>{" \ Missing right curly or square bracket at -e line 1, within pattern \ Execution of -e aborted due to compilation errors. 00:55:53 what a bizarre line of code 00:56:00 although it's managing not to crash 00:58:10 So now two CD drives attached, Win98 in first one, Win95 in second 01:01:03 Windows Protection Error 01:02:31 I think I've written a (deliberately bad) fizzbuzz which runs in O(n^5) time 01:03:13 ! 01:03:58 No, only O(n^4) I think 01:05:02 Taneb: is it plausible-looking code, or does it have no obvious scope for optimization? 01:05:21 ais523, it's plausible code written by a Haskell beginner 01:05:40 Who is new to programming 01:05:52 There is so much obvious room for optimization 01:06:29 hmm, now I'm wondering what the computational order of a Prolog FizzBuzz that doesn't use "is" is 01:06:34 written in the most obvious way 01:06:35 Putting an execution cap of 20% worked 01:06:38 probably O(n^2) 01:06:49 So I guess the CPU's too fast. There is a patch for it, not sure if I should bother 01:08:39 Experimentally, it seems roughly O(n^3.3) 01:11:35 Which seems odd 01:11:48 compiler optimizations? cache effects? 01:12:03 Maybe... 01:12:06 * Sgeo_ puts down Win95 for now 01:12:39 I don't want to run this with -O0, though, it took 4 minutes for n=3000 (no options to GHC), and I'm running it with n=4000 now 01:13:33 Why is a restart required between partitioning and formatting? 01:15:01 since whe? 01:15:04 *when 01:15:09 ais523, I'm just surprised it's a non-integer exponent 01:15:38 Looking at the program I think it's probably quartic 01:15:43 noninteger exponents aren't that uncommon are they? 01:16:05 Phantom_Hoover, I've never really encountered them? 01:16:32 i remember some Big Important Algorithm having one but not what it was 01:16:33 4^.5? 01:16:45 Lyka, since DOS or Windows98's DOS or something 01:16:50 an obvious practical example though is the trace of a matrix with n entries 01:17:17 Phantom_Hoover: matrix multiplication? 01:17:17 though you normally use side length as the n with matrix algorithms... 01:17:54 x^(y/z) = (z_root(x))^y 01:17:56 oerjan, probably that, yeah 01:19:18 "The current O(n^k) algorithm with the lowest known exponent k is a generalization of the Coppersmith–Winograd algorithm that has an asymptotic complexity of O(n^2.3728639), by François Le Gall." 01:19:41 although some people suspect the limit is actually 2 01:19:46 iirc 01:19:47 what does "polynomial time" mean? 01:20:00 Lyka: in time bounded by a polynomial of input size 01:20:35 O(n^k) execution time, more or less 01:21:29 you can always use n^k because any other polynomial has one of those as an upper bound (once n > 1) 01:22:06 (note n is the input size and k is a constant) 01:26:57 -!- Hallucinate_ has joined. 01:27:15 `welcome Hallucinate_ 01:27:16 Hallucinate_: 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.) 01:27:28 ais523, http://lpaste.net/4279646507705040896 is the source if you want to look 01:28:13 let's see 01:28:19 isFizz and isBuzz are O(n) 01:28:29 Taneb: you think a newbie could manage to get NPlusKPatterns working? i guess e might be using hugs. 01:28:48 oerjan, it's in a bunch of older tutorials 01:29:12 Taneb: haha at that mapM_ 01:29:15 that's just really blatant :-) 01:29:42 ais523, it's the kind of mistake I could imagine myself having made 01:30:13 what I'm confused by is if the ++ in the fizzbuzz function "stacks" with the isFizz and isBuzz being inefficient 01:30:25 the long list is on the left, so this is O(n^2) 01:30:40 but I think it leads to a combined O(n^2) for fizzbuzz, not O(n^3) 01:30:41 -!- Hallucinate_ has changed nick to Hallucinate. 01:30:46 I think ++ needs to go through the left, and to know the length of the left it has to do isFizz and isBuzz 01:31:16 oh I see 01:31:24 ais523, yeah, and then the last is O(n), and it does it n times 01:31:29 what's wrong about the mapM_ 01:31:29 you have the same length in both branches of the case 01:31:40 ais523, depends if GHC spots that or not 01:31:59 oerjan, the function being mapped is what's wrong 01:32:16 oerjan: Taneb already has a function to generate a list of fizzbuzzes, but he's creating a list of each possible length and then mapping last over it 01:32:22 And that 01:32:41 mapM_ itself is a perfectly reasonable function, but that use of it is ridiculous 01:32:52 or, well, it's actually one of the comonad laws on List, if you read the lists backwards 01:33:12 hm right 01:33:33 also, i think that use of ++ is O(n^2) overhead 01:33:45 right associative 01:34:38 comonad laws on List? 01:34:54 You mean the comonad in Mon you get from the adjunction? 01:35:11 shachaf: List as a comonad, one of the comonad operations (M x -> x) is head, and the other (M x -> M M x) is a list of all suffixes of the input list 01:35:19 I don't know what you mean, I'm at my phone and missed falls the conversation. 01:35:23 err, this works on nonempty lists only 01:35:28 Oh, noon-empty lists. 01:35:44 Taneb's doing basically that in reverse: prefixes and last 01:36:06 What's the comonad I described called? 01:36:32 I'm not aware of a name for it 01:36:37 or even knew it existed 01:40:21 -!- Hallucinate has quit (Quit: Depression is merely anger without enthusiasm). 01:40:23 since it's in Mon it only works if Monoid x, i take 01:40:37 M = [] 01:40:49 (M x -> x) would be mconcat 01:40:53 :t mconcat 01:40:54 Monoid a => [a] -> a 01:41:17 -!- boily has quit (Quit: EPICHOROID CHICKEN). 01:41:32 oerjan, I think what would was described would be mconcat . reverse 01:41:36 (M x -> M (M x)), what's that 01:41:52 Taneb: i don't think shachaf included reversal 01:42:13 oerjan, ais523 said if you read the lists backwards, which I was trying to include 01:42:17 Anyway... 01:42:28 Taneb: shachaf's comment wasn't directly relevant to your code 01:44:25 OK 01:44:55 -!- nys has quit (Quit: quit). 01:44:58 So, what's the verdict on the complexity of my fizzbuzz? 01:45:32 hm 01:45:54 only the last element gets isFizz etc. evaluated 01:46:03 Booting from CD into HD broke the VM... but blue screened even when I got rid of that 01:46:09 oerjan, are you sure? 01:46:56 oh wait right 01:47:02 NO 01:47:06 hth 01:47:31 oerjan: map (:[])? 01:48:25 shachaf: either that or just (:[])? i cannot wrap my brain around that much. 01:48:47 oerjan, the core for the program hasn't optimized the isFizz and isBuzz checks out 01:49:04 For non-last elements 01:50:27 ais523, depends if GHC spots that or not <-- i think because of bottom, ghc cannot legally do that 01:51:09 oerjan: can't it infer that isFizz and isBuzz are total? 01:51:23 or is it possible to create an infinitely large Integer in Haskell? 01:51:41 ais523, firstly, they take Int, not Integer 01:51:48 or even knew it existed <-- every adjunction between two categories gives a monad in one, and comonad in the other. 01:51:53 Also, if they took Integer, they would be undefined with n = -1 01:52:30 oh, good points 01:52:47 after a while doing esolangs, you kind-of forget negative numbers exist 01:52:49 they're so unnatural 01:53:30 `addquote after a while doing esolangs, you kind-of forget negative numbers exist they're so unnatural 01:53:34 1241) after a while doing esolangs, you kind-of forget negative numbers exist they're so unnatural 01:53:58 wow, I didn't even realise that was a pun until you `addquoted it 01:54:10 Even better 01:54:28 or is it possible to create an infinitely large Integer in Haskell? <-- nope, only bottom. 01:55:19 what would have been embarrassing would be if I'd missed the pun altogether 01:55:21 anyway, time to go home 01:56:32 -!- ais523 has quit. 01:58:31 ok, F U -> I, that's mconcat. I -> U F, that's (:[]) 01:59:27 Right. And you have FU->FUFU = F eta 01:59:46 So it maps (:[]) 01:59:54 This is pretty awkward on a phone. 02:01:06 F I U = F U -> F U F U = F (U F) U 02:01:27 /////////////////////////////////////// 02:01:27 + 02:01:28 so it should be F (:[]) U in a sense 02:01:31 ops 02:02:14 Yes, but (:[]) is polymorphic hth 02:03:50 it's just that my brain doesn't have quite the power to convince itself of the last step 02:05:46 -!- MDude has changed nick to MDream. 02:08:06 -!- Phantom_Hoover has quit (Read error: Connection reset by peer). 02:08:20 -!- variable has joined. 02:09:13 -!- Herbalist has quit (Quit: WeeChat 1.2). 02:09:45 -!- Herbalist has joined. 02:09:50 -!- ZombieAlive has quit (Remote host closed the connection). 02:13:12 -!- variable has quit (Client Quit). 02:15:57 -!- variable has joined. 02:17:11 I'm going to go to sleep now, goodnight! 02:33:23 what's the function that turns a number like 77 (7 * 11) to 60 (6 * 10) ? 02:36:36 i mean from (x*y), where x and y are prime, to ((x-1)*(y-1)) 02:37:03 not sure if it has a name 02:37:36 oh wait 02:37:51 the euler totient function 02:38:23 however, if a prime can occur more than once, you need to be more specific. 02:38:38 or well 02:41:12 your definition isn't very clear on what to do for numbers _not_ of that form. 02:41:20 no idea 02:41:55 all i remembered involved semiprimes 02:41:57 but if you have two different primes x and y, the totient function fits. 02:42:13 and is what you need for RSA and the like 02:43:35 * Lyka is glad his "big brother", the NSA, is "supposed" to stop watching this channel... 02:44:00 this channel is publicly logged hth 02:44:39 (if you don't know what i mean by "Big Brother", see "1984") 02:44:43 oh 02:44:46 shit 02:44:57 i've read that book 02:45:18 long ago 02:45:23 i got cofused after the first sentence 02:45:28 *confused 02:45:36 but i read the wikipedia entry 02:45:48 for what 02:45:57 1984 02:46:35 "It was a bright cold day in april when the clocks struck 13." 02:46:47 i think that was the first line 02:47:16 got confused 02:51:11 -!- Sprocklem has quit (Quit: [). 02:53:29 * Lyka is currently recovering from being drugged by his doctors with cognitive-inhibiting side-effects for four years before it got bad enough that he forgot that his name belonged to him and was not just a nickname. 02:54:28 -!- bb010g has joined. 02:55:58 before i started on that medication, I used to shake like crazy. Sgeo probably reembers. 02:56:24 *remembers 03:02:44 what's the opposite of an extension? 03:02:59 contraction? 03:04:59 -!- Herbalist has quit (Ping timeout: 256 seconds). 03:06:07 what kind of extension 03:07:02 reduction 03:21:40 oerjan: like an extension to a language 03:22:09 what's the term for a version of a language which removes, rather than adds, features 03:22:37 Apple? 03:23:24 heh 03:40:13 restriction? 03:40:36 Subset? 03:40:36 oren: ^ 03:54:38 night all 03:54:49 -!- Lyka has changed nick to Lyka|Away. 04:02:05 -!- hilquias has joined. 04:02:15 -!- hilquias has quit (Changing host). 04:02:16 -!- hilquias has joined. 04:19:05 -!- Wright has quit (Read error: Connection reset by peer). 04:19:34 -!- Wright has joined. 04:19:48 -!- GeekDude has quit (Quit: {{{}}{{{}}{{}}}{{}}} (www.adiirc.com)). 04:35:49 -!- password2 has joined. 05:02:26 -!- Wright has quit (Ping timeout: 256 seconds). 05:13:25 -!- Lyka|Away has changed nick to Lyka|Phone. 05:14:09 hi 05:44:24 -!- password2 has quit (Read error: Connection reset by peer). 05:52:06 -!- Welo has joined. 06:04:13 -!- lleu has quit (Ping timeout: 244 seconds). 06:10:51 -!- Welo has quit (Quit: Leaving). 06:25:01 night all 06:25:10 -!- Lyka|Phone has changed nick to Lyka|Away. 06:34:41 Lyka|Away: what kind of drugs did they put you on and what for? 06:35:26 * Taneb hello 06:57:14 -!- augur has quit (Quit: Leaving...). 07:03:26 The OTHER fizzbuzz I wrote, features a 250 character type signature 07:04:09 Consisting only of functions between type variables and a three-character type synonym 07:04:21 ((Num -> Num -> (s -> n -> n) -> n -> (a -> s) -> (a -> a) -> a -> s -> s -> s -> n) -> Num -> Num -> (s -> n -> n) -> n -> (a -> s) -> (a -> a) -> a -> s -> s -> s -> n) -> Num -> Num -> (s -> n -> n) -> n -> (a -> s) -> (a -> a) -> a -> s -> s -> s -> n 07:06:57 -!- J_A_Work has joined. 07:07:43 (with type Num = forall a. (a -> a) -> a -> a) 07:15:19 Oh.. of course.. 07:17:46 ? 07:24:06 I'm afraid to ask what that type signature does in your fizzbuzz 07:26:15 It's a fixed point combinator 07:39:29 :t fix (?f :: m -> m -> (s -> n -> n) -> n -> (a -> s) -> (a -> a) -> a -> s -> s -> s -> n) 07:39:31 Unbound implicit parameter 07:39:31 (?f::m1 07:39:31 -> m1 07:40:02 :t \f -> fix (f :: m -> m -> (s -> n -> n) -> n -> (a -> s) -> (a -> a) -> a -> s -> s -> s -> n) 07:40:04 Couldn't match expected type ‘m1 07:40:04 -> m1 07:40:04 -> (s1 -> n1 -> n1) 07:40:35 :t \f -> fix (f :: (m -> m -> (s -> n -> n) -> n -> (a -> s) -> (a -> a) -> a -> s -> s -> s -> n) -> (m -> m -> (s -> n -> n) -> n -> (a -> s) -> (a -> a) -> a -> s -> s -> s -> n)) 07:40:38 Couldn't match expected type ‘(m1 07:40:38 -> m1 07:40:38 -> (s1 -> n1 -> n1) 07:40:49 :t fix ?f :: m -> m -> (s -> n -> n) -> n -> (a -> s) -> (a -> a) -> a -> s -> s -> s -> n 07:40:51 Unbound implicit parameter 07:40:51 (?f::(m1 07:40:51 -> m1 07:40:53 :) 07:40:56 *:( 07:41:12 ):) 07:58:32 -!- edwardk has joined. 08:10:47 -!- J_A_Work has quit (Quit: J_A_Work). 08:39:22 -!- Patashu has joined. 09:05:11 -!- J_A_Work has joined. 09:11:04 Taben's always abusing Haskell. 09:11:08 *Taneb 09:11:17 fungot: Do you abuse Haskell? 09:11:17 mroman_: are we also trying.' automated and must be in the form of the continue button. norris is a month.... in error! 09:15:03 -!- J_A_Work has quit (Quit: J_A_Work). 09:16:40 -!- Phantom_Hoover has joined. 09:20:21 -!- J_A_Work has joined. 09:22:22 -!- augur has joined. 10:30:08 -!- boily has joined. 10:30:33 ^echo > () 10:30:33 > () > () 10:30:37 False 10:30:58 > text "fungot" 10:30:58 Jafet: probably get an inventory of the right of the best to keep the california power market. 10:31:01 fungot 10:45:25 fungot? 10:45:25 boily: right where they left what i 10:45:37 fungot: good! 10:45:37 boily: know where the meeting on the construction industry."? 11 am. 10:46:10 fungot: no. but I got some obscure fuzzy meeting Thursday afternoon with our QC VP. 10:46:10 boily: next to equity. pete wilson both the financial deal that was from the new more efficient. 10:46:23 fungot: oh do you know anything about the calculus of constructions? 10:46:23 int-e: for that reason, the work of the sheet that you send to the top the ibm and america two countries separated and an expected time frame. 10:46:29 fungot: pete wilson. I'll remember. her name was pete wilson. 10:46:29 boily: bond issuance- 12b not enough that the business of new/ existing application systems or business trip you wish to have quicker to put you on the same for the other susan scott...i'm with nat gas spread in 2001 that will not let 10:46:50 int-ello. calculus of construction? 10:48:14 The Calculus of Constructions (CoC) is a type theory created by Thierry Coquand. ... I'm also hearing it's the basis of Coq. 10:49:33 but I asked fun‍got because it mentioned the construction industry. 10:50:31 fungot: well? 10:50:32 boily: they partially to increase. moritzburke associate oakland. dte energy trading and the will of the california legislature. 10:50:44 oh fun. x⃐y⃑ 10:51:13 and more fun. a⃖⃗ 10:53:06 it works c⃬⃑lockwise and c⃬⃐ounterclockwise 10:53:23 Constructive chicken. 10:53:29 except I messed up the arrow below the first c 10:53:45 ? 10:53:52 `unicode x⃐y⃑ 10:53:56 U+0078 LATIN SMALL LETTER X \ UTF-8: 78 UTF-16BE: 0078 Decimal: x \ x (X) \ Uppercase: U+0058 \ Category: Ll (Letter, Lowercase) \ Bidi: L (Left-to-Right) \ \ U+20D0 COMBINING LEFT HARPOON ABOVE \ UTF-8: e2 83 90 UTF-16BE: 20d0 Decimal: ⃐ \ ⃐ \ Category: Mn (Mark, Non-Spacing) \ Bidi: NSM (Non-Spacing Mark) \ Combining: 230 (Abov 10:54:14 `chicken harpooned 10:54:15 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: chicken: not found 10:54:18 ... 10:54:24 `CHICKEN HARPOONED 10:54:24 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: CHICKEN: not found 10:54:29 beuh. 10:56:01 Hah. The font that gucharmap uses gets this wrong... "combining rightwards harpoon with barb downwards" points to the left. 10:56:28 maybe this is better anyway. c⃔ c⃕ 10:57:08 Hope they don't ever handle a real harpoon 10:57:26 harpoon should be double-ended, so you can't misorient them. 11:05:25 Are all C struct types with fields of all the same names and matching types matching types, or do they have to have the same struct name if they have a struct name at all? 11:08:47 `cc struct a {int x;}; struct b{int x;}; struct a a = (b){}; 11:08:54 ​/tmp/a.c:1:52: error: ‘b’ undeclared here (not in a function) \ compilation terminated due to -Wfatal-errors. 11:08:56 `cc struct a {int x;}; struct b{int x;}; struct a a = (struct b){}; 11:08:57 ​/tmp/a.c:1:59: error: invalid initializer \ compilation terminated due to -Wfatal-errors. 11:08:59 boily: somehow that made me think of these devices, http://en.wikipedia.org/wiki/File:Drevnosti_RG_v3_ill130c_-_Caltrop.jpg 11:09:04 (nope) 11:09:40 `cc typedef struct {int x;} a; typedef struct {int x;} b; a a = (b){}; // probably not either 11:09:41 ​/tmp/a.c:1:57: error: ‘a’ redeclared as different kind of symbol \ compilation terminated due to -Wfatal-errors. 11:09:51 `cc typedef struct {int x;} a; typedef struct {int x;} b; a x = (b){}; 11:09:52 ​/tmp/a.c:1:43: error: invalid initializer \ compilation terminated due to -Wfatal-errors. 11:10:15 `cc typedef struct {int x;} a; a x = (a){}; 11:10:16 ​/tmp/a.c:1:16: error: initializer element is not constant \ compilation terminated due to -Wfatal-errors. 11:11:06 int-e: ah, the safety harpoon with extra spikes to be sure you skewer your prey properly. 11:15:58 Melvar: I don't think "matching type" is a C term at all, but "two structure -- types declared in separate translation units are compatible if their tags and members satisfy the following requirements: If one is declared with a tag, the other shall be declared with the same tag. If both are completed anywhere within their respective translation units, then the following additional requirements ... 11:16:04 ... apply: [member stuff]." 11:17:05 fizzie: I didn’t know what the C term was. Thank you. 11:27:43 -!- boily has quit (Quit: SELFREFERENTIAL CHICKEN). 11:29:00 -!- Welo has joined. 11:30:12 `poulet misremembered 11:30:13 MISREMEMBERED CHICKEN 11:32:38 Melvar: Note also the requirement of two separate translation units. After a struct { int a; int b; } x; struct { int a; int b; } y; in a single translation unit, the types of a and b are not compatible, AIUI. 11:32:53 Er, the types of x and y, I mean. 11:38:01 `poulet dismembered 11:38:02 DISMEMBERED CHICKEN 11:38:22 `poulet 11:38:53 No output. 11:41:32 `` ls /usr/share/dict 11:41:33 No output. 11:42:47 -!- lleu has joined. 11:42:47 -!- lleu has quit (Changing host). 11:42:47 -!- lleu has joined. 11:43:05 so does hackego have a word list? 11:43:53 `word 11:44:00 ralminisialobiitatifiiiscerk 11:44:02 `` (cd wisdom; ls) | grep ed$ | wc 11:44:03 ​ 0 0 0 11:44:13 `words 11:44:19 positurial 11:45:39 `` find / -name words 2>/dev/null 11:46:10 No output. 11:47:02 oh well. > echo $(grep ed$ /usr/share/dict/words | shuf -n 10) 11:47:02 randomized snaffled encased enlightened respired ransomed sunned appealed endowed unclogged 11:47:07 (love the first one) 11:48:20 `bienvenido 11:48:21 ​¡Bienvenido al centro internacional para el diseño y despliegue de lenguajes de programación esotéricos! Por desgracia, la mayoría de nosotros no hablamos español. Para obtener más información, echa un vistazo a nuestro wiki: http://esolangs.org/. (Para el otro tipo de esoterismo, prueba #esoteric en EFnet o DALnet.) 11:48:29 whew 11:48:50 (realized my sed was potentially shoddy) 11:50:41 -!- Herbalist has joined. 11:50:41 -!- Herbalist has quit (Changing host). 11:50:41 -!- Herbalist has joined. 11:52:06 -!- J_A_Work has quit (Quit: J_A_Work). 11:54:18 i see xkcd's beret guy has a new job. at least this one seems to have long time prospects. 11:57:45 i also foresee weight gain in zeetha's future. 12:06:08 int-e: i think agatha might need some lessons from klaus in how to ignore unauthorized biographies twh 12:10:45 oerjan: I think I have not read today's GG yet. Some people have to work ;) 12:11:00 shocking 12:14:23 -!- Frooxius has quit (Read error: Connection reset by peer). 12:14:26 -!- Froox has joined. 12:17:31 -!- Patashu has quit (Ping timeout: 258 seconds). 12:20:41 I call it an inconvenient truth. 12:26:26 wait what, coca-cola doesn't actually contain cola? 12:35:45 -!- TieSoul has joined. 12:40:18 -!- TieSoul has quit (Ping timeout: 240 seconds). 12:41:30 -!- oerjan has quit (Quit: leaving). 12:43:04 -!- Welo has quit (Quit: Leaving). 12:47:08 -!- TieSoul has joined. 12:57:47 Does it contain coca? 13:23:55 -!- incomprehensibly has changed nick to glowcoil. 13:24:01 It contains "natural flavourings". 13:26:20 -!- Herbalist has quit (Ping timeout: 264 seconds). 13:29:12 I've been under the impression that it still contains something derived from processed coca leaves, though. 13:30:40 Supposedly, they extract out the cocaine and sell it on the black market properly dispose of it. 13:33:24 -!- GeekDude has joined. 13:38:31 -!- `^_^v has joined. 13:42:16 -!- perrier has quit (Remote host closed the connection). 13:43:30 -!- perrier has joined. 14:21:57 -!- Lyka|Away has changed nick to Lyka. 14:23:03 -!- GeekDude has quit (Ping timeout: 265 seconds). 14:23:39 mroman_: inderal (propranolol). it's a beta blocker, and i took it for tremors caused by lithium 14:23:44 -!- GeekDude has joined. 14:26:36 Sourceforge has now hijacked Nmap. http://seclists.org/nmap-dev/2015/q2/194 14:26:58 huh? 14:27:42 you mean the port scanner, right? 14:28:15 yes. 14:28:42 SF has hijacked the repo and is distributing bogus trojan downloads like they did with GIMP. 14:28:58 why? 14:29:51 oh. SF always offers the newest file, not the correct-est file 14:30:01 -!- GeekDude has quit (Ping timeout: 245 seconds). 14:30:26 Lyka: because they are running out of money, and this will make them some. 14:34:34 -!- GeekDude has joined. 14:38:54 Maybe GPLv4 will include a clause against cnetization (mcnetization?). 14:43:35 -!- GeekDude has quit (Ping timeout: 252 seconds). 14:57:29 -!- Herbalist has joined. 15:10:53 [wiki] [[BFQ]] N http://esolangs.org/w/index.php?oldid=43135 * Esowiki201529A * (+276) Created page with "== Quine == ++>+++++++>++>++++++++>+>+++++++>++>+++>++>+++>+++>+++>+>+>+++++++>++++>++>++>++++++>++>+++>+>+>+>++++++++>++>++++++>++++>++>++++>++++>++++>+>+>+>++++++++>++>++>+..." 15:12:50 [wiki] [[BFQ]] http://esolangs.org/w/index.php?diff=43136&oldid=43135 * Esowiki201529A * (+23) 15:13:45 Esowiki201529A strikes again 15:13:51 [wiki] [[BFQ]] http://esolangs.org/w/index.php?diff=43137&oldid=43136 * Esowiki201529A * (+4) /* Quine */ 15:16:08 [wiki] [[BFQ]] http://esolangs.org/w/index.php?diff=43138&oldid=43137 * Esowiki201529A * (+9) 15:19:03 [wiki] [[BFQ]] http://esolangs.org/w/index.php?diff=43139&oldid=43138 * Esowiki201529A * (+73) /* */ 15:25:15 [wiki] [[BFQ]] http://esolangs.org/w/index.php?diff=43140&oldid=43139 * Esowiki201529A * (+35) 15:33:43 -!- variable has changed nick to trout. 15:40:42 -!- atehwa has quit (Ping timeout: 240 seconds). 15:41:40 -!- atehwa has joined. 15:56:43 -!- GeekDude has joined. 15:58:35 -!- Melvar has quit (Ping timeout: 246 seconds). 15:59:49 -!- Sprocklem has joined. 16:06:33 -!- hilquias has quit (Remote host closed the connection). 16:09:19 -!- idris-bot has quit (Quit: Terminated). 16:09:41 -!- Melvar has joined. 16:18:18 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds). 16:18:36 oh dear, oh dear. 16:23:30 -!- a2 has quit (Ping timeout: 240 seconds). 16:33:30 -!- Lyka has changed nick to Lyka|Away. 16:37:15 -!- a2 has joined. 16:49:34 -!- SopaXT has joined. 16:52:16 int-e: what is it, dear? 16:55:12 -!- SopaXT has quit (Remote host closed the connection). 16:56:39 -!- Sprocklem has quit (Quit: Feel free to answer while I'm gone, I'll check the online logs). 16:58:15 -!- Sprocklem has joined. 16:59:46 Well, the world has received another brainfuck clone, apparently with the sole purpose of writing a quine. 17:02:27 Holy shit. https://twitter.com/synackpse/status/606088427222769664 17:13:16 -!- MoALTz_ has quit (Ping timeout: 272 seconds). 17:20:06 -!- rdococ has joined. 17:27:26 -!- Sprocklem has quit (Quit: Class and such). 17:38:46 @metar BOM 17:39:02 err, 17:39:18 @metar VABB 17:39:18 VABB 031710Z 29007KT 3500 HZ SCT020 31/25 Q1007 NOSIG 17:51:47 @metar LOWI 17:51:48 LOWI 031720Z 05009KT 020V100 9999 FEW080 BKN100 26/14 Q1021 NOSIG 17:51:56 -!- MoALTz has joined. 18:01:36 -!- Phantom_Hoover has joined. 18:20:46 I think I figured out how to make this bluetooth headset work with my laptop: 18:20:56 killall pulseaudio, sudo /etc/init.d/bluetooth restart; pactl load-module module-bluetooth-discover; disable and enable bluetooth from menu, then try to connect to headset. From the computer. 18:21:13 This appears to work. And it is stupid. And no "normal" user would ever figure it out... 18:25:09 -!- Welo has joined. 18:36:58 Vorpallo 18:48:36 ais523: pong 18:48:39 um 18:48:42 ais523: ping 18:48:44 not pong 18:49:08 Huh! People in American Samoa are generally not citizens of any statew. 18:49:18 `wisdom 18:49:19 phantom__________hoover/OK you got me there. 18:49:30 `wisdom 18:49:34 urbandictionary/Urban Dictionary is an alternative, inferior wisdom database. 18:49:42 i.e. they are not US citizens, or citizens of anywhere else. 18:50:12 That is really weird. 18:53:23 (specifically, American Samoa doesn't count as US soil for purposes of birthright citizenship, and people there are unlikely to otherwise have a citizenship) 18:54:09 So. Fucking. Weird. 18:55:51 * pikhq continues twiddling thumbs hoping to hear back from Google. 19:00:59 -!- nys has joined. 19:02:40 -!- Welo has quit (Ping timeout: 246 seconds). 19:08:53 -!- nycs has joined. 19:09:23 -!- bb010g has quit (Quit: Connection closed for inactivity). 19:10:22 -!- `^_^v has quit (Ping timeout: 246 seconds). 19:10:31 -!- nycs has changed nick to `^_^v. 19:20:02 pikhq, what do you expect google to do? 19:23:16 -!- GeekDude has quit (Ping timeout: 265 seconds). 19:24:02 Vorpal: Hire me. 19:24:47 whoa whoa whoa, you think Vorpal is going to hire you just like that? 19:25:00 pikhq: are you watching John Oliver's show or is there another recent source for this information? 19:25:14 int-e: Random Wikipedia. 19:25:33 interesting 19:25:34 What sort of Google things do you want to do? 19:26:35 "Keep Google running". 19:26:52 (that's the cliff notes version of the site reliability engineer role I applied for) 19:27:12 Oh, I used to do that. 19:27:23 fsvo "Google" and "running" 19:27:26 :P 19:27:55 Their hiring process is less efficient than I'd like though. 19:27:58 You're running Google off a cliff? 19:28:10 No. 19:28:10 imo move to Mountain View 19:28:19 That's what I applied for. 19:29:53 I guess you don't apply for a specific team or anything like that? 19:30:04 Yep. 19:30:35 -!- Welo has joined. 19:31:15 -!- rdococ has quit (Read error: Connection reset by peer). 19:31:25 Apparently some people do know in advance. But I didn't know what I'd be doing until the end of my first day. 19:36:18 At the least, interviews went well and were pretty fun. 19:37:54 Did you do interviews in Mountain View? 19:38:22 Yep. 19:38:48 Didn't have that much time in the area though: practically flew in, interviewed, and flew out. 19:42:27 -!- idris-bot has joined. 19:50:57 -!- Welo has quit (Quit: Leaving). 19:58:54 -!- `^_^v has quit (Quit: This computer has gone to sleep). 20:00:25 -!- `^_^v has joined. 20:18:56 -!- villasukka has quit (Remote host closed the connection). 20:18:56 -!- atehwa has quit (Remote host closed the connection). 20:25:25 -!- Wright has joined. 20:27:24 -!- bb010g has joined. 20:37:00 -!- MoALTz has quit (Quit: Leaving). 20:52:39 -!- MoALTz has joined. 20:55:47 -!- villasukka has joined. 21:03:18 -!- Patashu has joined. 21:03:20 -!- shikhin has quit (Ping timeout: 256 seconds). 21:03:44 -!- skarn has quit (Ping timeout: 265 seconds). 21:10:45 -!- shikhin has joined. 21:17:54 -!- `^_^v has quit (Quit: This computer has gone to sleep). 21:19:39 -!- skarn has joined. 21:32:57 -!- Patashu has quit (Ping timeout: 258 seconds). 21:42:40 -!- MDream has quit (Ping timeout: 252 seconds). 21:45:59 http://en.wikipedia.org/wiki/Nigel_(bishop_of_Ely) 21:46:00 nigel 21:52:45 -!- oerjan has joined. 22:01:41 -!- tromp__ has joined. 22:01:42 -!- tromp_ has quit (Ping timeout: 256 seconds). 22:05:18 -!- hilquias has joined. 22:06:33 -!- spiette has quit (Quit: :qa!). 22:07:09 -!- tromp_ has joined. 22:07:31 -!- tromp__ has quit (Ping timeout: 265 seconds). 22:17:29 -!- nisstyre has quit (Changing host). 22:17:29 -!- nisstyre has joined. 22:27:24 -!- boily has joined. 22:33:48 What sort of Google things do you want to do? <-- * briefly wonders if this channel has more bots or google employees 22:34:12 i think it only has one Google employee hth 22:34:23 The Google recruiter has said that all the interviewers thought I was quite good, and believes I have the job. *Unfortunately*, there's a few steps between that and actually getting a confirmation. 22:34:27 and might soon have two? 22:34:29 Hurrah. 22:34:40 it's had as many as three in the past 22:34:44 or maybe more 22:34:46 I believe, but am not sure, that we have more than three bots 22:34:48 shachaf: well we cannot really say about all the lurkers, can we? 22:35:05 Taneb: plausible 22:35:12 hurrahq 22:35:23 Also I never finished writing my bot in Agda 22:35:28 Or really got started, I guess 22:35:39 -!- evalj has joined. 22:35:44 pikhq: you should be on gmail hth 22:36:19 fungot, do we have more than three bots? 22:36:19 b_jonas: over the next few years on the strength of the enron's unique. charles rangel and ways of doing. 22:36:29 ^style 22:36:30 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 22:36:43 I didn't know there was an Enron style. 22:38:53 An SRE told me that SRE's are the people who fix the things SWE's broke. But he might have been a biased source. 22:39:02 shachaf: Why Gmail? 22:39:09 fizzie: That sounds about right. 22:39:17 fizziello. what's a SRE twh? 22:39:59 pikhq: I was on Gmail SRE. 22:39:59 helloily 22:40:03 boily: The person who fixes... oh, you mean the abbreviation? Site Reliability Engineer. 22:40:20 And SWE is Soft Ware Engineer 22:40:39 "Site reliability engineer". More-or-less a dev ops sort of role, where you're a developer that is most heavily focused on keeping things working. 22:40:51 hm yafgc hasn't updated 22:40:58 so much for the new regular schedule 22:41:15 pikhq: the support guy who has the misfortune of knowing how to code? 22:41:23 hmm, is it more fun to break things or fix things? 22:41:45 boily: I don't think that's an accurate description. 22:41:48 shachaf: I managed to pass this Acronym Check by rolling over 15 with my wisdom modifier. 22:41:58 You're *not* a customer facing support guy or anything. 22:42:09 Think more "the guy with the pager when a server breaks" 22:42:13 oh. 22:42:22 uuuuuuuurgh. bleh! not a job for me at all. 22:42:33 Well, that, and "the folks who make sure it doesn't break in the first place". 22:42:34 I like my hours in accordance with the sun, and on weekdays. 22:42:38 pager, yeah, that's instant disqualification 22:43:27 also if SREs were paged every time a server broke... 22:43:27 My understanding is that you're on call on rotation rather than all the time. 22:43:34 Because that's nightmarish. 22:43:35 it's more like "the datacenter broke" 22:43:38 Not to mention, yes, that. 22:44:03 "The processing pipeline broke, and we're losing $20 million per hour." 22:44:08 or "the datacenter spontaneously disappeared". 22:44:15 Yes, on-call rotations, and people in multiple time zones, depending on the team. 22:44:25 fizzie: eh? 20e6 $/h??? 22:44:28 You're more likely to get paged when something is actually causing issues, not just when a server crashes because c'mon, this is Google. Hardware malfunctions are a parameter you design for. 22:44:50 Probably usually not quite that much. 22:45:24 boily: https://investor.google.com/earnings/2014/Q4_google_earnings.html says that Google's revenue for 2014 was $66e9 22:45:27 I hope. like, every day with an outage, we're losing a whole country's GDP. la dee da. 22:45:34 shachaf: AAAAAAAAAAAH! 22:45:38 But Google's revenue, according to Google, is $66 billion/year, so if you break all of it, it's like $7-8 million/hour. 22:45:40 That's $7e6 per hour. 22:45:56 Probably depends on the hour. 22:45:56 still impressive. 22:46:01 Probably. 22:46:01 Granted, you might have to try pretty hard to break all of it. 22:46:28 we should try and temporarily break the Whole of Google, just to see what happens. 22:46:53 Today a colleague told me that I will be a "noogler" ('new employee') until I break something in production. 22:47:27 We were discussing the definition; there seem to be multiple opinions on when exactly you're no longer new. 22:47:42 when you're older than the other guys? 22:47:48 Anyway with a big system like Google "down" isn't really a binary value. 22:48:06 Some part of it is always down. You just try to keep that number low. 22:48:10 I sort of think of everyone hired after me as "new" employees 22:48:15 olsner: That's pretty vague, too. Though there's a page that shows your percentile. 22:48:17 Within tolerances. 22:48:18 even if it was 6 years ago 22:48:26 As in, "X % of employees were hired after you". 22:48:32 fizzie: what's your percentile twh 22:48:47 I forgot. Less than 10% are newer than me, anyway. 22:49:22 -!- bb010g has quit (Quit: Connection closed for inactivity). 22:50:16 fungot: are you a newbot? 22:50:16 boily: as the first. thanks. fred 22:50:27 fungot: I'm not fred. 22:50:27 boily: confidential attached the " i 22:50:38 fungot: oh. your secret identity? I knew it! 22:50:39 boily: keep the faith and in a manner the person that you outbid the person i know in it that i wanted you to know that the document that i went the spirit of the earnings of each investment choice against its risk of losses the power and to gaming the market, and to get any more " out of the plants that not only survive, but that the different, 22:51:03 fungot: do you google? 22:51:03 olsner: 1. i watch people, sip. power authority of the work that we 23:05:35 -!- adu has joined. 23:16:25 -!- trout has changed nick to constant. 23:21:47 `` poulet amnesiac # hoily 23:21:48 AMNESIAC CHICKEN 23:24:58 -!- toxolotl has quit (Ping timeout: 276 seconds). 23:27:57 `` poulet existing # hellørjan 23:27:58 EXISTING CHICKEN 23:28:12 I'm not amnesiac. only temporally unreminisced. 23:28:41 -!- MoALTz has quit (Quit: Leaving). 23:35:12 -!- bb010g has joined. 23:36:41 `quote chicken 23:36:42 304) my most fresh dream is one where I'm at a soup contest and a chicken really wants to participate but he's disqualified so he becomes the judge. when all the soups are done and he's ready to taste them he just stares at the soup and then I become the chicken and I really want to make soup \ 605) There's British KFC? Kent 23:37:07 I think the monqy one could be boily 23:37:30 -!- GeekDude has joined. 23:38:27 -!- toxolotl1 has joined. 23:39:40 -!- Herbalist has quit (Quit: WeeChat 1.2). 23:43:45 boily: are you monqy 23:44:24 no :D 23:44:44 -!- evalj has quit (Remote host closed the connection). 23:44:47 nys: does that mean you are monqy 23:45:21 the broth thickens 23:45:29 no but monqy is not currently here 23:45:34 ~ 23:45:51 `wisdom 23:45:53 perl/Perl is the Perfect Emacs Rewriting Language 23:45:55 nys: i haven't seen em for a *long* time 23:45:58 @seen monqy 23:45:59 I haven't seen monqy. 23:46:31 nys: what information do you have that makes you sure boily is not monqy twh 23:46:40 secret 23:46:47 *GASP* 23:47:22 I was given a programming test. Which was not fizzbuzz. 23:48:00 `wisdom 23:48:01 banach-tarski/"Banach-Tarski" is an anagram of "Banach-Tarski Banach-Tarski". 23:48:14 :3 23:48:24 `wisdom 23:48:25 lambdabot/lambdabot is a fully functional bot. just don't ask about @src. 23:48:27 oh shachaf what are symmetric lenses 23:48:48 oh boy who are you 23:49:07 i'm nys :< 23:49:14 not monqy hth 23:49:20 haha i'm serious i'm not! 23:49:47 -!- staffehn_ has joined. 23:49:56 i just saw a branch of lens called "symmetric" and i was wondering what it was all about 23:50:38 -!- staffehn has quit (Ping timeout: 252 seconds). 23:51:18 oh 23:51:26 well there are a few different meanings of the term 23:51:43 that branch refers to the "(g a -> f b) -> g s -> f t" kind 23:52:37 * nys squints 23:52:47 is it the edit lenses thing? 23:54:25 is g a Functor or ContraVariant 23:54:29 oerjan: sorry, was idle for a moment there (cooking supper and washing dishes). apparently I'm monqy and/or mnoqy? 23:54:46 (if the latter, this would seem a subset of profunctor lenses?) 23:55:05 g is Functor 23:55:09 hm 23:55:14 But you get contravariance because it's on the left side of the -> 23:55:24 @seen mnoqy 23:55:24 I haven't seen mnoqy. 23:55:31 boily: that's the theory. 23:55:41 oh. 23:55:55 shachaf: oh hm 23:56:02 uhm. well. chickens exists. Canada exists. I'm not mnoqy. qed. 23:56:27 boily: a fine argument, although you should include some pho or poutine hth 23:56:44 i think today i just managed to get a hold of why an initial F-algebra is a thing 23:56:55 do i have the mental capacity to grasp these symmetric lenses 23:57:14 initial F-algebras are great 23:57:19 lambek's lemma is p. nifty 23:57:38 except for the usual category thing where it's obvious 23:57:42 @quote TomLeinster 23:57:42 TomLeinster says: In subjects such as number theory and combinatorics, some questions are simple to state but extremely hard to answer. Basic category theory is not like that. To understand the question is very nearly to know the answer. 23:58:43 c: 23:59:35 oerjan: one day, there'll be a Vietnamese poutine. it's going to be glorious. 23:59:57 what's lambek's lemma. 23:59:58 >.>